Speech encoder capable of substantially increasing a codebook size without increasing the number of transmitted bits

Abstract: In a speech encoder, a gain codebook switching circuit is supplied with short-term prediction gains from a short-term prediction gain calculator circuit and with mode information through an input terminal and compares the short-term prediction gains with a predetermined threshold value when the mode information indicates a predetermined mode. As a result of comparison, the gain codebook switching circuit produces gain codebook switching information which is delivered to a gain quantizer circuit. The gain codebook quantizer circuit is supplied with adaptive code vectors, excitation code vectors, impulse response information, and the gain codebook switching information, and gain code vectors from a particular gain codebook connected to one of a plurality of input terminals that is selected by the gain codebook switching information. For the excitation code vectors being selected, the gain quantizer circuit selects combinations of the excitation code vectors and the gain code vectors in the gain codebook selected by the gain codebook switching information.

Description: This invention relates to a speech encoder operable with a short processing delay and, in particular, to a speech encoder for encoding a speech or voice signal with a high quality at a short frame period or length of 5ms to 10ms or shorter. A conventional speech encoding system is disclosed, for example, in a paper contributed by K. Ozawa et al to the IEICE Trans. Commun. Vol. E77-B, No. 9 (September 1994), pages 1114-1121, under the title of "M-LCELP Speech Coding at 4 kb/s with Multi-Mode and Multi-Codebook" (Reference 1). According to the above-referenced conventional system, a speech signal is encoded in a transmitting side as follows. By the use of linear predictive coding (LPC), spectral parameters representative of spectral characteristics are extracted from the speech signal at every frame having a frame length of, for example, 40ms. Calculation is made of feature quantities for signal frames or weighted signal frames obtained by perceptually weighting the signal frames. The feature quantities are used in deciding modes (for example, vowel and consonant segments) to produce mode decision results. With reference to the mode decision results, algorithm or codebooks are switched. In an encoding part, each frame is subdivided into speech subframes having a subframe length of, for example, 8 ms long. Adaptive parameters (delay parameters corresponding to pitch periods and gain parameters) are extracted from an adaptive codebook for each speech subframe with reference to a previous excitation signal. By the use of the adaptive codebook, pitch prediction is carried out for the speech subframes. For a residual signal obtained by the pitch prediction, an optimal excitation code vector is selected from an excitation codebook (vector quantization codebook) composed of noise signals of a predetermined kind. Excitation signals are quantized by calculating an optimal gain. The excitation code vector is selected so as to minimize an error power between the residual signal and a signal composed of a selected noise signal. A multiplexer is used to produce a transmission signal composed of a combination of indexes indicative of the kind of the excitation code vector thus selected, gains, the spectral parameters, and the adaptive parameters of the adaptive codebook. However, the conventional speech encoding system is disadvantageous in that a sufficient speech quality can not be obtained because of a restricted codebook size. EP-A-0607989 teaches a voice coder system that comprises a mode classifier 245 which classifies speech signals in a frame into a plurality of modes by calculating predetermined feature amounts of the speech signals. This is similar to the afore described prior art. WO-A-9305502 discloses an error control coding technique which separates an input data stream of voice coder bits into arrays of bits. A first array 302 comprises voice coder bits needing error protection while a second array 303 comprises bits that will not be error protected. It is an object of this invention to provide a speech encoder which has a function equivalent to inclusion of a codebook having a size several times greater than that of a conventional speech encoder without increasing the number of transmitted bits. Other objects of this invention will become clear as the description proceeds. The objects of the present invention are achieved by the features of the claims. There is provided a speech encoder comprising: frame segmenting means for segmenting an input speech signal into speech frames at a predetermined frame length, mode deciding means responsive to the input speech signal for calculating at least one kind of first feature quantities to produce mode decision results, encoding means for encoding the input speech signal in response to the mode decision results, and codebook switching means responsive to at least one kind of second feature quantities calculated from the input speech signal for switching, when a predetermined mode is selected, a plurality of codebooks preliminarily stored. The second feature quantities may include a temporal variation ratio of at least one kind of feature quantities. The second feature quantities may include a ratio of the two feature quantities of any two frames selected from a current frame and at least one previous frame. The second feature quantities may include at least one of pitch prediction gains, short-term prediction gains, levels, and pitches. The plurality of codebooks may comprise a plurality of RMS codebooks, a plurality of LSP codebooks, a plurality of adaptive codebooks, a plurality of excitation codebooks, or a plurality of gain codebooks. Fig. 1 is a block diagram of a speech encoder according to one embodiment of this invention; Fig. 2 is a block diagram of a gain quantizer circuit illustrated in Fig. 1; Fig. 3 is a block diagram of a modification of the gain quantizer circuit illustrated in Fig. 1; Fig. 4 is a block diagram of another modification of the gain quantizer circuit illustrated in Fig. 1; Fig. 5 is a block diagram of yet another modification of the gain quantizer circuit illustrated in Fig. 1; Fig. 6 is a block diagram of a speech encoder according to another embodiment of this invention; and Fig. 7 is a block diagram of a gain quantizer circuit illustrated in Fig. 6. Now, this invention will be described in detail with reference to the drawing. As an example, description will be directed to a case where a plurality of gain codebooks are switched in a predetermined mode. Fig. 1 shows a speech encoder according to a first embodiment of this invention. In the following description, gain codebooks are switched in a predetermined mode by the use of second feature quantities. Referring to Fig. 1, an input speech signal is supplied through an input terminal 100 to a frame dividing circuit 110. The frame dividing circuit 110 segments or divides the input speech signal into speech frames at a predetermined frame period or length of, for example, 5ms. Supplied with the speech frames, a subframe dividing circuit 120 further divides every single speech frame into speech subframes each of which has a subframe length of, for example, 2.5ms shorter than the frame length. A spectral parameter calculator circuit 200 calculates spectral parameters of the input speech signal up to a predetermined order, such as up to a tenth order (P = 10), by applying a window of a window length (for example, 24ms) longer than the subframe length to at least one of the speech subframes to extract the input speech signal. Herein, the spectral parameters can be calculated according to the LPC analysis or the Burg analysis well known in the art. In the example being illustrated, the Burg analysis is used. The Burg analysis is described in detail, for example, in a book written by Nakamizo and published in 1988 by Korona-sha under the title of "Signal Analysis and System Identification", pages 82 to 87 (Reference 2) and will not be described herein. After calculating linear prediction coefficients α i (i = 1, ..., 10) by the use of the Burg analysis, the spectral parameter calculator circuit 200 converts the linear prediction coefficients α i into LSP (linear spectral pair) parameters which are suitable for quantization and interpolation. Such conversion of the linear prediction coefficients into the LSP parameters is described in a paper contributed by Sugamura et al to the Transactions of the Institute of Electronics and Communication Engineers of Japan, J64-A (1981), pages 599 to 606, under the title of "Speech Data Compression by Linear Spectral Pair (LSP) Speech Analysis-Synthesis Technique" (Reference 3). Specifically, each speech frame consists of first and second subframes in the example being described. The linear prediction coefficients are calculated by the Burg analysis for the second subframes and converted into the LSP parameters. For the first subframe, the LSP parameters are calculated by linear interpolation of the LSP parameters of the second subframes and are inverse-converted into the linear prediction coefficients. In this manner, the spectral parameter calculator circuit 200 produces the linear prediction coefficients α iI (i = 1, ..., 10, I = 1, ..., S) for the first and the second subframes and delivers the linear prediction coefficients α iI to a perceptual weighting circuit 230. On the other hand, the spectral parameter calculator circuit 200 delivers the LSP parameters for the first and the second subframes to a spectral parameter quantizer circuit 210. The spectral parameter quantizer circuit 210 serves to efficiently quantize LSP parameters of a predetermined subframe. In the following description, it is assumed that the LSP parameters of the second subframe are quantized by the use of vector quantization. For vector quantization of the LSP parameters, it is possible to use various known techniques. For example, such vector quantization is described in detail in Japanese Unexamined Patent Publication No. 171500/1992 (Reference 4), Japanese Unexamined Patent Publication No. 363000/1992 (Reference 5), Japanese Unexamined Patent Publication No. 6199/1993 (Reference 6), and a paper contributed by T. Nomura et al to the Proc. Mobile Multimedia Communications, pages B.2.5-1 to B.2.5-4 (1993), under the title of "LSP Coding Using VQ-SVQ with Interpolation in 4.075 kbps M-LCELP Speech Coder" (Reference 7). Therefore, detailed description will not herein be made. The spectral parameter quantizer circuit 210 reproduces the LSP parameters for the first and the second subframes from the LSP parameters quantized in connection with each second subframe. Herein, the LSP parameters for the first and the second subframes are reproduced by linear interpolation between the quantized LSP parameters of the second subframe of a current frame and the quantized LSP parameters of the second subframe of a previous frame which is one frame period prior to the current frame. More in detail, the LSP parameters for the first and the second subframes can be reproduced by linear interpolation after a single code vector is selected so as to minimize an error power between the LSP parameters before and after quantization. In order to achieve a higher efficiency, it is possible to select a plurality of code vector candidates for minimization of the error power, to evaluate cumulative distortions in connection with those candidates, and to select a combination of one of the candidates that minimizes the cumulative distortions and interpolated LSP parameters. The spectral parameter quantizer circuit 210 converts the LSP parameters for the first and the second subframes thus reproduced and the quantized LSP parameters of the second subframe into converted linear prediction coefficients α ' iI (i = 1, ..., 10, I = 1, ..., 5) for every subframe. The converted linear prediction coefficients α ' iI are delivered to an impulse response calculator circuit 310. In addition, the spectral parameter quantizer circuit 210 supplies a multiplexer 400 with indexes indicative of the code vectors for the quantized LSP parameters of the second subframe. Instead of the linear interpolation in the foregoing description, it is possible to preliminarily prepare interpolation LSP patterns for a predetermined number of bits, such as two bits, to reproduce the LSP parameters of the first and the second subframes for each pattern, and to select a combination of one of the code vectors that minimizes the cumulative distortions and the interpolation patterns. In this event, an amount of transmitted information is inevitably increased in correspondence to the number of bits of the interpolation patterns. However, it is possible to more exactly represent temporal variations of the LSP parameters in each speech frame. The interpolation patterns may be prepared by preliminarily learning training LSP data. Alternatively, predetermined patterns may be stored as the interpolation patterns. For example, such predetermined patterns are described in a paper contributed by T. Taniguchi et al to the Proc. ICSLP (1992), pages 41 to 44, under the title of "Improved CELP Speech Coding at 4 kbit/s and below" (Reference 8). Alternatively, in order to further improve the performance, it is possible to preselect the interpolation patterns, to calculate an error signal between actual values of the LSP parameters and interpolated LSP values for a predetermined subframe, and to represent the error signal by the use of an error codebook. The perceptual weighting circuit 230 is supplied from the spectral parameter calculator circuit 200 with the linear prediction coefficients α iI (i = 1, ..., 10, I = 1, ..., 5) before quantization subframe by subframe. According to the technique described in the above-mentioned Reference 1, the perceptual weighting circuit 230 gives perceptual or auditory weights to the speech subframes to produce a perceptually weighted signal. Supplied with the perceptually weighted signal from the perceptual weighting circuit 230 frame by frame, a mode deciding circuit 250 decides pitch prediction gains and modes (for example, vowel and consonant segments) with reference to a predetermined threshold value. The perceptual weighting circuit 230 delivers a mode decision result to an adaptive codebook circuit 500 and to an excitation quantizer circuit 350. Turning back to Fig. 1, a response signal calculator circuit 240 is supplied from the spectral parameter calculator circuit 200 with the linear prediction coefficients α iI subframe by subframe. In addition, the response signal calculator circuit 240 is supplied from the spectral parameter quantizer circuit 210 with the converted linear prediction coefficients α ' iI , subframe by subframe, reproduced after quantization and interpolation. By the use of a filter memory value being stored, the response signal calculator circuit 240 calculates a response signal x z (n) for each single subframe in response to the input signal given by d(n) = 0 and delivers the response signal to a subtractor 235. The response signal x z (n) is represented by: where γ represents a weighting factor which controls the perceptual weight and has a value equal to that given by Equation (3) which will appear later. The subtractor 235 subtracts the response signal from the perceptually weighted signal for one subframe to produce a subframe difference signal x' w (n) which is delivered to the adaptive codebook circuit 500. The subframe difference signal x' w (n) is given by: x' w (n) = x w (n) - x z (n). The impulse response calculator circuit 310 calculates, at a predetermined number L of points, impulse responses h w (n) of a weighted filter. The impulse responses h w (n) are delivered to the adaptive codebook circuit 500 and to the excitation quantizer circuit 350. Z-transform of the impulse responses h w (n) is given by: The adaptive codebook circuit 500 calculates pitch parameters in the manner described in detail in Reference 2. The adaptive codebook circuit 500 also carries out pitch prediction to produce an adaptive codebook prediction difference signal z(n) given by: z(n) = x' w (n) - b(n), where b(n) represents an adaptive codebook pitch prediction signal defined by: b(n) = β v(n - T)*h w (n), where β and T represent the gain of the adaptive codebook circuit 500 and a delay, respectively. v(n) represents an adaptive code vector. The symbol * represents convolution. A sparse excitation codebook 351 of a non-regular pulse number type stores excitation code vectors different in number of non-zero vector components. For all or a part of the excitation code vectors stored in the excitation codebook 351, the excitation quantizer circuit 350 selects optimal excitation code vectors c j (n) so as to minimize j-th differences D j . Herein, it is possible to select a single kind of the optimal code vectors. Alternatively, it is possible to select two or more kinds of the optimal code vectors and to finally select one upon quantization of the gains. It is assumed here that two or more kinds of the code vectors are selected. The j-th differences D j are given by: where z(n) represents the prediction difference signal with respect to the adaptive code vectors being selected. In case where Equation (6) is applied to a part of the excitation code vectors alone, it is possible to preliminarily select a plurality of excitation code vectors and to apply Equation (6) to the excitation code vectors preliminarily selected. Supplied with the mode decision information from the mode deciding circuit 250 and with the spectral parameters from the spectral parameter calculator circuit 200, a gain quantizer circuit 365 selects one of gain codebooks 371 and 372 by the use of second feature quantities when the mode decision information indicates a predetermined mode. The gain quantizer circuit 365 reads gain code vectors from a selected one of the gain codebooks 371 and 372 and supplies the indexes indicative of the excitation and the gain code vectors to the multiplexer 400. Referring to Fig. 2, description will be made as regards the gain quantizer circuit 365. A short-term prediction gain calculator circuit 1110 is supplied with the spectral parameters through an input terminal 1040 and calculates, as the second feature quantities, short-term prediction gains G which are delivered to a gain codebook switching circuit 1120. The short-term prediction gains G are given by: Supplied with the short-term prediction gains from the short-term prediction gain calculator circuit 1110 and with the mode information through an input terminal 1050, the gain codebook switching circuit 1120 compares the short-term prediction gain with a predetermined threshold value when the mode information indicates a predetermined mode. As a result of comparison, the gain codebook switching circuit 1120 produces gain codebook switching information which is delivered to a gain quantizer circuit 1130. The gain quantizer circuit 1130 is supplied with the adaptive code vectors through an input terminal 1010, with the excitation code vectors through an input terminal 1020, and with the impulse response information through an input terminal 1030. The gain quantizer circuit 1130 is also supplied with the gain codebook switching information from the gain codebook switching circuit 1120 and with the gain code vectors from the gain code book 371 or 372 (Fig. 1) connected to one of input terminals 1060 and 1070 that is selected by the gain codebook switching information. For the excitation code vectors being selected, the gain quantizer circuit 1130 selects combinations of the excitation code vectors and the gain code vectors in the gain codebook selected by the gain codebook switching information so as to minimize (j,k)-th differences defined by: where β 'k and γ 'k represent a k-th two-dimensional code vector stored in the gain codebook selected by the gain codebook switching information. The gain quantizer circuit 1130 delivers to an output terminal 1080 the indexes indicative of the selected combinations of the excitation code vectors and the gain code vectors. Turning back to Fig. 1, supplied with the output parameters of the spectral parameter calculator circuit 200 together with their indexes, a weighting signal calculator circuit 360 reads the code vectors with reference to their indexes and calculates a drive excitation signal v(n) according to: v(n) = β ' k v(n - T) + γ ' k c j (n) Subsequently, by the use of the output parameters of the spectral parameter calculator circuit 200 and the output parameters of the spectral parameter quantizer circuit 210, the weighting signal calculator circuit 360 calculates a weighting signal s w (n) for every subframe to deliver the weighting signal to the response signal calculator circuit 240 in accordance with: Next, description will be made as regards a speech encoder according to a second embodiment of this invention. The speech encoder of this embodiment is similar in structure to that of the first embodiment except that the gain quantizer circuit 365 is replaced by a gain quantizer circuit 2365. In the following, the gain quantizer circuit 2365 alone will be described with reference to Fig. 3. Referring to Fig. 3, a short-term prediction gain calculator circuit 2110 is supplied with the spectral parameters through an input terminal 2040 and calculates, as the second feature quantities, short-term prediction gains G which are delivered to a short-term prediction gain ratio calculator circuit 2140 and to a delay unit 2150. The short-term prediction gains G are given by the above equation (7) described with respect to the first embodiment. Supplied with the short-term prediction gain of a current frame from the short-term prediction gain calculator circuit 2110 and with the short-term prediction gain of a previous frame (one frame period prior to the current frame) from the delay unit 2150, the short-term prediction gain ratio calculator circuit 2140 calculates a short-term prediction gain ratio as a time ratio and delivers the short-term prediction ratio to a gain codebook switching circuit 2120. Supplied with the short-term prediction gain ratio from the short-term prediction gain ratio calculator circuit 2140 and with the mode information through an input terminal 2050, the gain codebook switching circuit 2120 compares the short-term prediction gain ratio with a predetermined threshold value when the mode information indicates a predetermined mode. As a result of comparison, the gain codebook switching circuit 2120 produces gain codebook switching information which is delivered to a gain quantizer circuit 2130. The gain quantizer circuit 2130 is supplied with the adaptive code vectors through an input terminal 2010, with the excitation code vectors through an input terminal 2020, and with the impulse response information through an input terminal 2030. The gain quantizer circuit 2130 is also supplied with.the gain codebook switching information from the gain codebook switching circuit 2120 and with the gain code vectors from the gain codebook 371 or 372 (Fig. 1) connected to one of input terminals 2060 and 2070 that is selected by the gain codebook switching information. For the excitation code vectors being selected, the gain quantizer circuit 2130 selects combinations of the excitation code vectors and the gain code vectors in the gain codebook selected by the gain codebook switching information so as to minimize (j,k)-th differences defined by the above equation (8) described with respect to the first embodiment. In this embodiment, the gain quantizer circuit 2130 delivers to an output terminal 2080 the indexes indicative of the selected combinations of the excitation code vectors and the gain code vectors. Description will now be made as regards a speech encoder according to a third embodiment of this invention. The speech encoder of this embodiment is similar in structure to that of the first embodiment except that the gain quantizer circuit 365 is replaced by a gain quantizer circuit 3365. In the following, the gain quantizer circuit 3365 alone will be described with reference to Fig. 4. Referring to Fig. 4, a short-term prediction gain calculator circuit 3110 is supplied with the spectral parameters through an input terminal 3040 and calculates, as the second feature quantities, short-term prediction gains G which are delivered to a short-term prediction gain ratio calculator circuit 3140 and to a delay unit 3150. The short-term prediction gains G are given by the above equation (7) described with respect to the first embodiment. Supplied with the short-term prediction gain of a current frame from the short-term prediction gain calculator circuit 3110 and with the short-term prediction gain of a previous frame (two frame periods prior to the current frame) from the delay unit 3160, the short-term prediction gain ratio calculator circuit 3140 calculates a short-term prediction gain ratio and delivers the short-term prediction gain ratio to a gain codebook switching circuit 3120. Supplied with the short-term prediction gain ratio from the short-term prediction gain ratio calculator circuit 3140 and with the mode information through an input terminal 3050, the gain codebook switching circuit 3120 compares the short-term prediction gain ratio with a predetermined threshold value when the mode information indicates a predetermined mode. As a result of comparison, the gain codebook switching circuit 3120 produces gain codebook switching information which is delivered to a gain quantizer circuit 3130. The gain quantizer circuit 3130 is supplied with the adaptive code vectors through an input terminal 3010, with the excitation code vectors through an input terminal 3020, and with the impulse response information through an input terminal 3030. The gain quantizer circuit 3130 is also supplied with the gain codebook switching information from the gain codebook switching circuit 3120 and with the gain code vectors from the gain codebook 371 or 372 (Fig. 1) connected to one of input terminals 3060 and 3070 that is selected by the gain codebook switching information. For the excitation code vector being selected, the gain quantizer circuit 3130 selects combinations of the excitation code vectors and the gain code vectors in the gain codebook selected by the gain codebook switching information so as to minimize (j,k)-th differences defined by the above equation (8) described with respect to the first embodiment. In this embodiment, the gain quantizer circuit 3130 delivers to an output terminal 3080 the indexes indicative of the selected combinations of the excitation code vectors and the gain code vectors. Next, description will be made as regards a speech encoder according to a fourth embodiment of this invention. The speech encoder of this embodiment is similar in structure to that of the first embodiment except that the gain quantizer circuit 365 is replaced by a gain quantizer circuit 4365. In the following, the gain quantizer circuit 4365 alone will be described with reference to Fig. 5. Referring to Fig. 5, a short-term prediction gain calculator circuit 4110 is supplied with the.spectral parameters through an input terminal 4040 and calculates, as the second feature quantities, short-term prediction gains G which are delivered to delay units 4170 and 4150. The short-term prediction gains G are given by the above equation (7) described with respect to the first embodiment. Supplied with the short-term prediction gain of a previous frame (one frame period prior to the current frame) from the delay unit 4170 and with the short-term prediction gain of another previous frame (two frame periods prior to the current frame) from the delay unit 4160, the short-term prediction gain ratio calculator circuit 4140 calculates a short-term prediction gain ratio and delivers the short-term prediction gain ratio to a gain codebook switching circuit 4120. Supplied with the short-term prediction gain ratio from the short-term prediction gain ratio calculator circuit 4140 and with the mode information through an input terminal 4050, the gain codebook switching circuit 4120 compares the short-term prediction gain ratio with a predetermined threshold value when the mode information indicates a predetermined mode. As a result of comparison, the gain codebook switching circuit 4120 produces gain codebook switching information which is delivered to a gain quantizer circuit 4130. The gain quantizer circuit 4130 is supplied with the adaptive code vectors through an input terminal 4010, with the excitation code vectors through an input terminal 4020, and with the impulse response information through an input terminal 4030. The gain quantizer circuit 4130 is also supplied with the gain codebook switching information from the gain codebook switching circuit 4120 and with the gain code vectors from the gain codebook 371 or 372 (Fig. 1) connected to one of input terminals 4060 and 4070 that is selected by the gain codebook switching information. For the excitation code vectors being selected, the gain quantizer circuit 4130 selects combinations of the excitation code vectors and the gain code vectors in the gain codebook selected by the gain codebook switching information so as to minimize (j,k)-th differences defined by the above equation (8) described with respect to the first embodiment. In this embodiment, the gain quantizer circuit 4130 delivers to an output terminal 4080 the indexes indicative of the selected combinations of the excitation code vectors and the gain code vectors. Description will now be made as regards a speech encoder according to a fifth embodiment of this invention. The speech encoder of this embodiment is similar in structure to that of the first embodiment except that the gain quantizer circuit 365 is replaced by a gain quantizer circuit 9365 and that the gain codebooks 371 and 372 are replaced by gain codebooks 9371, 9372, and 9373. The speech encoder of the fifth embodiment will hereinafter be described with reference to Figs. 6 and 7. Supplied with the mode decision information from the mode deciding circuit 250 and with the spectral parameters from the spectral parameter calculator circuit 200, the gain quantizer circuit 9365 selects one of the gain codebooks 9371, 9372, and 9373 by the use of the second feature quantities when the mode decision information indicates a predetermined mode. The gain quantizer circuit 9365 reads the gain code vectors from a selected one of the gain codebooks 9371 through 9373 and supplies the indexes indicative of the excitation and the gain code vectors to the multiplexer 400. Referring to Fig. 7, a short-term prediction gain calculator circuit 5110 is supplied with the spectral parameters through an input terminal 5040 and calculates, as the second feature quantities, short-term prediction gains G which are delivered to delay units 5170 and 5150. The short-term prediction gains G are given by the above equation (7) described with respect to the first embodiment. Supplied with the short-term prediction gain of a previous frame (one frame period prior to the current frame) from the delay unit 5170 and with the short-term prediction gain of another previous frame (two frame periods prior to the current frame) from the delay unit 5160, the short-term prediction gain ratio calculator circuit 5140 calculates a short-term prediction gain ratio and delivers the short-term prediction gain ratio to a gain codebook switching circuit 5120. Supplied with the short-term prediction gain ratio from the short-term prediction gain ratio calculator circuit 5140 and with the mode information through an input terminal 5050, the gain codebook switching circuit 5120 compares the short-term prediction gain ratio with a predetermined threshold value when the mode information indicates a predetermined mode. As a result of comparison, the gain codebook switching circuit 5120 produces gain codebook switching information which is delivered to a gain quantizer circuit 5130. The gain quantizer circuit 5130 is supplied with the adaptive code vectors through an input terminal 5010, with the excitation code vectors through an input terminal 5020, and with the impulse response information through an input terminal 5030. The gain quantizer circuit 5130 is also supplied with the gain codebook switching information from the gain codebook switching circuit 5120 and with the gain code vectors from the gain codebook 9371, 9372, or 9373 connected to one of input terminals 5060, 5070, and 5090 that is selected by the gain codebook switching information. For the excitation code vectors being selected, the gain quantizer circuit 5130 selects combinations of the excitation code vectors and the gain code vectors in the gain codebook selected by the gain codebook switching information so as to minimize (j,k)-th differences defined by the above equation (8) described with respect to the first embodiment. In this embodiment, the gain quantizer circuit 5130 delivers to an output terminal 5080 the indexes indicative of the selected combinations of the excitation code vectors and the gain code vectors. As described above, a plurality of the codebooks are switched in a predetermined mode. Thus, the speech encoder according to this invention has a function equivalent to inclusion of a codebook having a size several times greater than that of the conventional speech encoder without increasing the number of transmitted bits. This makes it possible to improve a speech quality.

