Dual Codeset Entropy Coding for Faster Video Decoding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current entropy coding methods, such as CAVLC and CABAC in H.264/AVC, are computationally demanding, making them inefficient for devices with limited processing power, particularly in high-quality video decoding applications.

Innovation Solution

The proposed solution employs encoding trees with primary and secondary codewords, using a context model to determine probabilities and generate bitstreams efficiently, allowing for adaptive encoding and decoding processes that balance computational complexity and compression efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of substance

If CABAC (Context Adaptive Binary Arithmetic Coding) is used for entropy coding, then compression efficiency is improved, but computational complexity increases

Engineering Contradiction:
Improvecompression efficiencyVSAvoidcomputational complexity
Core Design Contradiction:
Loss of substanceVSDevice complexity

Solution Approach 1:

The patent segments the encoding process into two distinct code sets: primary codewords for common contexts and secondary codewords for less frequent contexts. This segmentation allows the decoder to quickly handle the majority of cases using the simpler primary code set, while reserving the more complex secondary code set for less frequent situations, thereby reducing overall computational complexity while maintaining compression efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic code set selection based on context probability estimates. The encoder and decoder adaptively choose between primary and secondary code sets depending on the estimated probability of the current context, allowing the system to dynamically adjust its complexity level to match the actual data characteristics, thus optimizing the balance between compression efficiency and computational demand.

Inventive Principle:
Principle #15Dynamics

2Device complexity

If CAVLC (Context Adaptive Variable Length Coding) is used for entropy coding, then computational complexity is reduced, but compression efficiency deteriorates

Engineering Contradiction:
Improvecomputational complexityVSAvoidcompression efficiency
Core Design Contradiction:
Device complexityVSLoss of substance

Solution Approach 1:

The patent divides the code set into primary and secondary components, where the primary code set provides simple, fast decoding similar to CAVLC, while the secondary code set offers enhanced compression for specific contexts. This segmentation allows the system to achieve CAVLC-like computational simplicity for the majority of cases while incorporating CABAC-like efficiency where needed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates a universal encoding framework that can adaptively function in multiple modes - operating primarily in a simple CAVLC-like mode for speed, but switching to a more efficient CABAC-like mode when compression efficiency is prioritized. This multi-functionality allows the same system to serve both computational simplicity and compression efficiency requirements.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Loss of substance

If adaptive encoding based on context model probabilities is implemented, then compression efficiency is improved, but processing time increases

Engineering Contradiction:
Improvecompression efficiencyVSAvoidprocessing time
Core Design Contradiction:
Loss of substanceVSLoss of time

Solution Approach 1:

The patent performs preliminary organization of code sets during encoding, where primary and secondary codewords are pre-structured based on context probabilities. This preliminary action allows the decoder to quickly retrieve and apply the appropriate code set without performing complex probability calculations in real-time, thus maintaining compression efficiency while significantly reducing processing time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements dynamic code set selection at the decoder based on context indicators in the bitstream, allowing the system to adaptively switch between primary and secondary code sets without requiring complex real-time probability modeling. This dynamic approach maintains the compression benefits of adaptive encoding while minimizing processing time by avoiding redundant calculations.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS8633837B2Encoding and decoding methods and devices employing dual codesets
Publication Date: 2014.01.21 MALIKIE INNOVATIONS LTD
  • US8633837B2 patent drawing
  • US8633837B2 patent drawing
  • US8633837B2 patent drawing

AI summary

A method for encoding an input sequence of symbols to produce a bitstream and a method of decoding the bitstream to generate a reconstructed binary sequence. Encoding employs an encoding tree having primary codewords associated with leaf nodes and secondary codewords associated with internal nodes. A flush event may cause output of secondary codewords. A context model is used to select an encoding tree corresponding to an estimated probability at the encoder. The same context model is used by the decoder to select a decoding tree. The decoder interleaves bits from decoded bit sequences associated with different estimated probabilities based on the context model.