Video Coding Data Structure with Extended Units

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In video coding, the inefficiencies in processing overhead due to unavailability checks for neighboring video data restrict the encoding speed, especially in high-resolution and real-time applications like 4K UHD, where frequent checks for spatial prediction restrictions hinder processing efficiency.

Innovation Solution

Implementing a data structure with extended units that store default values along the periphery of the video data block, reducing the need for unavailability checks by using these defaults as references during encoding, thereby simplifying the encoding process and minimizing processing overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If unavailability checks for neighboring video data are performed during encoding, then spatial prediction accuracy is improved, but processing overhead increases and encoding speed decreases

Engineering Contradiction:
Improvespatial prediction accuracyVSAvoidencoding speed
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent applies preliminary action by pre-defining and storing default values for boundary and neighboring blocks in a data structure before encoding begins. These default values are prepared in advance to represent unavailable neighboring data, eliminating the need for runtime availability checks during the encoding process. This pre-preparation resolves the contradiction by maintaining prediction accuracy through predefined defaults while removing the processing overhead of dynamic checks.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If frequent unavailability checks are performed for spatial prediction restrictions, then prediction reliability is improved, but processing complexity increases

Engineering Contradiction:
Improveprediction reliabilityVSAvoidprocessing complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the complexity of availability checking from the main encoding loop by separating the handling of unavailable blocks into a distinct data structure. Boundary blocks and their default values are extracted and stored separately, allowing the encoder to directly reference pre-computed default values rather than performing complex availability checks during encoding. This extraction maintains prediction reliability while significantly reducing processing complexity.

Inventive Principle:
Principle #2Taking out (Extraction)

3Productivity

If default values are preemptively set for boundary blocks, then encoding efficiency is improved, but memory requirements increase

Engineering Contradiction:
Improveencoding efficiencyVSAvoidmemory requirements
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent applies local quality by applying default values selectively only to boundary blocks and their immediate neighbors that are actually needed for spatial prediction, rather than pre-filling entire frames or large regions. The data structure stores default values locally at the block level where they are required, optimizing memory usage by allocating storage only for the specific boundary blocks that will be referenced during encoding, thus improving encoding efficiency without excessive memory consumption.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS10382791B2Data structure for video coding unit
Publication Date: 2019.08.13 QUALCOMM INC
  • US10382791B2 patent drawing
  • US10382791B2 patent drawing
  • US10382791B2 patent drawing

AI summary

The disclosure provides a system and methods for encoding video data. The method can include storing a data structure in a memory, the data structure having a first plurality of data elements arranged corresponding to a second plurality of data elements of a first video data block, and defining a periphery, the data structure further including data related to all of a smallest prediction unit (PU) for the first video data block. The method can also include increasing a size of the data structure in the memory by adding a plurality of extended units along the periphery of the first plurality of data elements, each extended unit having data related to a smallest data element of the first video data block, the extended units being set to default values. The method can also comprise encoding the first video data block based on the data structure.