Region-Based Video Decoding for Parallel Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Feature rich computing devices, with their improved processor and memory capabilities, are not fully utilized in decoding video data due to the serial nature of existing video coding techniques, leading to inefficiencies in processing and power consumption.

Innovation Solution

Grouping coded pixel blocks with similar prediction dependencies allows for parallel processing and bulk retrieval, enabling faster and more efficient decoding by leveraging the capabilities of feature rich devices.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If video data is decoded using serial processing of macroblocks, then decoding accuracy is maintained, but processing speed and power efficiency deteriorate

Engineering Contradiction:
Improvedecoding speedVSAvoidprocessing complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent divides the video frame into multiple independent regions (e.g., top half and bottom half, or left and right portions) that can be decoded in parallel. Each region is processed independently by separate processing pipelines, eliminating the serial dependency between adjacent macroblocks while maintaining decoding accuracy through proper reference frame management.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a spatial dimension to parallel processing by organizing decoding operations across different regions of the video frame simultaneously. Instead of processing macroblocks sequentially in one dimension, multiple regions are decoded concurrently in parallel dimensions,充分利用 feature-rich devices' multi-core processors and memory bandwidth.

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

2Productivity

If feature rich computing devices are used for decoding, then processing capability is available, but utilization efficiency deteriorates due to serial processing requirements

Engineering Contradiction:
Improveprocessor utilization efficiencyVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent segments the decoding workload into independent regional tasks that can be distributed across multiple processor cores. Each core processes a specific region simultaneously, maximizing CPU utilization and reducing total processing time, which directly lowers power consumption by completing the task faster before the device enters idle or high-power states.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent ensures continuous processor utilization by maintaining multiple active decoding pipelines processing different regions simultaneously. This eliminates idle time between macroblock processing operations, keeping the processor continuously engaged in useful work and improving overall productivity while reducing the total time the system needs to remain in high-power states.

Inventive Principle:
Principle #20Continuity of useful action

3Loss of time

If macroblocks are decoded in serial fashion with reference to previously coded macroblocks, then prediction accuracy is maintained, but memory access time and processing time increase

Engineering Contradiction:
Improvememory access timeVSAvoidprediction accuracy
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The patent divides the frame into regions that can be decoded independently with respect to inter-macroblock prediction dependencies. By segmenting the processing such that regions do not reference each other during decoding, memory access patterns are optimized and processing time is reduced while prediction accuracy within each region is maintained through proper reference frame usage.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10382750B2Region-based processing of predicted pixels
Publication Date: 2019.08.13 APPLE INC
  • US10382750B2 patent drawing
  • US10382750B2 patent drawing
  • US10382750B2 patent drawing

AI summary

A method for decoding a compressed video data sequence containing one or more coded pixel blocks. The compressed video sequence is buffered. Prediction information for each of the coded pixel blocks is reviewed. One or more groups of coded pixel blocks are formed based on the reviewed prediction information such that the coded pixel blocks within a given group have similar prediction dependencies and/or at least do not depend on a reconstructed pixel within a group of received pixel blocks to enable parallel decoding. The formed groups are scheduled for processing and subsequently decoded to produce a decoded video data sequence.