Pulse pattern excited linear prediction voice coder
AssigneeNokia Mobile Phones Ltd.
InventorsJari Haggvist, Kari Jarvinen, Kari-Pekka Estola, Jukka Ranta
Life of this patent
Estimating the term…
Abstract
Speech coding of the code excited linear predictive type is implemented by providing an excitation vector which comprises a set of a pre-determined number of pulse patterns from a codebook of P pulse patterns, which have a selected orientation and a pre-determined delay with respect to the starting point of the excitation vector. This requires modest computational power and a small memory space, which allows it to be implemented in one signal processor.
Claims7
A method for generating an excitation vector in a code excited linear predictive coder for processing digital speech signals partitioned into frames, in which:
- (a) a short term synthesizer filter and a long term synthesizer filter are serially coupled together such that an output of said long term synthesizer filter feeds an input of said short term synthesizer filter, said long term synthesizer filter and said short term synthesizer filter are excited by an excitation vector to generate a reconstructed speech frame;
- and
- (b) an error signal is formed for representing a difference between an input speech frame and the reconstructed speech frame;
- the method comprising the steps of:
- (i) deriving from a codebook all variations of a plurality of sets, each set comprising a predetermined number K of pulse patterns, the codebook having a number P of pulse patterns stored therein, wherein P>K;
- (ii) with respect to individual ones of the plurality of sets, creating a plurality of excitation vector candidates by (a) arranging pulse patterns to form a candidate excitation vector, and (b) by shifting a position and changing an orientation of each pulse pattern along the candidate excitation vector;
- (iii) determining which of the plurality of excitation vector candidates gives a minimum value for the error signal, and selecting the determined candidate excitation vector as an excitation vector;
- and
- (iv) outputting the set, the position, and the orientation of pulse patterns along the selected excitation vector as output parameters of the coder.
A method for generating an excitation vector in a code excited linear predictive coder for processing digital speech signals partitioned into frames, in which:
- (a) a short term synthesizer filter and a long term synthesizer filter are serially coupled together such that an output of said long term synthesizer filter feeds an input of said short term synthesizer filter, said long term synthesizer filter and said short term synthesizer filter are excited by an excitation vector to generate a reconstructed speech frame;
- and
- (b) an error signal is formed for representing a difference between an input speech frame and the reconstructed speech frame;
- the method comprising the steps of:
- (i) applying all pulse patterns from a codebook to the filters and storing responses to the pulse patterns that are output from the filters, the codebook having a number P of pulse patterns stored therein;
- (ii) forming all variations of a plurality of sets, each set comprising a predetermined number K of pulse pattern responses wherein P>K;
- (ii) with respect to individual ones of the plurality of sets, creating a plurality of reconstructed speech vector candidates by arranging the pulse pattern responses to form a first vector and by shifting the position and changing orientation of each pulse pattern response along the first vector,
- (iii) determining which of the reconstructed speech vector candidates gives a minimum value for the error signal and selecting a first vector, whose filter response is the reconstructed speech vector candidate, as the excitation vector;
- and
- (iv) outputting the set, the position, and the orientation of pulse patterns along the selected excitation vector as output parameters of the coder.
A speech coder for processing digital speech signals partitioned into frames as a speech vector, comprising:
- linear prediction coefficient analyzing means for generating a set of prediction parameters responsive to an input speech frame;
- comparison means responsive to the input speech frame and to a synthesized speech frame for forming a perceptually weighted error signal;
- controller means for controlling an excitation codebook search in a pulse pattern codebook, for storing said perceptually weighted error signals, and for determining a minimum value error signal thereof;
- long-term and short-term synthesis filter means that are serially coupled together and responsive to a scaled excitation vector for generating the synthesized speech frame, characteristics of said short-term synthesis filter being said prediction parameters;
- said pulse pattern generator further including:
- means for forming all variations of a plurality of sets, each set comprising a predetermined number K of pulse patterns, said pulse patterns being derived from a pulse pattern codebook having a number P of pulse patterns stored therein, where P>K;
- pulse pattern position means for positioning the pulse patterns of each set of the plurality of sets into predetermined points of a vector and for shifting the position of each pattern along said vector;
- and
- orientation means for changing orientation of pulse patterns of said vector;
- wherein a plurality of excitation vector candidates are created by shifting and orienting the pulse patterns of each set along the vector, and wherein the excitation vector candidate having a minimum perceptually weighted error signal is selected as the excitation vector.
Dependencies are inferred from the claim text.