Video Encoding Parallelization via QP Dependency Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing video encoding formats, such as MPEG, face challenges in parallelizing the encoding process due to sequential dependencies in quantization parameter (QP) values, which hinder efficient data processing and memory usage.

Innovation Solution

The method involves determining the QP value for a block in a second group before finishing the encoding of the preceding first group, allowing parallel encoding by breaking dependencies and ensuring that encoded blocks in the first group indicate values that enable correct decoding of the second group's QP values.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of substance

If QP values are encoded dependently relative to preceding blocks in raster scan order, then data size is reduced, but parallelization of the encoding process becomes difficult

Engineering Contradiction:
Improvedata sizeVSAvoidparallelization capability
Core Design Contradiction:
Loss of substanceVSProductivity

Solution Approach 1:

The patent divides the video data into multiple independent groups of blocks (e.g., groups of picture blocks or macroblocks). Within each group, QP values are encoded dependently relative to preceding blocks, but between groups, the dependency is broken by allowing each group to start with an absolute QP value or a QP value that does not depend on the previous group's blocks. This segmentation enables different groups to be encoded in parallel while maintaining data size reduction benefits within each group.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent determines and stores absolute QP values for the first block of each group in advance, before the actual encoding of that group begins. This preliminary determination of reference QP values for each group allows multiple groups to be prepared and encoded simultaneously without waiting for sequential QP value calculations, thus enabling parallelization while maintaining dependent encoding within groups.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If QP values are encoded as absolute values, then parallelization is easier, but data size increases

Engineering Contradiction:
Improveparallelization capabilityVSAvoiddata size
Core Design Contradiction:
ProductivityVSLoss of substance

Solution Approach 1:

The patent applies different QP encoding strategies to different locations within the video data structure. Specifically, the first block of each group uses absolute QP encoding (or QP independent of previous groups), while subsequent blocks within the same group use dependent relative QP encoding. This local differentiation optimizes both parallelization capability (at group boundaries) and data size compression (within groups).

Inventive Principle:
Principle #3Local quality

3Reliability

If encoding is performed sequentially in raster scan order, then QP dependency is maintained, but processing time increases

Engineering Contradiction:
ImproveQP encoding accuracyVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

By segmenting the video data into multiple groups where QP dependency is maintained within groups but broken between groups, the patent enables parallel processing of multiple groups simultaneously. This segmentation maintains the reliability of QP encoding accuracy within each group while dramatically reducing total processing time through parallel execution of multiple groups.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary determination of QP values for the first block of each group, storing these reference values in advance. This allows the actual encoding of multiple groups to proceed in parallel without sequential dependency, reducing processing time while maintaining QP encoding accuracy through the pre-determined reference values.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10791332B2Video data processing system
Publication Date: 2020.09.29 ARM LTD
  • US10791332B2 patent drawing
  • US10791332B2 patent drawing
  • US10791332B2 patent drawing

AI summary

The technology described herein facilitates parallel encoding of two groups of blocks of data of a sequence of blocks of data, whilst also facilitating the use of dependent encoding across the sequence of data blocks. This is achieved by allocating pairs of first and second groups of data blocks to separate encoding units, and determining an encoding parameter value to be used for encoding the first block of each second group of data blocks. For correct reconstruction of the image, it is ensured that a block belonging to the first group of data blocks of a pair of groups of data blocks is encoded with an encoding parameter value that will cause a decoder to use the determined encoding parameter value when decoding the first block of the second group.