Loopless Vector Run-Level Calculation in Video Compression

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional video compression methods are computationally expensive and inefficient due to the need for looping over all coefficients to determine run and level representations in entropy coding, especially in high-definition formats that require significant memory and processing power.

Innovation Solution

A method using SIMD instructions and look-up tables to generate bitmask arrays, which are then used to calculate run and level representations without loops, by mapping bitmask patterns to corresponding bytemap values and applying vector operations to efficiently determine run and level values.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If conventional loop-based methods are used to calculate run and level representations, then all coefficients can be processed, but computational overhead is high and processing efficiency is low

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidcomputational overhead
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent segments the coefficient array into 8-byte chunks and processes each segment independently using SIMD instructions. By dividing the processing into manageable vector segments, the method achieves parallel processing of multiple coefficients simultaneously, eliminating the need for sequential loop iterations and significantly improving processing efficiency while reducing computational overhead.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent replaces the mechanical loop-based processing system with a vectorized SIMD processing system. Instead of using traditional loop structures that iterate through coefficients one by one, the invention uses SIMD instructions to perform parallel operations on multiple coefficients at once, substituting the sequential mechanical loop mechanism with a parallel vector processing mechanism that dramatically reduces computational overhead.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Measurement precision

If high-definition video formats are used, then video quality is improved, but memory and processing power requirements increase significantly

Engineering Contradiction:
Improvevideo qualityVSAvoidmemory and processing power requirements
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent transitions from scalar processing to vector processing by utilizing SIMD instructions that operate on multiple data elements simultaneously. This dimensional change from processing one coefficient at a time to processing multiple coefficients in parallel vectors reduces the processing power requirements for high-definition video formats while maintaining video quality, as the parallel processing architecture is more efficient at handling the increased data volume.

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

Solution Approach 2:

The patent changes the processing parameters by using lookup tables that pre-compute and store run and level representation values. By transforming the processing approach from iterative calculation to table-based retrieval, the method reduces the computational complexity and memory access patterns, making high-definition video processing more efficient with lower processing power requirements while preserving video quality.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9407933B2Simultaneous and loopless vector calculation of all run-level pairs in video compression
Publication Date: 2016.08.02 PEXIP
  • US9407933B2 patent drawing
  • US9407933B2 patent drawing
  • US9407933B2 patent drawing

AI summary

A method and a decoding or coding device for calculating at least one of run and level representations of respective quantized transform coefficients representing pixel values in a block of a video picture inserted in a coefficient array is disclosed. The method and the decoding or coding device are adjusted to generate a bitmask of the quantized transform coefficients, respectively perform a look up of the 8 least significant bits and the 8 most significant bits of the bitmask in a look up table, patch the looked up lower part and upper part bytemap values and insert the bytes of the first bytemap array from index position 8 minus the number of non-zeros in the 8 least significant bits of the bitmask.