Audio Encoding Bit Allocation in Split Multi-Rate Vector Quantization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In split multi-rate lattice vector quantization, the bit rate increases due to the selection of codebooks with larger codebook numbers, as they require more bits for codebook indication values, leading to inefficient bit allocation across sub-vectors with varying energy levels.
Innovation Solution
A speech encoding and decoding apparatus/method that identifies the sub-vector with the largest bit count, estimates the bits used by its codebook indication value, calculates the difference between actual and estimated bits, and encodes this information to optimize bit allocation across all sub-vectors, reducing overall bit rate.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If codebooks with larger codebook numbers are selected in split multi-rate lattice vector quantization, then the quantization accuracy is improved, but the bit rate increases due to more bits required for codebook indication values
Solution Approach 1:
The patent applies local quality by differentiating the treatment of sub-vectors based on their energy characteristics. High-energy sub-vectors receive larger codebooks for better quantization accuracy, while low-energy sub-vectors use smaller codebooks to save bits. This localized adaptation resolves the contradiction by optimizing the balance between quantization accuracy and bit rate for each sub-vector individually rather than uniformly across all sub-vectors.
Solution Approach 2:
The patent dynamically changes the codebook size parameter based on the energy level of each sub-vector. By adjusting the codebook indication value bits according to sub-vector energy characteristics, the system optimizes the trade-off between quantization precision and bit rate. This parameter adaptation allows the system to achieve high quantization accuracy where needed while minimizing bit rate in regions where it is less critical.
2Device complexity
If uniform bit allocation is used across all sub-vectors, then the encoding complexity is reduced, but the overall bit rate efficiency deteriorates due to varying energy levels requiring different bit counts
Solution Approach 1:
The patent implements local quality by assigning different bit allocation strategies to different sub-vectors based on their energy characteristics. Instead of uniform treatment, each sub-vector receives an optimized bit allocation matching its energy level, improving overall bit rate efficiency without significantly increasing encoding complexity through automated energy-based classification.
Solution Approach 2:
The patent introduces dynamic bit allocation that adapts to the energy characteristics of each sub-vector. The system dynamically determines the appropriate codebook size and bit allocation for each sub-vector based on real-time energy analysis, allowing flexible optimization of bit rate efficiency while maintaining manageable encoding complexity through systematic adaptation rules.
Data Source
Figure 1A~1B
Figure 2A~2B
Figure 3A~3B
AI summary
An audio encoding apparatus capable of reducing the bit rate even if a codebook having a larger codebook number is selected in a split multi-rate lattice vector quantization is provided. Sub-vector determining unit (121) determines, in the spectrum of an input signal having been divided into a predetermined number of sub-vectors, a sub-vector using the largest number of bits. Positional information encoding unit (122) encodes the positional information of the determined sub-vector. Codebook indication value estimating unit (124) estimates a number of used bits for a codebook indication value of the largest number of used bits by use of the (N - 1) other codebook indication values, and generates a number-of-used-bits estimation value. Difference calculating unit (125) calculates a difference by subtracting the number-of-used-bits estimation value from the actual value of the codebook indication value of the largest number of used bits. Difference encoding unit (126) encodes the difference information.