Claims: A speech encoder comprising frame segmenting means (110, 120) for segmenting an input speech signal into speech frames at a predetermined frame length, mode deciding means (250) responsive to said input speech signal for calculating first feature quantities frame by frame to produce mode decision results, encoding means (500, 350) for encoding said input speech signal in response to said mode decision results, and a plurality of gain codebooks (371, 372), characterized in that : the speech encoder further comprises: codebook switching means (365, 1110, 1120, 1130) responsive to second feature quantities calculated from said input speech signal for controllably switching one of the gain codebooks independence upon the mode decision results; and that: the first feature quantities include a pitch prediction gain and the mode decided for the current frame by the mode deciding means while the second feature quantities are short-term prediction gains calculated for the current and previous frames from spectrum parameters of the input speech signal. A speech encoder as claimed in claim 1, characterized in that said second feature quantities include a temporal variation ratio of at least one kind of feature quantities. A speech encoder as claimed in claim 1 or 2, characterized in that said second feature quantities include a ratio of the two feature quantities of any two frames selected from a current frame and at least one previous frame.

Inventors: OZAWA KAZUNORI, TAUMI SHIN-ICHI, OZAWA, KAZUNORI, TAUMI, SHIN-ICHI
Applicants: NIPPON ELECTRIC CO, NEC CORPORATION
Application year: 1996
Main classification: G10L19
IPC codes: G10L19