Video Encoder Wave Front Group Generation for Parallel Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing digital video systems face challenges in efficiently processing and transmitting massive amounts of video data due to the large storage requirements and bandwidth consumption, necessitating effective video compression techniques.

Innovation Solution

The proposed solution involves encoding video frames using standards like ITU-T/ISO H.264, HEVC, and VP9, dividing frames into macroblocks, and processing them in parallel wave front groups to reduce processing cycles and increase efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If video frames are processed using traditional sequential encoding methods, then processing accuracy is maintained, but processing time and computational complexity increase significantly

Engineering Contradiction:
Improvevideo processing speedVSAvoidprocessing complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The video frame is divided into multiple independent regions, and each region is further segmented into macroblocks that can be processed independently. This segmentation allows parallel processing of different regions simultaneously, dramatically increasing processing throughput while maintaining encoding accuracy through consistent application of the same encoding standards (H.264, HEVC, or VP9) to each segment.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces wave front groups as an additional organizational dimension beyond simple spatial segmentation. Macroblocks are assigned to different wave front groups based on their processing dependencies and spatial location, creating a multi-dimensional processing structure that enables efficient parallel execution while managing computational complexity through structured organization of processing tasks.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Quantity of substance

If video data is compressed using advanced encoding standards, then storage requirements and bandwidth consumption are reduced, but processing complexity increases

Engineering Contradiction:
Improvevideo data volumeVSAvoidencoding complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

By dividing the video frame into multiple regions and processing each region independently using standardized encoding algorithms, the system achieves efficient compression ratios comparable to sequential processing. The segmentation allows for parallel execution of compression operations, reducing overall processing time while maintaining the high compression efficiency required for reducing storage and bandwidth requirements.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent employs multiple video encoding standards (H.264, HEVC, VP9) that offer different compression parameters and settings. By selecting and applying appropriate encoding parameters for different regions or scenarios, the system optimizes the balance between compression ratio and processing complexity, achieving significant data volume reduction while managing computational demands through parameter optimization rather than uniformly complex processing.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10257529B2Techniques for generating wave front groups for parallel processing a video frame by a video encoder
Publication Date: 2019.04.09 INTEL CORP
  • US10257529B2 patent drawing
  • US10257529B2 patent drawing
  • US10257529B2 patent drawing

AI summary

Various embodiments are generally directed to an apparatus, method and other techniques for dividing a frame comprising pixels into a number of macroblocks, each macroblock comprising a number of pixels within four macroblock boundaries. Various embodiments may also include creating at least two regions having a plurality of macroblocks by dividing the frame along macroblock boundaries and generating wave front groups based on the macroblocks in each region, each wave front group from each region comprising one or more macroblocks to process in parallel.