Tuple-Based Coding for Video Transform Coefficients

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current video coding standards, such as H.264/AVC and the developing HEVC, face inefficiencies in encoding and decoding transform coefficients, particularly in the encoding of greater-than-one flags, which occupy a significant portion of the bitstream and require complex context-based coding, leading to high worst-case throughput and computational complexity.

Innovation Solution

The proposed solution involves grouping greater-than-one flags into tuples and encoding a tuple-based value that functions on these flags, allowing the decoder to infer the flags in some cases, thereby reducing the number of flags encoded in the bitstream and simplifying the encoding process through tuple-based coding, which can divert context-coded bins to bypass coding, improving throughput and reducing complexity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If greater-than-one flags are encoded using context-based coding, then encoding precision is improved, but device complexity and processing time increase

Engineering Contradiction:
Improveencoding precisionVSAvoiddevice complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent segments the encoding process by separating greater-than-one flags into two categories: those that can be inferred from neighboring coefficient groups and those that must be explicitly encoded. This segmentation allows the system to avoid complex context-based coding for inferable flags while maintaining encoding precision for necessary flags, thereby reducing device complexity without sacrificing precision.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary action by pre-determining which greater-than-one flags can be inferred based on neighboring coefficient group information before the actual encoding process. This preliminary classification enables the decoder to reconstruct most flags without complex context-based decoding, reducing processing complexity while maintaining precision for the remaining flags that require explicit encoding.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If greater-than-one flags are explicitly encoded, then reliability is improved, but loss of time increases

Engineering Contradiction:
ImprovereliabilityVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies partial action by encoding only the necessary greater-than-one flags that cannot be inferred from neighboring coefficient groups, rather than explicitly encoding all flags. This partial encoding approach maintains reliability for the essential information while significantly reducing processing time by avoiding redundant encoding operations on inferable flags.

Inventive Principle:
Principle #16Partial or excessive action

3Productivity

If tuple-based coding is used to group flags, then productivity is improved, but manufacturing precision may be affected

Engineering Contradiction:
ImprovethroughputVSAvoidcoding precision
Core Design Contradiction:
ProductivityVSManufacturing precision

Solution Approach 1:

The patent merges multiple greater-than-one flags into tuple-based structures that can be processed and inferred collectively from neighboring coefficient groups. This merging approach improves productivity by reducing the total number of individual encoding operations while maintaining coding precision through the mathematical relationships embedded in the tuple structures that allow accurate reconstruction of original flag values.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentEP2675160B1Methods and devices for coding binary symbols as n-tuples
Publication Date: 2021.04.14 BLACKBERRY LTD
  • EP2675160B1 patent drawingFigure 1
  • EP2675160B1 patent drawingFigure 2
  • EP2675160B1 patent drawingFigure 3

AI summary

Methods and devices for reconstructing coefficient levels from a bitstream of encoded video data for a coefficient group in a transform unit. Greater-than-one flags are encoded by grouping them into tuples and by encoding a tuple-based value that is a function of the greater-than-one flags within that tuple. The tuple-based value may permit the decoder to infer the greater-than-one flags in some cases, in which case they are not encoded in the bitstream.