Video Bitstream Tranches With CABAC Continuity for Lower Delay
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current parallel processing techniques for HEVC encoding and decoding, such as wavefront processing and tile processing, face challenges in reducing coding delay while maintaining coding efficiency, especially in multi-threaded environments where data locality is compromised, leading to increased end-to-end delays in video transmission.
Innovation Solution
The approach involves segmenting data into smaller tranches within WPP substreams or tiles, allowing for continued context-adaptive binary arithmetic coding (CABAC) probability adaptation across tranche boundaries, enabling earlier transmission and decoding of these tranches, which are interleaved and packetized to match maximum transfer unit sizes, thereby reducing delay without compromising entropy coding efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If data is segmented into smaller tranches within WPP substreams or tiles for parallel processing, then transmission speed and decoding start time are improved, but coding efficiency is degraded due to interrupted CABAC probability adaptation
Solution Approach 1:
The patent divides the video data into smaller tranches within WPP substreams or tiles, allowing parallel transmission and decoding. Each tranche can be processed independently by different threads, improving transmission speed and reducing end-to-end delay while maintaining the ability to adapt CABAC probabilities across tranche boundaries.
Solution Approach 2:
The patent performs preliminary segmentation of data into tranches before transmission, and pre-configures the CABAC probability adaptation mechanism to continue across tranche boundaries. This preliminary preparation enables faster parallel processing without compromising coding efficiency, as the probability adaptation state is preserved and transferred between tranches.
2Loss of time
If data is segmented into smaller tranches for parallel processing, then end-to-end delay is reduced, but data locality is compromised
Solution Approach 1:
The patent segments the video bitstream into smaller tranches that can be transmitted and decoded in parallel. This segmentation reduces end-to-end delay by enabling multiple decoding threads to work simultaneously on different portions of the data, while the tranche structure maintains sufficient data locality for efficient processing.
Solution Approach 2:
The patent introduces a new dimensional organization of data by creating tranches within WPP substreams, adding a hierarchical layer between the traditional slice structure and the actual data blocks. This dimensional change allows parallel processing while preserving data locality through the structured arrangement of tranches.
3Loss of energy
If CABAC probability adaptation is continued across tranche boundaries, then coding efficiency is maintained, but complexity of entropy decoding increases
Solution Approach 1:
The patent pre-configures the CABAC probability adaptation mechanism to continue across tranche boundaries by preserving the probability state between tranches. This preliminary setup allows the decoder to maintain coding efficiency without requiring complex re-initialization logic, as the probability adaptation is seamlessly continued from one tranche to the next.
Solution Approach 2:
The patent ensures continuous CABAC probability adaptation across tranche boundaries by maintaining the probability state throughout the decoding process. This continuity allows the entropy decoding to proceed efficiently without interruption or re-initialization, preserving coding efficiency while managing complexity through a unified probability adaptation mechanism.
Data Source
AI summary
A raw byte sequence payload describing a picture in slices, WPP substreams or tiles and coded using context-adaptive binary arithmetic coding is subdivided into tranches with continuing the context-adaptive binary arithmetic coding probability adaptation across tranche boundaries. Thereby, tranche boundaries additionally introduced within slices, WPP substreams or tiles do not lead to a reduction in the entropy coding efficiency of these entities. However, the tranches are smaller than the original slices, WPP substreams or tiles and accordingly they may be transmitted earlier, i.e. with lower delay, than the un-chopped original entities. According to another aspect combinable with the first aspect, substream marker NAL units are used within a sequence of NAL units of a video bitstream to enable a transport demultiplexer to assign data of slices within NAL units to the corresponding substreams or tiles so as to be able to, in parallel, serve a multi-threaded decoder with the corresponding substreams or tiles.


