Speech signal coder

Abstract: Spectral or pitch parameters of speech signal are quantized, and impulse responses thereof are predicted by using a filter constituted thereby. Orthogonal transform of the speech signal or a signal derived therefrom or the impulse responses or signals derived therefrom is made, and the result is entirely or partly quantized to obtain a plurality of pulses. More preferably, these pulses are retrieved recurrently by also using codevectors retrieved from a codebook or collectively quantizing their senses or amplitudes. Optimization is made in this way.

Description: The present invention relates to a speech signal coder for coding a speech signal of speech, music and so forth, and more particularly, to a signal coder capable of permitting high quality coding at low bit rate quantization. Methods of efficiently coding a speech signal spectrum on a frequency axis are well known in the art as disclosed in, for instance, T. Moriya and M. Honda "Transform coding of speech using a weighted vector quantizer" IEEE Journal on Selected Areas in Communications, Feb. 1988, USA, Vol. 6 Nn 2 pages 425-431, N. Iwakami et al., "High-quality audio-coding at less than 64 kbit/s using transform-domain weighted interleave vector quantization (TWINVQ)" ICASSP-95 (International Conference on Aconatics, Speech and Signal Processing, 1995)" Detroit, MI, USA" and A. M. Kondoz et al: Speech Coding at 9.6 Kb/s and below using Vector Quantized Transform Coder", Eurocon 88 Conference proceedings on area communication, Stockholm, Sweden, June 13-17, 1988, pages 96-39, Institute of Electrical and Electronics "Engineerings". In these methods, DCT (Discrete Cosine Transform) coefficients of speech signal are obtained by making orthogonal transform thereof based on DCT for number N of different points. The DCT coefficient are then divided at number (M ≤ N) of points. The speech signal is then vector quantized by making codebook retrieval for each of the M division points. However, these prior art signal coders had the following problems in the speech signal coding. Firstly, DCT coefficients of N points are all quantized uniformly. Therefore, reducing the bit number of a vector quantizer to reduce the bit rate, leads to difficulty of obtaining satisfactory DCT coefficients which have a perceptually important role. In other words, although relatively satisfactory speech quality is obtainable by high bit rate coding, reducing the bit rate leads to extreme deterioration of the speech signal quality. A second problem is posed by increasing the number M of points of DCT coefficient division to improve the efficiency of vector quantization. Increasing the number M of points of DCT coefficient division results in an increase of the dimension number of the vector quantizer. The dimension number increase exponentially increases the computational effort necessary for the vector quantization, and makes it impossible to reduce the bit rate. The invention was made in view of the above problems, and an object of the invention is to provide a signal coder capable of coding of excellent speech quality at a low bit rate by quantizing speech signals having high frequency components with less computational effort. According to the invention, there is provided a signal coder for coding speech signal comprising: parameter calculating means for calculating spectral and pitch parameters from speech signal and quantizing the calculated parameters; impulse response calculating means for calculating impulse responses of at least either of the quantized spectral or pitch parameters by using a filter constituted thereby; first orthogonal transfer means for obtaining a first transform signal by performing orthogonal transform of the speech signal or a signal derived therefrom using inverse filtering according to the quantized spectral and pitch parameters; second orthogonal transform means for obtaining a second transform of the predicted impulse response or a signal derived therefrom; and pulse quantizing means for quantizing the first transform signal either entirely or partly using the second transform signal. The pulse quantizing means includes a first retrieval unit for performing determination of a first pulse group of a plurality of pulses recurrently according to the pitch parameters, and a second retrieval unit for making determination of a second pulse group according to the second transform signal, the signal coder further comprising a selector for selecting either the first or the second pulse group that represent the first transform signal. The pulse quantizing means obtains the plurality of pulses by also using codevectors by retrieval of a codebook. The pulse quantizer simultaneously quantizes the polarity or amplitude of at least one of the plurality of pulses. According to another aspect of the present invention, there is provided a speech signal coder comprising: a first means for extracting a spectrum information and pitch information from a frame input speech signal; a second means for determining an impulse response signal of a filter defined by the spectrum information and pitch information; a third means for determining a response signal of a filter defined by the spectrum information and pitch information with an input signal; a fourth means for producing a difference signal between a perceptually weighted signal of the input speech signal and the response signal; a fifth means which receives the difference signal and has a filter defined by the spectrum information and pitch information; a sixth means for performing an orthogonal transform of the output of the fifth means and producing a first transform signal; a seventh means for performing an orthogonal transform of the impulse response signal and producing a second transform signal; an eighth means for determining a predetermined number of pulse positions on the basis of the first and second transform signals; a ninth means for determining a gain code vector using a gain codebook on the basis of the first and second transform signals, and determined pulse position data; a tenth means for determining an excitation signal on the basis of the gain code vector and determined pulse; an eleventh means for performing inverse-orthogonal transform of the excitation signal and producing as a first inverse-orthogonal; and a twelfth means for outputting a response signal based on the first inverse-orthogonal transform signal, spectrum information and pitch information as the input signal of the third means. According to other aspect of the present invention, there is provided a speech signal coder comprising: a first means for extracting a spectrum information and pitch information from a frame input speech signal; a second means for determining an impulse response signal of a filter defined by the spectrum information and pitch information; a third means for determining a response signal of a filter defined by the spectrum information and pitch information with an input signal; a fourth means for producing a difference signal between a perceptually weighted signal of the input speech signal and the response signal; a fifth means which receives the difference signal and has a filter defined by the spectrum information and pitch information; a sixth means for performing an orthogonal transform of the output of the fifth means and producing a first transform signal; a seventh means for performing an orthogonal transform of the impulse response signal and producing a second transform signal; an eighth means for determining a predetermined number of pulse positions on the basis of the first and second transform signals and determining an amplitude codevector by using an amplitude codebook; a ninth means for determining a gain code vector using a gain codebook on the basis of the first and second transform signals, and determined pulse position data; a tenth means for determining an excitation signal on the basis of the gain code vector and determined pulse; an eleventh means for performing inverse-orthogonal transform of the excitation signal and producing as a first inverse-orthogonal signal; and a twelfth means for outputting a response signal based on the first inverse-orthogonal transform signal, spectrum information and pitch information as the input signal of the third means. According to still another aspect of the present invention, there is provided a speech signal coder comprising: a first means for extracting a spectrum information and pitch information from a frame input speech signal; a second means for determining an impulse response signal of a filter defined by the spectrum information; a third means for determining a response signal of a filter defined by the spectrum information and pitch information with an input signal; a fourth means for producing a difference signal between a perceptually weighted signal of the input speech signal and the response signal; a fifth means which receives the difference signal and has a filter defined by the spectrum information and pitch information; a sixth means for performing an orthogonal transform of the output of the fifth means and producing a first transform signal; a seventh means for performing an orthogonal transform of the impulse response signal and producing a second transform signal; an eighth means for determining a first group of a predetermined number of pulse positions on the basis of the first and second transform signals and a second group of predetermined number of pulses on the basis of the determined pitch information; a ninth means for selecting one of the pulse groups having smaller distortion; a tenth means for determining a gain code vector using a gain codebook on the basis of the first and second transform signals, and selected pulse group data; an eleventh means for determining an excitation signal on the basis of the gain code vector and determined pulse; a twelfth means for performing inverse-orthogonal transform of the excitation signal and producing as a first inverse-orthogonal signal; and a thirteenth means for outputting a response signal based on the first inverse-orthogonal transform signal, spectrum information and pitch information as the input signal of the third means. According to still other aspect of the present invention, there is provided a speech signal coder comprising: a first means for extracting a spectrum information and pitch information from a frame input speech signal; a second means for determining an impulse response signal of a filter defined by the spectrum information; a third means for determining a response signal of a filter defined by the spectrum information and pitch information with an input signal; a fourth means for producing a difference signal between a perceptually weighted signal of the input speech signal and the response signal; a fifth means which receives the difference signal and has a filter defined by the spectrum information and pitch information; a sixth means for performing an orthogonal transform of the output of the fifth means and producing a first transform signal; a seventh means for performing an orthogonal transform of the impulse response signal and producing a second transform signal; an eighth means for retrieving a first group of a predetermined number of pulse positions on the basis of the first and second transform signals using amplitude codebook and a second group of predetermined number of pulses on the basis of the determined pitch information by using an amplitude codebook; a ninth means for selecting one of the pulse groups having smaller distortion by using an amplitude codebook; a tenth means for determining a gain code vector using a gain codebook on the basis of the first and second transform signals, and selected pulse group data; an eleventh means for determining an excitation signal on the basis of the gain code vector; a twelfth means for performing inverse-orthogonal transform of the excitation signal and producing as a first inverse-orthogonal signal; and a thirteenth means for outputting a response signal based on the first inverse-orthogonal transform signal, spectrum information and pitch information as the input signal of the third means. According to other aspect of the present invention, there is provided a speech signal coder comprising: a first means for extracting a spectrum information and pitch information from a frame input speech signal; a second means for determining an impulse response signal of a filter defined by the spectrum information and pitch information; a third means for determining a response signal of a filter defined by the spectrum information and pitch information with an input signal; a fourth means for producing a difference signal between a perceptually weighted signal of the input speech signal and the response signal; a fifth means which receives the difference signal and has a filter defined by the spectrum information and pitch information; a sixth means for performing an orthogonal transform of the output of the fifth means and producing a first transform signal; a seventh means for performing an orthogonal transform of the impulse response signal and producing a second transform signal; an eighth means for determining a predetermined number of pulse positions on the basis of the first and second transform signals by using an excitation codebook; a ninth means for determining a gain code vector by using a gain codebook on the basis of the first and second transform signals, and determined pulse position data; a tenth means for determining an excitation signal on the basis of the gain code vector; an eleventh means for performing inverse-orthogonal transform of the excitation signal and producing as a first inverse-orthogonal signal; and a twelfth means for outputting a response signal based on the first inverse-orthogonal transform signal, spectrum information and pitch information as the input signal of the third means. According to still other aspect of the present invention, there is provided a speech signal coder comprising: a first means for extracting a spectrum information and pitch information from a frame input speech signal; a second means for determining an impulse response signal of a filter defined by the spectrum information and pitch information; a third means for determining a response signal of a filter defined by the spectrum information and pitch information with an input signal; a fourth means for producing a difference signal between a perceptually weighted signal of the input speech signal and the response signal; a fifth means which receives the difference signal and has a filter defined by the spectrum information and pitch information; a sixth means for performing an orthogonal transform of the output of the fifth means and producing a first transform signal; a seventh means for performing an orthogonal transform of the impulse response signal and producing a second transform signal; an eighth means for determining a predetermined number of pulse positions on the basis of the first and second transform signals by using an amplitude codebook; a ninth means for determining a gain code vector using a gain codebook on the basis of the first and second transform signals, and determined pulse position data and amplitude codevector; a tenth means for determining an excitation signal on the basis of the gain code vector; an eleventh means for performing inverse-orthogonal transform of the excitation signal and producing as a first inverse-orthogonal signal; and a twelfth means for outputting a response signal based on the first inverse-orthogonal transform signal, spectrum information and pitch information as the input signal of the third means. According to still other aspect of the present invention, there is provided a speech signal coder comprising: a first means for extracting a spectrum information and pitch information from a frame input speech signal; a second means for determining an impulse response signal of a filter defined by the spectrum information; a third means for determining a response signal of a filter defined by the spectrum information and pitch information with an input signal; a fourth means for producing a difference signal between a perceptually weighted signal of the input speech signal and the response signal; a fifth means which receives the difference signal and has a filter defined by the spectrum information and pitch information; a sixth means for performing an orthogonal transform of the output of the fifth means and producing a first transform signal; a seventh means for performing an orthogonal transform of the impulse response signal and producing a second transform signal; an eighth means for determining a first group of a predetermined number of pulse positions on the basis of the first and second transform signals and a second group of predetermined number of pulses on the basis of the determined pitch information; a ninth means for selecting one of the pulse groups having smaller distortion by using an excitation codebook; a tenth means for determining a gain code vector using a gain codebook on the basis of the first and second transform signals, and selected pulse group data; an eleventh means for determining an excitation signal on the basis of the gain code vector; a twelfth means for performing inverse-orthogonal transform of the excitation signal and producing as a first inverse-orthogonal signal; and a thirteenth means for outputting a response signal based on the first inverse-orthogonal transform signal, spectrum information and pitch information as the input signal of the third means. According to still other aspect of the present invention, there is provided a speech signal coder comprising: a first means for extracting a spectrum information and pitch information from a frame input speech signal; a second means for determining an impulse response signal of a filter defined by the spectrum information; a third means for determining a response signal of a filter defined by the spectrum information and pitch information with an input signal; a fourth means for producing a difference signal between a perceptually weighted signal of the input speech signal and the response signal; a fifth means which receives the difference signal and has a filter defined by the spectrum information and pitch information; a sixth means for performing an orthogonal transform of the output of the fifth means and producing a first transform signal; a seventh means for performing an orthogonal transform of the impulse response signal and producing a second transform signal; an eighth means for retrieving a first group of a predetermined number of pulse positions on the basis of the first and second transform signals by using an amplitude codebook and a second group of predetermined number of pulses on the basis of the determined pitch information; a ninth means for selecting one of the pulse groups having smaller distortion by using an excitation codebook; a tenth means for determining a gain code vector using a gain codebook on the basis of the first and second transform signals, and selected pulse group data; an eleventh means for determining an excitation signal on the basis of the gain code vector; a twelfth means for performing inverse-orthogonal transform of the excitation signal and producing as a first inverse-orthogonal signal; and a thirteenth means for outputting a response signal based on the first inverse-orthogonal transform signal, spectrum information and pitch information as the input signal of the third means. Other objects and features will be clarified from the following description with reference to attached drawings. Fig. 1 is a block diagram showing a first embodiment of the invention; Fig. 2 is a block diagram showing a second embodiment of the invention; Fig. 3 is a block diagram showing a third embodiment of the invention; Fig. 4 is a block diagram showing a fourth embodiment of the invention; Fig. 5 is a block diagram showing a fifth embodiment of the invention; Fig. 6 is a block diagram showing a sixth embodiment of the invention; Fig. 7 is a block diagram showing a seventh embodiment of the invention; and Fig. 8 is a block diagram showing an eighth embodiment of the invention: Preferred embodiments of the invention will now be described will now be described with reference to the drawings. Fig. 1 is a block diagram showing a first embodiment of the invention. In this embodiment, a divider 12 preliminarily divides speech signal supplied from an input terminal 11 into frames at a predetermined number N of points, and supplies the divided speech signal to a spectral parameter calculator 13, a pitch predictor 17 and a perceptual weight multiplier 16. The LSP calculator 13 cuts out the speech from each frame speech signal by using a window longer than the frame length (for instance 24 ms), and calculates spectral parameters, such as LSP parameters, in number corresponding to a predetermined number P of degrees (for instance 10). The prediction of LSP parameters is performed by well-known means, such as LPC analysis or Burg analysis. In the following, a case of using the Burg analysis will be described. The Burg analysis is described in Nakamizo, "Signal analysis and system identification", Corona Co., Ltd., 1998, pp. 82-87, and is not herein described. The LSP calculator 13 thus determines linear prediction coefficient α i (i = 1, ..., 10) in each frame by the Burg analysis, and supplies the linear prediction coefficients α i to the auditory weight multiplier 16, an impulse response calculator 21, an inverse filter 22 and a response signal calculator 51,and a weighting signal calculator 52. The LSP calculator 13 also converts the linear prediction coefficients α i to LSP (Linear Spectrum Pair) parameter suited for subsequent quantization and interpolation, and supplies the LSP parameters to an LSP parameter quantizer 14. The conversion of linear prediction coefficients α i to LSP parameters is described in Sugamura et al, "Speech data compression by Linear Spectrum Pair (LSP) speech analysis synthesizing system", The Trans. of IECE Japan, J64-A, 1981, pp. 599-606, and not herein described. The LSP parameter quantizer 14 determines the LSP parameter giving the minimum values of distortion D s1 given by the following formula (1) by making retrieval of a codebook 15. where LSP(i), QLSPj(i) and W(i) are i-th LSP parameter before the quantization, i-th result of the quantization and i-th weight coefficient, respectively. Efficient LSP parameter quantization is thus obtainable in each frame. The LSP parameter quantizer 14 decodes the quantized LSP parameter into decoded linear prediction coefficient α i ' (i = 1, ..., P), and supplies this coefficient α i ' to the impulse response calculator 21, the inverse filter 22, the response signal calculator 51 and the weighting signal calculator 52. The LSP parameter quantizer 14 further supplies an index representing a codevector of the quantized LSP parameter to a multiplexer 41. LSP parameter quantization will now be described on the basis of a well-known example of quantizing process. This process is specifically disclosed in, for instance, Japanese Laid-Open Patent Publication No. 4-171500, Japanese Laid-Open Patent Publication No. 4-363000 and Japanese Patent Laid-Open Publication No. 5-6199. As a further reference, T. Nomura et al, "LSP coding using VQ-SVQ with interpolation in 4,075 kbps M-CLELP speech coder", Proc. Mobile Multimedia Communications, pp. B. 2.5, 1993), for instance, may be referred to, and the process is not herein described in details. For input signal x(n), the pitch parameter calculator 17 determines delay time T giving the minimum distortion D T1 in the following formula (2). where x(n-T) is a speech signal at a pitch of the delay T with respect to the input signal X(n). The pitch parameter calculator 17 then determines pitch gain β given by following formula (3) according to the delay T for the quantization. and quantizes the pitch gain β. More specifically, the pitch parameter calculator 17 determines optimum delay T by integral sample value optimization corresponding to the pitch of the input signal x(n), and supplies an index of the optimum delay T to the multiplexer 41. Then the pitch parameter calculator 17 determines the pitch gain β by quantization according to the optimum delay T, and supplies an index of the pitch gain β to the multiplexer 41. The pitch parameter calculator 17 further supplies the delay T and quantized pitch gain β to the impulse response calculator 21, the inverse filter 22, the response signal calculator 51 and weighting signal calculator 52. As an alternative, the pitch parameter calculator 17 may determine the optimum delay T by decimal sample value optimization. In this case, the accuracy of determination of the optimum delay T may be improved with speech signals greatly containing high frequency components such as those of women and children. Details in this connection are described in, for instance, P. Kroon et al, "Pitch calculators with high temporal resolution", Proc. ICASSP, 1990, pp. 661-664, and are not herein described. The impulse response calculator 21 has a filter of transfer function Hi(z) given by the following formula (4). where γ is a weight coefficient for controlling the auditory weight. The impulse response calculator 21 calculates an impulse response of the filter of the transfer function Hi(z) according to the received linear prediction coefficient α i , decoded linear prediction coefficient α i ' obtained by quantizing the linear prediction coefficient α i and the optimum delay T and pitch gain β noted above, and supplies the result to a second orthogonal transform circuit 25. The response signal calculator 51 determines response signal x z (n) according to the introduced linear prediction coefficient α i , decoded linear prediction coefficient α i ' and also the optimum delay T and pitch gain β. More specifically, the response impulse calculator 51 determines, from numerical values preserved in a filter memory, the response signal x z (n) for one frame when the input signal d(n) given by following formula (5) is set to d(n) = 0, and supplies the result to a subtractor 23. When (n-i) ≤ O, the following formulas (6) and (7) are satisfied. y ( n - i ) = p ( N +( n - i )) x z ( n - i )= s w ( N +( n - i )) where N is the frame length, s w (n) is a weight output signal from the weight signal calculator 52, and p(n) is an output signal given by the right side third term of the formula (5). The auditory weighter 16 has a filter of transfer function W(z) given by formula (8). (8) More specifically, the auditory weighter 16 determines auditory weighted difference signal x w (n) given by the formula (8) from each frame speech signal received by filtering thereof with the transfer function W(z), and supplies the result to the subtracter 23. The subtracter 23 obtains auditory weighted subtraction signal x w (n)' from the perceptual weight signal x w (n) according to the received response signal x z (n), and supplies the perceptual weight multiplied subtraction signal x w (n)' to the inverse filter 22. That is, the subtracter 23 subtracts the response signal x z (n) for one frame from the perceptual weight signal x w (n) as shown in following formula (9). x w ( n )' - x w ( n ) - x z ( n ) The inverse filter 22 is a filter having transfer function F 1 (z) given by the following formula (10). More specifically, the inverse filter 22 obtains first inverse filter output signal e,(n) by passing the received perceptual weight multiplied subtraction signal x w (n)', linear prediction coefficient α i , decoded linear prediction coefficient α i ' the optimum delay T and pitch gain β noted above, and supplies the first inverse filter output signal e 1 (n) to a first orthogonal transform circuit 24. The first orthogonal transform circuit 24 executes orthogonal transform of the received first inverse filter output signal e 1 (n). For example, the first orthogonal transform circuit 24 obtains first transform signal E(k) (k = 0, ..., N-1) by the DCT transform, and supplies the first transform signal E(k) to a first pulse quantizer 30 and a first gain quantizer 42. The DCT transform is described in, for instance, J. Tribolet et al, "Frequency domain coding of speech", IEEE Trans. ASSP, Vol. ASSP-27, 1979, pp. 512-530, and not herein described. The second orthogonal transform circuit 25 calculates autocorrelation function r(i) (i = 0, ..., N-1) form the received impulse response, then calculates a second transform signal R(k) (k = 0, ..., N-1) by performing N point DCT transform of the autocorrelation transform r(i), and supplies the result to the first pulse quantizer 30 and first gain quantizer 42. The first pulse quantizer 30 determines a predetermined number of pulse positions minimizing value of distortion D P1 given by the following formula (11) by retrieving the pulse positions on the basis of the first and second transform signals E(k) and R(k). where G is the gain of pulse at each pulse position, m i is m-th pulse position, and γ is the delta function. The first pulse quantizer 30 also supplies the determined pulse positions to the first gain quantizer 42, codes these pulse positions with a predetermined number of bits, and supplies the result to the multiplexer 41. The pulse position index data and the computational effort necessary for the retrieval can be reduced by limiting the pulse positions to be retrieved to a predetermined number of candidates. For example, in the case of limiting the total number N (N = 160) of pulse positions as shown in Table 1 below to M (M = 20) pulse retrieval candidates, the pulse positions can be expressed by three bits, and 20 pulses can be entirely specified with at most 60 bits. The first gain quantizer 42 obtains gain codevectors by performing retrieval of a gain codebook 43, and supplies indexes representing these gain codevectors to an excitation signal calculator 53. Also, the first gain quantizer 42 codes the obtained pulse positions each by a predetermined number of bits, and supplies the vector values of the coded pulse positions to the multiplexer 41. More specifically, the first gain quantizer 42 calculates gain codevectors corresponding to minimum values of distortion D C1 given by formula (12). where G i ' represents j-th codevector. The excitation signal calculator 53 calculates excitation signal V 1 (K) (K = 0, ..., N-1) given by the following formula (13) from gain codevectors. More specifically, the excitation signal calculator 53 reads out the gain codevectors corresponding to the received indexes, then calculates the excitation signal V 1 (K) from the read-out gain codevectors, and supplies the excitation signal V 1 (K) to an inverse orthogonal transform circuit 54. The inverse orthogonal transform circuit 54 obtains inverse transform output signal v(n) by the inverse DCT transform of the excitation signal V 1 (K) for N points, and supplies the inverse transform output signal v(n) to the weight signal calculator 52. The weight signal calculator 52 determines response signal s w (n) from the received inverse transform output signal v(n), linear prediction coefficients α i ,decoded linear prediction coefficient α i ' the optimum delay T and pitch gain β. More specifically, the weight sinal calculator 52 determines the response signal s w (n) for each sub-frame as shown in the following formula (14), and supplies the response signal s w (n) to the response signal calculator 51. Fig. 2 is a block diagram for describing a second embodiment of the invention. This second embodiment is different from the first embodiment in that it comprises a second pulse quantizer 30a, which is used in lieu of the first pulse quantizer 30 in the first embodiment and includes an amplitude codebook 31. The second pulse quantizer 30a is the same as the first pulse quantizer 30 except for that it performs retrieval for pulse positions corresponding to minimum values of D P2 given by the following formula (15). where sign, is the sign of the pulse at i-th pulse position, the sign being preliminarily determined by checking the first transform signal E(K). After the above pulse position retrieval, the second pulse quantizer 30a selects amplitude codevectors corresponding to minimum values of distortion D w2 given by the following formula (16) by performing retrieval of the amplitude codebook 31, and supplies the selected amplitude codevector to the gain quantizer 42. where A ij is j-th amplitude codevector. The second pulse quantizer 30a also codes the obtained pulse positions each by a predetermined number of bits, and supplies the obtained pulse positions to the multiplexer 41. Fig. 3 is a block diagram showing a third embodiment of the invention. The third embodiment is different from the first embodiment in that a second impulse response calculator 21a, a second inverse filter 22a and a second response signal calculator 51a are used in lieu of the first impulse response calculator 21, the first inverse filter 22 and the first response signal calculator 51 in the first embodiment, respectively. In addition, a third pulse quantizer 30 and a second gain quantizer 42a are used in lieu of the first pulse quantizer 30 and the first gain quantizer 42 in the first embodiment, and a selector 32 for selecting the output of the third pulse quantizer 30b is used. In this embodiment, the pitch calculator 17 supplies the optimum delay T and pitch gain β to the third pulse quantizer 30b. The second impulse response calculator 21a is the same as the first impulse response calculator 21 except for that it has a filter of transfer function H 2 (z) given by the following formula (17). More specifically, the second impulse response calculator 21a determines the impulse response by computation with respect to transfer function H 2 (z), and the impulse response to the second orthogonal transform circuit 25. The second inverse filter 22a is the same as the first inverse filter 22 except for that it has a filter of transfer function F 2 (z) given by the following formula (18). More specifically, the second inverse filter 22a obtains a second inverse filter output signal e 2 (n) by inverse filtering of the auditory weighted difference signal with the transfer function F 2 (z), and supplies the second inverse filter output signal e 2 (n) to the first orthogonal transform circuit 24. The third pulse quantizer 30b is the same as the first pulse quantizer 30 except for independently making retrieval of a first pulse group according to the received optimum delay T and pitch gain β and retrieval of a second pulse group like that done by the first pulse quantizer 30. More specifically, the third pulse quantizer 30b obtains pitch frequency f T from the delay T, and multiplies pulses at positions spaced apart by the pitch frequency T by the pitch gain β. The third pulse quantizer 30b retrieves the pulses by repeating these operations. The third pulse quantizer 30b calculates the distortion D P2 of the pulses and determine a predetermined number of pulse positions corresponding to minimum values of the distortion D P2 , thereby forming the first pulse group, and supplies the pulses in the first pulse group together with the corresponding values of the distortion D P2 to the selector 32. The third pulse quantizer 30b also makes retrieval of the pulses without use of the pitch frequency f r and the pitch gain β, obtains the second pulse group by determining a predetermined number of pulses corresponding to minimum values of the distortion D P2 like the first pulse group, and supplies the pulses in the second pulse group together with the corresponding distortion values to the selector 32. The selector 32 selects either the first or the second pulse group in which the distortion D P2 is less, and supplies the selected pulse group to the second gain quantizer 42a. Fig. 4 is a block diagram showing a fourth embodiment of the invention. The fourth embodiment is different from the third embodiment in that a fourth pulse quantizer 30c including an amplitude codebook 31 is used in lieu of the third pulse quantizer 30b in the third embodiment. The fourth pulse quantizer 30c is the same as the third pulse quantizer 30b except for that it uses the amplitude codebook 31 when extracting the first and second pulse groups by the pulse position retrieval. The fourth pulse quantizer 30c can retrieve for optimum amplitude codevectors with the amplitude codebook 31. The selector 32 selects either the first or the second pulse group in which the distortion D P2 is less, and supplies the selected pulse group to the second gain quantizer 42a. Fig. 5 is a block diagram showing a fifth embodiment of the invention. This fifth embodiment is different from the first embodiment in that a fifth pulse quantizer 350d including an excitation codebook 33 and a second gain quantizer 42a including a second gain codebook 44, are used respectively in lieu of the first pulse quantizer 30 and the first gain quantizer 42 in the first embodiment. In the excitation codebook 33 are preliminarily set 2 B different excitation codevectors having a predetermined bit number B, and in the second gain codevector 44 are set two-dimensional gain codevectors. The fifth pulse quantizer 30d is the same as the first pulse quantizer 30 except for that it uses the excitation codebook 33 when extracting a pulse group of a predetermined pulses by making pulse position retrieval. The fifth pulse quantizer 30d can extract optimum excitation codevectors with the excitation codebooks 33. More specifically, the fifth pulse quantizer 30d reads out excitation codevectors from the excitation codebook 33, and selects those corresponding to minimum values of distortion D P5 given by the following equation (19). where c j (K) is excitation codevector, G 1 is the gain of pulse at each pulse position to be retrieved, and G 2 is the gain of the excitation codevector c j (K). The second gain quantizer 42a is the same as the first gain quantizer 42 except for that it makes retrieval of the second gain codebook 44. The second gain quantizer 42a can extract optimum gain codevectors with the second gain codebook 44, and supplies indexes of the extracted codevectors to the excitation signal calculator 52 and the vector values of the codevectors to the multiplexer 41. More specifically, the second gain quantizer 42a reads out gain codevectors from the second gain code book 44, and selects those corresponding to minimum values of distortion D c5 given by the following formula (20). where G 1j and G 2j ' are elements of j-th gain codevector in the second gain codebook. The second gain signal calculator 53a is the same as the first excitation signal calculator 53 except for that it reads out gain codevectors corresponding to the received indexes, obtains excitation signal V 5 (K)according to formula (21), and supplies the excitation signal V 5 (K) to inverse orthogonal transform circuit 54. Fig. 6 is a block diagram showing a sixth embodiment of the invention. This sixth embodiment is different from the fifth embodiment in that a sixth pulse quantizer 30e is used together with an amplitude codebook 31 and an excitation codebook 33 in lieu of the fifth pulse quantizer 30a in the fifth embodiment. The sixth pulse quantizer 30e is the same as the fifth pulse quantizer 30a except for that it makes retrieval of the amplitude codebook 31 when extracting a pulse group of a predetermined pulses by pulse position retrieval. The sixth pulse quantizer 30d can quantize pulse amplitudes with the amplitude codevector 31. The sixth pulse quantizer 30d makes retrieval of the excitation codebook 33, and supplies a group of optimum excitation codevectors to the second gain quantizer 42a and vector values of these codevectors to the multiplexer 41. More specifically, the sixth pulse quantizer 30d reads out excitation codevectors from the excitation codevector 33, and selects those corresponding to minimum values of distortion D w6 given by following formula (22). where A i is i-th amplitude codevector. The second gain quantizer 42a is the same as the first gain quantizer 42 except for that it makes retrieval of the second gain codevector 44. The second gain quantizer 42a can determine optimum gain codevectors corresponding to minimum values of distortion D G6 given by the following formula (23) with the second gain codevector 44, and supplies indexes of the determined codevectors to the second excitation signal calculator 53a and vector values of these codevectors to the multiplexer 41. The second excitation signal calculator 53a is the same as the first excitation signal calculator 53 except for that it obtains excitation signal V 6 (K) by reading out gain codevectors corresponding to the received indexes and supplies the obtained excitation signal V 6 (K) to the inverse orthogonal transform circuit 54. Fig. 7 is a block diagram showing a seventh embodiment of the invention. This seventh embodiment is different from the third embodiment in that a second selector 32a including an excitation codebook 33, a second gain quantizer 42a including a second gain codebook 44 and a second excitation signal calculator 53a are used respectively, in lieu of the first selector 32, the first gain quantizer 42 and the first excitation signal calculator 53 in the third embodiment. The second selector 32a is the same as the first selector 32 except for that it retrieves for sets of pulses and codevectors corresponding to minimum values of distortion D P2 given by formula (25). More specifically, the second selector 32a selects either the first or the second pulse group received in which the distortion D P2 is less, then selects optimum sets, and supplies these sets to the second gain quantizer 42a. Fig. 8 is a block diagram showing an eighth embodiment of the invention. This eighth embodiment is different from the seventh embodiment in that an eighth pulse quantizer 30g is used together with a second selector 32a and an amplitude codebook 31 in lieu of the seventh pulse quantizer 30f in the seventh embodiment. The eighth pulse quantizer 30g is the same as the seventh pulse quantizer 30f except for that it makes retrieval of the amplitude codebook 31 when extracting the first and second pulse groups. The eighth pulse quantizer 30g can obtain optimum amplitude codevectors with the amplitude codebook 31, and supplies the obtained amplitude codevectors together with corresponding values of the distortion D P2 to the second selector 32a. The second selector 32a selects either the first or the second pulse group in which the distortion D P2 is less, and then selects codevectors corresponding to minimum values of distortion D P8 given by following formula (26) by retrieval of the excitation codebook 33 for the selected sets of pulses and amplitude codevectors. The second selector 32a further supplies the selected sets of pulses, amplitude codevectors and excitation codevectors to the second gain quantizer 42a. While in the above embodiments DCT transform was adopted as orthogonal transfer means, it is possible to adopt other transfer means as well, such as well-known MDCT (Modified DCT). In this case, it is possible to simplify the calculations. As a method of bit number allocation in the LSP quantizer, it is also well known to obtain power spectrum by making orthogonal transform of quantized LSP or spectral parameters and use power ratios of sub-divided intervals for the bit number distribution. In this case, the speech quality effectiveness can be improved. Furthermore, while in the above embodiments the pulse quantizers quantize the orthogonal transform coefficients for N points, it is also possible to quantize the orthogonal transform coefficients for M sub-division points concerning the N points. Yet further, in the fourth to eighth embodiments the pulse quantizers may make multiple stage vector quantization when selecting excitation codevectors of pulses by retrieving the excitation codebook. In this case, the calculations can be further simplified. Yet further, in the second, fourth, sixth and eighth embodiments the pulse quantizers may allocate the amplitude codebook bit number according to powers on the frequency axis of speech signal when quantizing the pulse amplitudes by retrieving the amplitude codebook. In this case, it is possible to obtain more effective data reduction. Yet further, it is possible to predict pulse positions frame by frame from the envelope shape of spectrum obtained from the parameter calculator or the impulse response calculator and collectively quantize at least either the sense or the amplitude of pulses. In this case, it is possible to dispense with transfer of data concerning the pulse positions. Further changes and modifications in the details of the above embodiments are possible without departing from the scope of the invention. As has been described in the foregoing, with the signal coder according to the invention the following effects are obtainable. Firstly, orthogonal transform of the speech signal or a signal derived therefrom is performed to quantize the signal partly or entirely for obtaining a plurality of pulses. It is thus possible to reduce data necessary for the transfer of output coefficients. Secondly, of a first pulse group, which is obtained by recurrent retrieval of pulse positions to be quantized by using pitch frequencies extracted from the input signal, and a second pulse group, which is obtained by retrieval without use of the pitch frequencies, either one corresponding to less distortion is selected. It is thus possible to obtain optimum pulse group retrieval on the basis of speech signal characteristics. Thirdly, codevectors read out from the excitation codebook are used together with the pulses obtained by the retrieval as output accompanying quantization. It is thus possible to quantize even speech signal components which cannot be obtained by the sole pulse retrieval and consequently improve the overall speech quality of the quantization output. Since speech signal having high frequency components thus can be quantized with less computational effort, it is possible to realize a signal coder, which can realize low bit rate and excellent speech quality coding. Changes in construction will occur to those skilled in the art and various apparently different modifications and embodiments may be made without departing from the scope of the present invention. The matter set forth in the foregoing description and accompanying drawings is offered by way of illustration only. It is therefore intended that the foregoing description be regarded as illustrative rather than limiting.

