Multi-Bitstream Video Decoding With Sync-Based Parallel Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing video processing systems face delays in encoding and decoding video frames, which reduce bitrate throughput due to the processing requirements of encoding and decoding bitstreams.

Innovation Solution

The use of multiple bitstream engines for encoding and decoding video frames, where one bitstream engine generates synchronization information upon completing a portion of a video frame, allowing the second engine to initiate processing of the next portion based on this information, enabling concurrent processing and reducing processing delays.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a single bitstream engine is used for decoding video frames, then device complexity is reduced, but processing time increases and bitrate throughput decreases

Engineering Contradiction:
Improvebitrate throughputVSAvoidnumber of bitstream engines
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent divides video frame processing into multiple segments (portions) that can be decoded concurrently by multiple bitstream engines. Each engine handles a specific portion of video frames, allowing parallel processing and increasing overall throughput without requiring a single engine to process entire frames sequentially

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension of parallelism by using multiple bitstream engines operating simultaneously on different portions of video frames. This transitions from single-threaded sequential processing to multi-threaded parallel processing, effectively adding a dimensional layer to the processing architecture

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

2Loss of time

If video frames are processed sequentially by a single bitstream engine, then synchronization is simplified, but processing delays increase

Engineering Contradiction:
Improveprocessing delayVSAvoidsynchronization mechanism
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent implements a feedback mechanism where bitstream engines generate synchronization information based on their decoding progress. This synchronization information is fed back to coordinate the processing of subsequent video frame portions, ensuring proper timing and dependency management while enabling concurrent processing

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent performs preliminary actions by generating synchronization information in advance during the decoding of current video frame portions. This allows subsequent decoding operations to be initiated at the appropriate time without waiting for complete sequential processing, reducing overall processing delays

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11638020B2Video processing using multiple bitstream engines
Publication Date: 2023.04.25 QUALCOMM INC
  • US11638020B2 patent drawing
  • US11638020B2 patent drawing
  • US11638020B2 patent drawing

AI summary

A device includes a first bitstream engine and a second bitstream engine. The first bitstream engine is configured to decode a first portion of a first video frame of a plurality of video frames to generate first decoded portion data. The first bitstream engine is also configured to generate synchronization information based on completion of decoding the first portion. The second bitstream engine is configured to, based on the synchronization information, initiate decoding of a second portion of a particular video frame to generate second decoded portion data. The second bitstream engine uses the first decoded portion data during decoding of the second portion of the particular video frame. The particular video frame includes the first video frame or a second video frame of the plurality of video frames.