Candidate Code-Vector Generation for CELP Coding Complexity Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Higher bit rate Code Excited Linear Prediction (CELP) coding systems require higher computational complexity due to the need for error evaluation across a larger number of codebook entries in closed loop processing, which increases processing demands.
Innovation Solution
Generating candidate code-vectors through direct quantization of vectors formed using inverse weighting functions and evaluating weighted errors to produce a better overall code-vector, reducing computational complexity by pre-selecting initial codebook candidates and applying variable weights.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If error evaluation is performed across a larger number of codebook entries in closed loop processing, then coding accuracy is improved, but computational complexity increases
Solution Approach 1:
The codebook search process is divided into two stages: a first search process that identifies an initial candidate code-vector, and a second search process that refines the selection from a limited set of candidate code-vectors based on the initial result. This segmentation reduces the computational burden by avoiding exhaustive search of all codebook entries while maintaining coding accuracy through iterative refinement.
Solution Approach 2:
The first search process performs preliminary action by identifying an initial candidate code-vector before the second search process begins. This preliminary selection narrows down the search space significantly, allowing the second search to focus only on relevant candidate code-vectors, thereby reducing overall computational complexity while preserving measurement precision.
2Device complexity
If direct quantization with inverse weighting functions is used, then computational complexity is reduced, but initial codebook candidate quality may be compromised
Solution Approach 1:
The second search process uses feedback from the first search result to refine the code-vector selection. The initial candidate code-vector obtained through direct quantization serves as a starting point, and the second search iteratively improves upon it by evaluating weighted errors against the target signal, ensuring that code-vector accuracy is maintained or enhanced despite the simplified initial quantization approach.
Solution Approach 2:
The search process is made dynamic through the two-stage approach where the set of candidate code-vectors for the second search is determined based on the result of the first search. This dynamic adaptation allows the system to adjust the search strategy according to the characteristics of the input signal, optimizing both computational efficiency and code-vector accuracy.
Data Source
AI summary
A method (1100) and apparatus (100) generate a candidate code-vector to code an information signal. The method can include producing (1110) a weighted target vector from an input signal. The method can include processing (1120) the weighted target vector through an inverse weighting function to create a residual domain target vector. The method can include performing (1130) a first search process on the residual domain target vector to obtain an initial fixed codebook code-vector. The method can include performing (1140) a second search process over a subset of possible codebook code-vectors for a low weighted-domain error to produce a final fixed codebook code-vector. The subset of possible codebook code-vectors can be based on the initial fixed codebook code-vector. The method can include generating (1150) a codeword representative of the final fixed codebook code-vector. The codeword can be for use by a decoder to generate an approximation of the input signal.