Claims: A speech signal coder for coding speech signal comprising: parameter calculating means (13) for calculating spectral and pitch parameters from speech signal and quantizing the calculated parameters; impulse response calculating means (21, 21a) for calculating impulse responses of at least either of the quantized spectral or pitch parameters by using a filter constituted thereby; first orthogonal transform means (24) for obtaining a first transform signal by performing orthogonal transform of the speech signal or a signal derived therefrom using inverse filtering according to the quantized spectral and pitch parameters; second orthogonal transform means (25) for obtaining a second transform signal of the predicted impulse response or a signal derived therefrom; and pulse quantizing means (30, 30a-30g) for quantizing the first transform signal either entirely or partly using the second transform signal. The speech signal coder according to claim 1, wherein the pulse quantizing means (30, 30a-30g) includes a first retrieval unit for performing determination of a first pulse group of a plurality of pulses recurrently according to the pitch parameters, and a second retrieval unit for making determination of a second pulse group according to the second transform signal, the speech signal coder further comprising a selector for selecting either the first or the second pulse group that represent the first transform signal. The speech signal coder according to claim 2, wherein the pulse quantizing means (30, 30a-30g) obtains the plurality of pulses by also using codevectors by retrieval of a codebook. The speech signal coder according to one of claims 1 to 3, wherein the pulse quantizing means simultaneously quantizes the polarity or amplitude of at least one of the plurality of pulses.

Inventors: OZAWA KAZUNORI, OZAWA, KAZUNORI
Applicants: NIPPON ELECTRIC CO, NEC CORPORATION
Application year: 1998
Main classification: G10L19
IPC codes: G10L19, G10L11, H03M7, H04B14