Speech Coding With Adaptive Likelihood Tables for Lower Bitrate
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing speech encoding techniques are inefficient in encoding quantization values, particularly when the probability distribution of the signal does not match the Laplacian distribution assumed by current encoding methods, leading to higher bitrates and reduced coding efficiency.
Innovation Solution
A method and system that split blocks of quantization values into subblocks, using likelihood tables based on the sum of values to encode each subblock efficiently, allowing for arithmetic encoding that adapts to the actual probability distribution of the signal, thereby improving encoding efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If Laplacian distribution-based encoding is used, then encoding simplicity is maintained, but coding efficiency deteriorates when the actual signal distribution does not match Laplacian distribution
Solution Approach 1:
The patent applies dynamics by making the encoding process adaptive rather than static. The encoder dynamically selects from multiple pre-calculated likelihood tables based on the actual signal characteristics (sum of quantization values), allowing the encoding method to adapt to different signal distribution types (Gaussian, Laplacian, or other distributions) without changing the fundamental encoding structure.
Solution Approach 2:
The patent changes the parameter of probability distribution assumption from a fixed Laplacian distribution to a variable selection among multiple distributions. By calculating the sum of quantization values and using this sum to select the most appropriate likelihood table, the system adjusts the encoding parameters to match the actual signal distribution, thereby improving coding efficiency.
2Productivity
If block splitting and likelihood table selection is implemented, then coding efficiency is improved, but device complexity increases
Solution Approach 1:
The patent applies preliminary action by pre-calculating and storing multiple likelihood tables corresponding to different probability distributions before the actual encoding process. This preparation work is done in advance, so during real-time encoding, the system only needs to select from these pre-prepared tables based on the signal characteristics, avoiding the complexity of calculating new distribution models on the fly.
Solution Approach 2:
The patent introduces an intermediary element - the sum of quantization values - which serves as a key to select the appropriate likelihood table. This intermediary simplifies the complexity by providing a straightforward criterion (the sum value) that links the actual signal characteristics to the most suitable encoding table, avoiding complex real-time distribution analysis.
3Quantity of substance
If arithmetic encoding with adaptive likelihood tables is used, then bitrate is reduced, but encoding computation increases
Solution Approach 1:
The patent applies segmentation by dividing the encoding process into distinct stages: calculating the sum of quantization values, selecting the appropriate likelihood table based on the sum, and then performing arithmetic encoding with the selected table. This segmentation allows the system to optimize each stage independently, reducing overall computational burden while maintaining bitrate efficiency.
Data Source
AI summary
A method of encoding one or more parent blocks of values, the number of values being the length of each block, the method comprising for each parent block:(a) determining a first sum of values in the parent block;(b) splitting the parent block into smaller subblocks;(c) for at least one of the subblocks, determining a second sum of the values in the subblock, selecting a likelihood table from the plurality of likelihood tables based on said first sum of values in the parent block and encoding the second sum using the likelihood table;(d) designating each subblock a parent block;(e) carrying out steps (a), (b), (c) and (d) until at least one parent block reaches a predetermined condition.


