Speech coder.
Abstract
A speech coder includes an LPC analyzer, a difference signal generating section, a first code book, a second code book, and a multiplexer. The LPC analyzer divides an input discrete speech signal into signal components in units of frames each having a predetermined time length, and obtains a spectrum parameter representing a spectrum envelope of the speech signal. The difference signal generating section obtains a difference signal by dividing the frame into subframes each having a predetermined time length, and predicting a pitch parameter representing a long-term correlation on the basis of a past sound source signal. The first code book stores a signal formed beforehand by learning based on the difference signal. The second code book stores a signal having predetermined characteristics or a signal formed beforehand by learning. The multiplexer represents a sound source signal of the speech signal by a linear combination of a signal selected from the first code book in accordance with each obtained difference signal and a signal selected from the second code book, and outputs the combination.

Term
Term ended
Projected expiry passed 20 February 2011, 15.6 years ago.
- Priority
- Filed
- Published
- Projected expiry
- Today
9 claims: 3 independent, 6 dependent
- 1A speech coder characterized by comprising:means (130) for dividing an input discrete speech signal into signal components in units of frames each having a predetermined time length, and obtaining a spectrum parameter representing a spectrum envelope of the speech signal;means (150, 190, 205, 210) for obtaining a difference signal by dividing the frame into subframes each having a predetermined time length, and calculating a pitch parameter representing a long-term correlation on the basis of a past sound source signal;a first code book (235) for storing a signal formed beforehand by learning based on the difference signal;a second code book (275) for storing a signal having predetermined characteristics;and means (240) for representing a sound source signal of the speech signal by a linear combination of a signal selected from said first code book in accordance with each obtained difference signal and a signal selected from said second code book, and outputting the combination.
- 6A speech coder comprising:means (130) for dividing an input discrete speech signal into signal components in units of frames each having a predetermined time length, and obtaining a spectrum parameter representing a spectrum envelope of the speech signal;means (150, 210) for dividing the frame into subframes each having a predetermined time length, and obtaining a pitch parameter so as to approximate a signal reproduced on the basis of a past sound source signal to the speech signal;a first code book (235) for storing a signal formed by learning based on the speech signal;a second code book (275) for storing a signal having predetermined characteristics;means (291) for representing a sound source signal of the speech signal by a linear combination of signals respectively selected from said first and second code books;and means (286) for quantizing a gain of at least one of the pitch parameter and gains of said first and second code books by using a gain code book (287) formed in advance, and outputting the quantized gain.
- 8A speech coder comprising:means (130) for dividing an input discrete speech signal into signal components in units of frames each having a predetermined time length, and obtaining a spectrum parameter representing a spectrum envelope of the speech signal;means (150, 210) for dividing the frame into subframes each having a predetermined time length, and obtaining a delay amount of a pitch parameter so as to approximate a signal reproduced on the basis of a past sound source signal to the speech signal;means (225) for quantizing a gain of the pitch parameter by using a fourth code book formed in advance;a first code book (235) for storing a signal formed by learning based on the speech signal;a second code book (275) for storing a signal having predetermined characteristics;and means (260) for representing a sound source signal of the speech signal by a linear combination of signals respectively selected from said first and second code books, and outputting the linear combination.
Independent claims3
104 paragraphs, as filed
0001The present invention relates to a speech coder for coding a speech signal with high quality at low bit rates, specifically, at about 8 to 4.8 kb/s.
0002As a method of coding a speech signal at a low bit rate of about 8 to 4.8 kb/s, CELP (Code Excited LPC Coding) is known, which is disclosed in, e.g., M. Schroeder and B. Atal, "Code-excited linear prediction: High Quality speech at very low bit rates", ICASSP, pp. 937 - 940, 1985 (reference 1). According to this method, on the transmission side, a spectrum parameter representing the spectrum characteristics of a speech signal is extracted from a speech signal of each frame (e.g., 20 ms). A frame is divided into subframes (e.g., 5 ms), and a pitch parameter representing a long-term correlation (pitch correlation) is extracted from a past sound source signal in units of subframes. Long-term prediction of speech signals in the subframes is performed using the pitch parameter to obtain difference signals. For the difference signal obtained by long-term prediction, one type of noise signal is selected so as to minimize the differential power between the speech signal and a signal synthesized by a signal selected from a code book constituted by predetermined types of noise signals. In addition, an optimal gain is calculated. Subsequently, an index representing the type of selected noise signal and the gain are transmitted together with the spectrum parameter and the pitch parameter. A description on the receiver side will be omitted.
0003As a method of quantizing a spectrum parameter, a scalar quantization method is used in reference 1. A vector quantization method is known as a method which allows more efficient quantization with a smaller amount of bits than the scalar quantization method. With regard to this method, refer to, e.g., Buzo et al., "Speech Coding Based upon Vector Quantization", IEEE Trans ASSP, pp. 562 - 574, 1980 (reference 2). In vector quantization, however, a data base (training data) for a learning procedure is required to form a vector quantization code book in advance. The characteristics of a vector quantizer depend on training data used. For this reason, the performance of the quantizer deteriorates with respect to a signal having characteristics which are not covered by the training data, resulting in a deterioration in speech quality. In order to solve such a problem, a vector/scalar quantization method is proposed, in which an error signal representing the difference between a vector-quantized signal and an input signal is scalar-quantized to combine the merits of the two methods. With regard to vector/scalar quantization, refer to, e.g., Moriya et al., "Adaptive Transform Coding of Speech Using Vector Quantization", Journal of the Institute of Electronics and Communication Engineers of Japan, vol. J. 67-A, pp. 974 - 981, 1984 (reference 3). A description of this method will be omitted.
0004In the conventional method disclosed in reference 1, in order to obtain high speech quality, the bit size of a code book constituted by noise signals must be set to be as large as 10 bits or more. Therefore, an enormous amount of operations is required to search the code book for an optimal noise signal (code word). In addition, since a code book is basically constituted by noise signals, speech reproduced by a code word selected from the code book inevitably includes perceptual noise.
0005Furthermore, in the conventional method in reference 1, since a spectrum parameter is quantized/coded by normal scalar quantization, a large number of bits are required for quantization. For this reason, it is difficult to decrease the bit rate while keeping high speech quality.
0006In the vector quantization method which is more efficient than the scalar quantization method, quantization characteristics depend on training data used for preparing a vector quantization code book. For this reason, the quantization performance deteriorates with respect to a signal having characteristics which are not covered by the training data, resulting in a deterioration in speech quality.
0007In the vector/scalar quantization method disclosed in reference 3, in addition to a code book table for vector quantization, another table is required to store information required for scalar quantization in accordance with the size of a code book for vector quantization. Assume that a 10th-order parameter and an 8-bit vector quantizer are used. The number of tables required for vector quantization is 256 x 10 = 2,560. The number of tables required for scalar quantization is 256 x 10 = 2,560. That is, a total of 5,120 tables are required, and hence a large memory capacity is required to store these tables.
Summary of the Invention
0008It is a principal object of the present invention to provide a speech coder which requires only a small amount of operations.
0009It is another object of the present invention to provide a speed coder which requires only a small memory capacity.
0010It is still another object of the present invention to provide a speech coder which ensures high speech quality.
0011It is still another object of the present invention to provide a speech coder which can eliminate perceptual noise.
0012It is another object of the present invention to provide a speech coder which can decrease a bit rate.
0013In order to achieve the above objects, according to the present invention, there is provided a speech coder characterized by comprising means for dividing an input discrete speech signal into signal components in units of frames each having a predetermined time length, and obtaining a spectrum parameter representing a spectrum envelope of the speech signal, means for obtaining a difference signal by dividing the frame into subframes each having a predetermined time length, and calculating a pitch parameter representing a long-term correlation on the basis of a past sound source signal, a first code book for storing a signal formed beforehand by learning based on the difference signal, a second code book for storing a signal having predetermined characteristics, and means for representing a sound source signal of the speech signal by a linear combination of a signal selected from the first code book in accordance with each obtained difference signal and a signal selected from the second code book, and outputting the combination.
0014A function of the speech coder of the present invention will be described below.
0015According to the present invention, a sound source signal is obtained so as to minimize the following equation in units of subframes obtained by dividing a frame:<maths id="math0001" num=""><img file="EP0443548A2_D0001.tif" /></maths> where β and M are the pitch parameters of pitch prediction (or an adaptive code book) based on long-term correlation, i.e., a gain and a delay, v(n) is the sound source signal in a past subframe, h(n) is the impulse response of a synthetic filter constituted by a spectrum parameter, and w(n) is the impulse response of a perceptual weighting filter. Note that * represents a convolution operation. Refer to reference 1 for a detailed description of w(n).
0016In addition, d(n) represents a sound source signal represented by a code book and is given by a linear combination of a code word c<sub>1j</sub>(n) selected from a first code book and a code word c<sub>2i</sub>(n) selected from a second code book as follows:<maths id="math0002" num=""><img file="EP0443548A2_D0002.tif" /></maths> where γ₁ and γ₂ are the gains of the selected code words c<sub>1j</sub>(n) and c<sub>2i</sub>(n). In the present invention, since a sound source signal is represented by two types of code books, each code book is only required to have bits 1/2 the number of bits of the overall code book. For example, if the number of bits of the overall code book is 10 bits, each of the first and second code books is only required to have 5 bits. This greatly reduces the operation amount required to search the code book.
0017Assume that the noise code book in reference 1 is used as each code book, and the code book is divided in the same manner as indicated by equation (2). It is known, in this case, that a sound source signal obtained by this method deteriorates as compared with a signal obtained by a 10-bit code book in terms of characteristics, and the performance of the overall code book corresponds to only 7 to 8 bits.
0018In the present invention, therefore, in order to obtain high performance, the first code book is prepared by a learning procedure using training data. As a method of preparing a code book by a learning procedure, a method disclosed in Linde et al., "An algorithm for Vector Quantization Design", IEEE Trans. COM-28, pp. 84 - 95, 1980 (reference 4) is known.
0019As a distance scale for a learning procedure, a square distance (Euclidean distance) is normally used. In the method of the present invention, however, a perceptual weighting distance scale represented by the following equation, which allows higher perceptual performance than the square distance, is used:<maths id="math0003" num=""><img file="EP0443548A2_D0003.tif" /></maths> where t<sub>j</sub>(n) is the jth training data, and c₁(n) is a code word in a cluster 1. A centroid s<sub>c1</sub>(n) (representative code) of the cluster 1 is obtained so as to minimize equation (4) or (5) below by using training data in the cluster 1.<maths id="math0004" num=""><img file="EP0443548A2_D0004.tif" /></maths> In equation (5), <u style="single">q</u> is an optimal gain.
0020As the second code book, a code book constituted by noise signals or random number signals whose statistical characteristics are determined in advance, such as Gaussian noise signals in reference 1, or a code book having different characteristics is used to compensate for the dependency of the first code book on training data. Note that a further improvement in characteristics can be ensured by selecting noise signal or random number code books on a certain distance scale. For a detailed description of this method, refer to T. Moriaya et al., "Transform Coding of speech using a Weighted Vector Quantizer", IEEE J. Sel. Areas, Commun., pp. 425 - 431, 1988 (reference 5).
0021Furthermore, in the present invention, the spectrum parameters obtained in units of frames are subjected to vector/scalar quantization. As spectrum parameters, various types of parameters, e.g., LPC, PARCOR, and LSP, are known. In the following case, LSP (Line Spectrum Pair) is used as an example. For a detailed description of LSP, refer to Sugamura et al., "Quantizer Design in LSP Speech Analysis-Synthesis", IEEE J. Sel. Areas, Commun., pp. 432 - 440, 1988 (reference 6). In vector/scalar quantization, an LSP coefficient is vector-quantized first. A vector quantizer for LSP prepares a vector quantization code book by performing a learning procedure with respect to LSP training data using the method in reference 4. Subsequently, in vector quantization, a code word which minimizes the distortion of the following equation is selected from the code book:<maths id="math0005" num=""><img file="EP0443548A2_D0005.tif" /></maths> where p(i) is the ith LSP coefficient obtained by analyzing a speech signal in a frame, L is the LSP analysis order, q<sub>j</sub>(i) is the ith coefficient of the code word, and B is the number of bits of the code book. Although a square distance is used as a distance scale in the above equation, another proper distance scale may be used.
0022A vector-quantized difference signal is then obtained by using the selected code word q<sub>j</sub>(i) according to the following equation: <maths id="math0006" num=""><math display="inline"><mrow><mtext mathvariant="italic">e</mtext><mtext>(</mtext><mtext mathvariant="italic">i</mtext><mtext>) = </mtext><mtext mathvariant="italic">p</mtext><mtext>(</mtext><mtext mathvariant="italic">i</mtext><mtext>) - </mtext><msub><mrow><mtext mathvariant="italic">q</mtext></mrow><mrow><mtext mathvariant="italic">j</mtext></mrow></msub><mtext>(</mtext><mtext mathvariant="italic">i</mtext><mtext>) (</mtext><mtext mathvariant="italic">i</mtext><mtext> = 1 ∼ </mtext><mtext mathvariant="italic">L</mtext><mtext>) (7)</mtext></mrow></math><img file="EP0443548A2_D0006.tif" /></maths>
0023The difference signal e(i) is scalar-quantized by scalar quantization. In the design of a scalar quantizer, the statistic distribution of e(i) of a large amount of signals e(i) is measured for every order <u style="single">i</u> so as to determine the maximum and minimum values of the quantization range of the quantizer for each order. For example, a 1% point and a 99% point of the statistic distribution of e(i) are measured so that the measurement values are set to be the maximum and minimum values of the quantizer. With this operation, in scalar quantization, if the order of LSP is represented by L, only L x 2 tables are required. Since the order L is normally set to be about 10, only 20 tables are required.
0024In addition, according to the present invention, an improvement in characteristics is realized by searching the first and second code books while adjusting at least one gain, or optimizing the two gains upon determination of code words of the two code books.
0025Assume that the first and second code books are searched while their gains are adjusted. More specifically, code words of the first code book are determined, and the second code book is searched while the following equation is minimized for each code word:<maths id="math0007" num=""><img file="EP0443548A2_D0007.tif" /></maths> where γ₁ and γ₂ are the gains of the first and second code books, and c<sub>1j</sub>(n) and c<sub>2i</sub>(n) are code words selected from the first and second code books. All the values of c<sub>2i</sub>(n) in equation (8) are calculated to obtain the code word c<sub>2i</sub>(n) which minimizes error power E and to obtain the gains γ₁ and γ₂ at the same time.
0026These calculations can be performed by using the Gram-Schmidt orthogonalization process.
0027The operation amount can be reduced in the following manner. Instead of calculating equation (8) in code word search, the optimal gains γ₁ and γ₂ are obtained by independently determining the code words of the first and second code books and solving equation (8) for only the determined code words c<sub>1j</sub>(n) and c<sub>2i</sub>(n).
0028In addition, according to the present invention, after optimal code words are selected from the first and second code books, the gains γ₁ and γ₂ of the first and second code books are efficiently vector-quantized by using a gain code book prepared by learning procedure. In vector quantization, when optimal code words are to be searched out, a code word which minimizes the following equation is selected:<maths id="math0008" num=""><img file="EP0443548A2_D0008.tif" /></maths> where γ₁ is the vector-quantized gain represented by each code word, and c<sub>i</sub>(n) is a code word selected from each of the first and second code books. If the following equations is established on the basis of equation (9): <maths id="math0009" num=""><math display="inline"><mrow><msub><mrow><mtext mathvariant="italic">e</mtext></mrow><mrow><mtext mathvariant="italic">w</mtext></mrow></msub><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext>) = </mtext><mtext mathvariant="italic">x</mtext><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext>)*</mtext><mtext mathvariant="italic">w</mtext><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext>) - </mtext><mtext mathvariant="italic">βv</mtext><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext> - </mtext><mtext mathvariant="italic">M</mtext><mtext>)*</mtext><mtext mathvariant="italic">h</mtext><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext>)*</mtext><mtext mathvariant="italic">w</mtext><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext>) (10)</mtext></mrow></math><img file="EP0443548A2_D0009.tif" /></maths> then, the following equation is obtained from equations (9) and (10):<maths id="math0010" num=""><img file="EP0443548A2_D0010.tif" /></maths> In this case, <maths id="math0011" num=""><math display="inline"><mrow><msub><mrow><mtext mathvariant="italic">s</mtext></mrow><mrow><mtext mathvariant="italic">w1</mtext></mrow></msub><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext>) </mtext><mtext mathvariant="italic">= c₁</mtext><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext>)</mtext><mtext mathvariant="italic">*h</mtext><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext>)</mtext><mtext mathvariant="italic">*w</mtext><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext>) </mtext><mtext mathvariant="italic">= C₁</mtext><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext>)</mtext><msub><mrow><mtext mathvariant="italic">*h</mtext></mrow><mrow><mtext mathvariant="italic">w</mtext></mrow></msub><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext>) (12)</mtext></mrow></math><img file="EP0443548A2_D0011.tif" /></maths><maths id="math0012" num=""><math display="inline"><mrow><msub><mrow><mtext mathvariant="italic">s</mtext></mrow><mrow><mtext mathvariant="italic">w2</mtext></mrow></msub><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext>) </mtext><mtext mathvariant="italic">= C₂</mtext><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext>)*</mtext><mtext mathvariant="italic">h</mtext><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext>)*</mtext><mtext mathvariant="italic">w</mtext><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext>) </mtext><mtext mathvariant="italic">= C₂</mtext><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext>)*</mtext><msub><mrow><mtext mathvariant="italic">h</mtext></mrow><mrow><mtext mathvariant="italic">w</mtext></mrow></msub><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext>) (13)</mtext></mrow></math><img file="EP0443548A2_D0012.tif" /></maths> Since the first term of equation (11) is a constant, a code word which maximizes the second and subsequent terms is selected in code word search.
0029In addition, in order to greatly reduce the operation amount required for code book search, a code word may be selected according to the following equation:<maths id="math0013" num=""><img file="EP0443548A2_D0013.tif" /></maths> where a code book for vector-quantizing a gain is prepared by a training procedure using training data constituted by a large amount of values. The learning procedure for a code book may be performed by the method in reference 4. In this case, a square distance is normally used as a distance scale in learning. However, for a further improvement in characteristics, a distance scale represented by the following equation may be used:<maths id="math0014" num=""><img file="EP0443548A2_D0014.tif" /></maths> where γ<sub>ti</sub> is gain data for a training procedure, and γ'<sub>i1</sub> is a representative code word in the cluster 1 of the gain code book. If the distance scale represented by equation (15) is used, a centroid Sc<sub>1i</sub> in the cluster 1 is obtained so as to minimize the following equation:<maths id="math0015" num=""><img file="EP0443548A2_D0015.tif" /></maths>
0030On the other hand, in order to greatly reduce the operation amount in learning, a distance scale represented by the following equation, which is based on a normal square distance, may be used:<maths id="math0016" num=""><img file="EP0443548A2_D0016.tif" /></maths>
0031Moreover, the present invention is characterized in that the gain of a pitch parameter of pitch prediction (adaptive code book) is vector-quantized by using a code book formed beforehand by learning. If the order of pitch prediction is one, vector quantization of a gain is performed by selecting a code word which minimizes the following equation after determining a delay amount M of a pitch parameter:<maths id="math0017" num=""><img file="EP0443548A2_D0017.tif" /></maths> A distance scale in a learning procedure for a code book is given by the following equation:<maths id="math0018" num=""><img file="EP0443548A2_D0018.tif" /></maths> where β<sub>t</sub> is gain data for code book training. Note that the operation amount can also be reduced by using the following equation: <maths id="math0019" num=""><math display="inline"><mrow><mtext mathvariant="italic">E</mtext><msub><mrow><mtext> = {β</mtext></mrow><mrow><mtext mathvariant="italic">t</mtext></mrow></msub><mtext> - β'₁}² (21)</mtext></mrow></math><img file="EP0443548A2_D0019.tif" /></maths>
Brief Description of the Drawings
0032<ul id="ul0001" list-style="none"><li>Fig. 1 is a block diagram showing a speech coder according to an embodiment of the present invention;</li><li>Fig. 2 is a block diagram showing an arrangement of a code book search circuit of the speech coder in Fig. 1;</li><li>Fig. 3 is a block diagram showing a speech coder according to another embodiment of the present invention;</li><li>Fig. 4 is a block diagram showing an arrangement of an LSP quantizer of the speech coder in Fig. 3;</li><li>Fig. 5 is a block diagram showing a speech coder according to still another embodiment of the present invention;</li><li>Fig. 6 is a block diagram showing an arrangement of a gain quantizer according to the present invention; and</li><li>Fig. 7 is a block diagram showing a speech coder according to still another embodiment of the present invention.</li></ul>
Description of the Preferred Embodiments
0033Fig. 1 shows a speech coder according to an embodiment of the present invention.
0034Referring to Fig. 1, on the transmission side, a speech signal is input from an input terminal 100, and a one-frame (e.g., 20 ms) speech signal is stored in a buffer memory 110.
0035An LPC analyzer 130 performs known LPC analysis of an LSP parameter as a parameter representing the spectrum characteristics of a speech signal in a frame on the basis of the speech signal in the above-mentioned frame so as to perform calculations by an amount corresponding to predetermined order L. For a detailed description of this method, refer to reference 6. Subsequently, an LSP quantizer 140 quantizes the LSP parameter with a predetermined number of quantization bits, and outputs an obtained code 1<sub>k</sub> to a multiplexer 260. At the same time, the LSP quantizer 140 decodes this code to convert it into a linear prediction coefficient a'<sub>i</sub> (i = 1 <sup>∼</sup> L) and outputs it to a weighting circuit 200, an impulse response calculator 170, and a synthetic filter 281. With regard to the methods of coding an LSP parameter and converting it into a linear prediction coefficient, refer to reference 6.
0036A subframe divider 150 divides a speech signal in a frame into signal components in units of subframes. Assume, in this case, that the frame length is 20 ms, and the subframe length is 5 ms.
0037A subtractor 190 subtracts an output, supplied from the synthetic filter 281, from a signal component obtained by dividing the input signal in units of subframes, and outputs the resultant value.
0038The weighting circuit 200 performs a known perceptual weighting operation with respect to the signal obtained by subtraction. For a detailed description of a perceptual weighting function, refer to reference 1.
0039An adaptive code book 210 receives an input signal v(n), which is input to the synthetic filter 281, through a delay circuit 206. In addition, the adaptive code book 210 receives a weighted impulse response h<sub>w</sub>(n) and a weighted signal from the impulse response calculator 170 and the weighting circuit 200, respectively, to perform pitch prediction based on long-term correlation, thus calculating a delay M and a gain β as pitch parameters. In the following description, the prediction order of the adaptive code book is set to be 1. However, a second or higher prediction order may be set. A method of calculating the delay m and the gain β in an adaptive code book of first order is disclosed in Kleijin et al., "Improved speech quality and efficient vector quantization in SELP", ICASSP, pp. 155 - 158, 1988 (reference 7), and hence a description thereof will be omitted. Furthermore, the obtained gain β is quantized/decoded with a predetermined number of quantization bits to obtain a gain β' by using a quantizer 220. A prediction signal x̂<sub>w</sub>(n) is then calculated by using the obtained gain β' according to the following equation and is output to a subtractor 205, while the delay M is output to the multiplexer 260:<maths id="math0020" num=""><img file="EP0443548A2_D0020.tif" /></maths> where v(n -M) is the input signal to the synthetic filter 281, and h<sub>w</sub>(n) is the weighted impulse response obtained by the impulse response calculator 170.
0040The delay circuit 206 outputs the input signal v(n), which is input to the synthetic filter 281, to the adaptive code book 210 with a delay corresponding to one subframe.
0041The quantizer 220 quantizes the gain β of the adaptive code book with a predetermined number of quantization bits, and outputs the quantized value to the multiplexer 260 and to the adaptive code book 210 as well.
0042The subtractor 205 subtracts the output x̂<sub>w</sub>(n), which is output from the adaptive code book 210, from an output signal from the weighting circuit 200 according to the following equation, and outputs a resulting difference signal e<sub>w</sub>(n) to a first code book search circuit 230:<maths id="math0021" num=""><img file="EP0443548A2_D0021.tif" /></maths> The impulse response calculator 170 calculates the perceptual-weighted impulse response h<sub>w</sub>(n) of the synthetic filter by an amount corresponding to a predetermined sample count Q. For a detailed description of this calculation method, refer to reference 1 and the like.
0043The first code book search circuit 230 searches for an optimal code word c<sub>1j</sub>(n) and an optimal gain γ₁ by using a first code book 235. As described earlier, the first code book is prepared by a learning procedure using training signals.
0044Fig. 2 shows the first code book search circuit 230. A search for a code word is performed in accordance with the following equation:<maths id="math0022" num=""><img file="EP0443548A2_D0022.tif" /></maths> A value γ₁ which minimizes equation (24) is obtained by using the following equation obtained by partially differentiating equation (24) with γ₁ and substituting the zero therein: <maths id="math0023" num=""><math display="inline"><mrow><mtext>γ₁ = </mtext><mtext mathvariant="italic">Gj</mtext><mtext>/</mtext><mtext mathvariant="italic">Cj</mtext><mtext> (25)</mtext></mrow></math><img file="EP0443548A2_D0023.tif" /></maths> for<maths id="math0024" num=""><img file="EP0443548A2_D0024.tif" /></maths> Therefore, equation (24) is rewritten as:<maths id="math0025" num=""><img file="EP0443548A2_D0025.tif" /></maths> In this case, since the first term of equation (28) is a constant, a code word c<sub>1j</sub>(n) is selected from the code book so as to maximize the second term.
0045Referring to Fig. 2, a cross-correlation function calculator 410 calculates equation (26), an auto-correlation function calculator 420 calculates equation (27), and a discriminating circuit 430 calculates equation (28) to select the code word c<sub>1j</sub>(n) and output an index representing it. The discriminating circuit 430 also outputs the gain γ₁ obtained from equation (25).
0046In addition, the following method may be used to reduce the operation amount required to search the code book:<maths id="math0026" num=""><img file="EP0443548A2_D0026.tif" /></maths> for<maths id="math0027" num=""><img file="EP0443548A2_D0027.tif" /></maths> where µ(i) and v<sub>j</sub>(i) are respectively auto-correlation functions delayed by an order <u style="single">i</u> from the weighted impulse response h<sub>w</sub>(n) and from the code word c<sub>1j</sub>(n).
0047An index representing the code word obtained by the above method, and the gain γ₁ are respectively output to the multiplexer 260 and a quantizer 240. In addition, the selected code word c<sub>j</sub>(n) is output to a multiplier 241.
0048The quantizer 240 quantizes the gain γ₁ with a predetermined number of bits to obtain a code, and outputs the code to the multiplexer 260. At the same time, the quantizer 240 outputs a quantized decoded value γ'₁ to the multiplier 241.
0049The multiplier 241 multiplies the code word c<sub>1j</sub>(n) by the gain γ'₁ according to the following equation to obtain a sound source signal q(n), and outputs it to an adder 290 and a synthetic filter 250: <maths id="math0028" num=""><math display="inline"><mrow><munder accentunder="true"><mrow><mtext mathvariant="italic">q</mtext></mrow><mo>̲</mo></munder><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext>) =</mtext><msub><mrow><mtext mathvariant="italic">γ'₁c</mtext></mrow><mrow><mtext>1</mtext></mrow></msub><msub><mrow><mtext></mtext></mrow><mrow><mtext mathvariant="italic">j</mtext></mrow></msub><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext>) (32)</mtext></mrow></math><img file="EP0443548A2_D0028.tif" /></maths>
0050The synthetic filter 250 receives the output q(n) from the multiplier 241, obtains a weighted synthesized signal y<sub>w</sub>(n) according to the following equation, and outputs it: <maths id="math0029" num=""><math display="inline"><mrow><msub><mrow><mtext mathvariant="italic">y</mtext></mrow><mrow><mtext mathvariant="italic">w</mtext></mrow></msub><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext>) = </mtext><munder accentunder="true"><mrow><mtext mathvariant="italic">q</mtext></mrow><mo>̲</mo></munder><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext>)*</mtext><msub><mrow><mtext mathvariant="italic">h</mtext></mrow><mrow><mtext mathvariant="italic">w</mtext></mrow></msub><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext>) (33)</mtext></mrow></math><img file="EP0443548A2_D0029.tif" /></maths>
0051A subtractor 255 subtracts y<sub>w</sub>(n) from e<sub>w</sub>(n) and outputs the result to a second code book search circuit 270.
0052The second code book search circuit 270 selects an optimal code word from a second code book 275 and calculates an optimal gain γ₂. The second code book search circuit 270 may be constituted by essentially the same arrangement of the first code book search circuit shown in Fig. 2. In addition, the same code word search method used for the first code book can be used for the second code book. As the second code book, a code book constituted by a random number series is used to compensate for the training data dependency while keeping the high efficiency of the code book formed by a learning procedure, which is described earlier herein. With regard to a method of forming the code book constituted by a random number series, refer to reference 1.
0053In addition, in order to reduce the operation amount for a search operation of the second code book, a random number code book having an overlap arrangement may be used as the second code book. With regard to methods of forming an overlap type random number code book and searching the code book, refer to reference 7.
0054A quantizer 285 performs the same operation as that performed by the quantizer 240 so as to quantize the gain γ₂ with a predetermined number of quantization bits and to output it to the multiplexer 260. In addition, the quantizer 285 outputs a coded/decoded value γ'₂ of the gain to a multiplier 242.
0055The multiplier 242 performs the same operation as that performed by the multiplier 241 so as to multiply a code word c<sub>2i</sub>(n), selected from the second code book, by the gain γ'₂ , and outputs it to the adder 290.
0056The adder 290 adds the output signals from the adaptive code book 210 and the multipliers 241 and 242, and outputs the addition result to a synthetic filter 281 and the delay circuit 206. <maths id="math0030" num=""><math display="inline"><mrow><mtext mathvariant="italic">v</mtext><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext>) =</mtext><msub><mrow><mtext mathvariant="italic">γ'₁c</mtext></mrow><mrow><mtext>1</mtext></mrow></msub><msub><mrow><mtext></mtext></mrow><mrow><mtext mathvariant="italic">j</mtext></mrow></msub><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext>) +</mtext><msub><mrow><mtext mathvariant="italic">γ'₂C</mtext></mrow><mrow><mtext>2</mtext></mrow></msub><msub><mrow><mtext></mtext></mrow><mrow><mtext mathvariant="italic">i</mtext></mrow></msub><mtext>(</mtext><mtext mathvariant="italic">n</mtext><msub><mrow><mtext>) + β'</mtext></mrow><mrow><mtext mathvariant="italic">j</mtext></mrow></msub><mtext mathvariant="italic">v</mtext><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext> - </mtext><mtext mathvariant="italic">M</mtext><mtext>) (34)</mtext></mrow></math><img file="EP0443548A2_D0030.tif" /></maths>
0057The synthetic filter 281 receives an output v(n) from the adder 290, and obtains a one-frame (N point) synthesized speech component according to the following equation. Upon reception of a 0 series of another one-frame speech component, the filter 281 further obtains a response signal series, and outputs a response signal series corresponding to one frame to the subtractor 190.<maths id="math0031" num=""><img file="EP0443548A2_D0031.tif" /></maths> for<maths id="math0032" num=""><img file="EP0443548A2_D0032.tif" /></maths>
0058The multiplexer 260 outputs a combination of output code series from the LSP quantizer 140, the first code book search circuit 230, the second code book search circuit 270, the quantizer 240, and the quantizer 285.
0059Fig. 3 shows another embodiment of the present invention. Since the same reference numerals in Fig. 3 denote the same parts as in Fig. 1, and they perform the same operations, a description thereof will be omitted.
0060Since an LSP quantizer 300 is a characteristic feature of this embodiment, the following description will be mainly associated with the LSP quantizer 300.
0061Fig. 4 shows an arrangement of the LSP quantizer 300. Referring to Fig 4, an LSP converter 305 converts an input LPC coefficient a<sub>i</sub> into an LSP coefficient. For a detailed description of a method of converting an LPC coefficient into an LSP coefficient, refer to, e.g., reference 6.
0062A vector quantizer 310 vector-quantizes the input LSP coefficient according to equation (6). In this case, a code book 320 is formed beforehand by a learning procedure using a large amount of LSP data. For a detailed description of a learning method, refer to, e.g., reference 4. The vector quantizer 310 outputs an index representing a selected code word to a multiplexer 260, and outputs a vector-quantized LSP coefficient q<sub>j</sub>(i) to a subtractor 325 and an adder 335.
0063The subtractor 325 subtracts the vector-quantized LSP coefficient q<sub>j</sub>(i), as the output from the vector quantizer 310, from the input LSP coefficient p(i), and outputs a difference signal e(i) to a scalar quantizer 330.
0064The scalar quantizer 330 obtains the statistical distribution of a large number of difference signals in advance so as to determine a quantization range, as previously described with reference to the function of the present invention. For example, a 1% frequency point and a 99% frequency point in the statistic distribution of difference signals are measured for each order of a difference signal, and the measured frequency points are set as the lower and upper limits of quantization. A difference signal is then uniformly quantized between the lower and upper limits by a uniform quantizer. Alternatively, the variance of e(i) is checked for each order so that quantization is performed by a scalar quantizer having a predetermined statistic distribution, e.g., a Gaussian distribution.
0065In addition, the range of scalar quantization is limited in the following manner to prevent a synthetic filter from becoming unstable when the sequence of LSP coefficients is reversed upon scalar quantization.
0066If <maths id="math0033" num=""><img file="EP0443548A2_D0033.tif" /></maths> , scalar quantization is performed by setting the 99% point and the 1% point of e(i - 1) to be the maximum and minimum values of a quantization range.
0067If <maths id="math0034" num=""><img file="EP0443548A2_D0034.tif" /></maths>, scalar quantization is performed by setting <maths id="math0035" num=""><math display="inline"><mrow><msub><mrow><mtext>{LSP'(i) - q</mtext></mrow><mrow><mtext>j</mtext></mrow></msub><mtext>(i)}</mtext></mrow></math><img file="EP0443548A2_D0035.tif" /></maths> to be the maximum value of a quantization range.
0068The scalar quantizer 330 outputs a code obtained by quantizing a difference signal, and outputs a quantized/decoded value e'(i) to the adder 335.
0069The adder 335 adds the vector-quantized coefficient q<sub>j</sub>(i) and the scalar-quantized/decoded value e'(i) according to the following equation, thus obtaining and outputting a quantized/decoded LSP value LSP'(i): <maths id="math0036" num=""><math display="inline"><mrow><mtext mathvariant="italic">LSP'</mtext><mtext>(</mtext><mtext mathvariant="italic">i</mtext><mtext>) = </mtext><munder accentunder="true"><mrow><mtext mathvariant="italic">q</mtext></mrow><mo>̲</mo></munder><msub><mrow><mtext></mtext></mrow><mrow><mtext mathvariant="italic">j</mtext></mrow></msub><mtext>(</mtext><mtext mathvariant="italic">i</mtext><mtext>) + </mtext><mtext mathvariant="italic">e</mtext><mtext>'(</mtext><mtext mathvariant="italic">i</mtext><mtext>) (</mtext><mtext mathvariant="italic">i</mtext><mtext> = 1 ∼ </mtext><mtext mathvariant="italic">L</mtext><mtext>) (37)</mtext></mrow></math><img file="EP0443548A2_D0036.tif" /></maths>
0070A converter 340 converts the quantized/decoded LSP into a linear prediction coefficient a'<sub>i</sub> by using a known method, and outputs it.
0071In the above embodiments, the gain of the adaptive code book and the gains of the first and second code books are not simultaneously optimized. In the following embodiment, however, simultaneous optimization is performed for the gains of adaptive code book and of first and second code books to further improve the characteristics. As described with reference to the function of the present invention, if this simultaneous optimization is applied to obtain code words of the first and second code books, an improvement in characteristics can be realized.
0072For example, when a code word c<sub>1j</sub>(n) and a gain γ₁ are to be searched out after a delay and a gain β of the adaptive code book are obtained, β and γ₁ are simultaneously optimized in units of code words by solving the following equation so as to minimize it:<maths id="math0037" num=""><img file="EP0443548A2_D0037.tif" /></maths> Then,<maths id="math0038" num=""><img file="EP0443548A2_D0038.tif" /></maths> In this case,<maths id="math0039" num=""><img file="EP0443548A2_D0039.tif" /></maths>
0073When the second code word is to be determined, the gains of the adaptive code book and of the first and second code books are simultaneously optimized to minimize the following equation:<maths id="math0040" num=""><img file="EP0443548A2_D0040.tif" /></maths>
0074In order to reduce the operation amount, gain optimization may be performed by using equation (39) when the first code book is searched for a code word, so that no optimization need be performed in a search operation with respect to the second code book.
0075The operation amount can be further reduced in the following manner. When a code book is searched for a code word, no gain optimization is performed. When a code word is selected from the first code book, the gains of the adaptive code book and the first code book are simultaneously optimized. When a code word is selected from the second code book, the gains of the adaptive code book and of the first and second code books are simultaneously optimized.
0076In order to further reduce the operation amount, the three types of gains, i.e., the gain β of the adaptive code book and the gains γ₁ and γ₂ of the first and second code books, may be simultaneously optimized after code words are selected from the first and second code books.
0077A known method other than the method in each embodiment described above may be used to search the first code book. For example, the method described in reference 1 may be used. In another method, an orthogonal conversion value c₁(k) of each code word c<sub>1j</sub>(n) of a code book is obtained and stored in advance, and orthogonal conversion values H<sub>w</sub>(k) of the weighted impulse responses h<sub>w</sub>(n) and orthogonal conversion values E<sub>w</sub>(k) of the difference signals e<sub>w</sub>(n) are obtained by an amount corresponding to a predetermined number of points in units of subframes, so that the following equations are respectively used in place of equations (26) and (27): <maths id="math0041" num=""><math display="inline"><mrow><msub><mrow><mtext mathvariant="italic">G</mtext></mrow><mrow><mtext mathvariant="italic">j</mtext></mrow></msub><mtext>(</mtext><mtext mathvariant="italic">k</mtext><mtext>) = </mtext><msub><mrow><mtext mathvariant="italic">E</mtext></mrow><mrow><mtext mathvariant="italic">w</mtext></mrow></msub><mtext>(</mtext><mtext mathvariant="italic">k</mtext><mtext>){</mtext><msub><mrow><mtext mathvariant="italic">C</mtext></mrow><mrow><mtext>1</mtext></mrow></msub><msub><mrow><mtext></mtext></mrow><mrow><mtext mathvariant="italic">j</mtext></mrow></msub><mtext>(</mtext><mtext mathvariant="italic">k</mtext><mtext>)</mtext><msub><mrow><mtext mathvariant="italic">H</mtext></mrow><mrow><mtext mathvariant="italic">w</mtext></mrow></msub><mtext>(</mtext><mtext mathvariant="italic">k</mtext><mtext>)} (0 </mtext><mtext mathvariant="italic">≦ k ≦ N-</mtext><mtext>1) (42)</mtext></mrow></math><img file="EP0443548A2_D0041.tif" /></maths><maths id="math0042" num=""><math display="inline"><mrow><msub><mrow><mtext mathvariant="italic">C</mtext></mrow><mrow><mtext mathvariant="italic">j</mtext></mrow></msub><mtext>(</mtext><mtext mathvariant="italic">k</mtext><mtext>) = {</mtext><msub><mrow><mtext mathvariant="italic">C</mtext></mrow><mrow><mtext>1</mtext></mrow></msub><msub><mrow><mtext></mtext></mrow><mrow><mtext mathvariant="italic">j</mtext></mrow></msub><mtext>(</mtext><mtext mathvariant="italic">k</mtext><mtext>)</mtext><msub><mrow><mtext mathvariant="italic">H</mtext></mrow><mrow><mtext mathvariant="italic">w</mtext></mrow></msub><mtext>(</mtext><mtext mathvariant="italic">k</mtext><mtext>)}² (0 </mtext><mtext mathvariant="italic">≦ k ≦ N-</mtext><mtext>1) (43)</mtext></mrow></math><img file="EP0443548A2_D0042.tif" /></maths> Equations (42) and (43) are then subjected to reverse orthogonal conversion to calculate a cross-correlation function G<sub>j</sub> and an auto-correlation function C<sub>j</sub>, and a search for a code word and calculations of gains are performed according to equations (28) and (25). According to this method, since the convolution operations in equations (26) and (27) can be replaced with multiplication operations on the frequency axis, the operation amount can be reduced.
0078As a method of searching the second code book, a method other than the method in each embodiment described above, e.g., the method described above, the method in reference 7, or one of other known methods may be used.
0079As a method of forming the second code book, a method other than the method in each embodiment described above may be used. For example, an enormous amount of random number series are prepared as a code book, and a search for random number series is performed with respect to training data by using the random number series. Subsequently, code words are sequentially registered in the order of decreasing frequencies at which they are selected or in the order of increasing error power with respect to the training data, thus forming the second code book. Note that this forming method can be used to form the first code book.
0080As another method, the second code book can be constructed by learning the code book in advance, using the signal which is output from the subtractor 255.
0081In each embodiment described above, the adaptive code book of the first order is used. However, an adaptive code book of the second or higher order may be used. Alternatively, fractional delays may be set instead of integral delays while the first order of the code book is kept unchanged. For a detailed description of these arrangements, refer to, e.g., Marques et al., "Pitch Prediction with Fractional Delays in CELP Coding", EUROSPEECH, pp. 509 - 513, 1989 (reference 8). With the above-describe arrangements, an improvement in characteristics can be realized. However, the amount of information required for the transmission of gains or delays is slightly increased.
0082Furthermore, in each embodiment described above, K parameters and LSP parameters as spectrum parameters are coded, and LPC analysis is used as the method of analyzing these parameters. However, other known parameters, e.g., an LPC cepstrum, a cepstrum, an improved cepstrum, a general cepstrum, and a melcepstrum may be used. An optimal analysis method for each parameter may be used.
0083LPC coefficients obtained in a frame may be interpolated in units of subframes so that an adaptive code book and first and second code books are searched by using the interpolated coefficients. With this arrangement, the speech quality can be further improved.
0084In order to reduce the operation amount, calculations of influential signals may be omitted on the transmission side. With this omission, the synthetic filter 281 and the subtractor 190 can be omitted, thus allowing a reduction in operation amount. In this case, however, the speech quality is slightly degraded.
0085Furthermore, in order to reduce the operation amount, the weighting circuit 200 may be arranged in front of the subframe divider 150 or in front of the subtractor 190, and the synthetic filter 281 may be designed to calculate a weighted synthesized signal according to the following equation:<maths id="math0043" num=""><img file="EP0443548A2_D0043.tif" /></maths> where γ is the weighting coefficient for determining the degree of perceptual weighting.
0086Moreover, an adaptive post filter which is operated in response to at least a pitch or a spectrum envelope may be additionally arranged on the receiver side so as to perceptually improve speech quality by shaping quantization noise. With regard to an arrangement of an adaptive post filter, refer to, e.g., Kroon et al., "A Class of Analysis-by-synthesis Predictive Coders for High Quality Speech Coding at Rates between 4.8 and 16 kb/s", IEEE JSAC, vol. 6, 2, 353 - 363, 1988 (reference 9).
0087As is well known in the field of digital signal processing, since an auto-correlation function and a cross-correlation function respectively correspond to a power spectrum and a cross power spectrum on the frequency axis, they can be calculated from these spectra. With regard to a method of calculating these functions, refer to Oppenheim et al., "Digital Signal Processing", Prentice-Hall, 1975 (reference 10).
0088Fig. 5 shows a speech coder according to still another embodiment of the present invention. Since the same reference numerals in Fig. 5 denote the same parts as in Fig. 1, and they perform the same operations, a description thereof will be omitted.
0089An adaptive code book 210 calculates a prediction signal x̂(n) by using an obtained gain β according to the following equation and outputs it to a subtractor 205. In addition, the adaptive code book 210 outputs a delay M to a multiplexer 260.<maths id="math0044" num=""><img file="EP0443548A2_D0044.tif" /></maths> where v(n - M) is the input signal to a synthetic filter 281, and h<sub>w</sub>(n) is the weighted impulse response obtained by an impulse response calculator 170.
0090A multiplier 241 multiplies a code word c<sub>j</sub>(n) by a gain γ₁ according to the following equation to obtain a sound source signal q(n), and outputs the signal to a synthetic filter 250. <maths id="math0045" num=""><math display="inline"><mrow><mtext mathvariant="italic">q</mtext><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext>) = γ₁</mtext><msub><mrow><mtext mathvariant="italic">c</mtext></mrow><mrow><mtext mathvariant="italic">j</mtext></mrow></msub><mtext>(</mtext><mtext mathvariant="italic">n</mtext><mtext>) (46)</mtext></mrow></math><img file="EP0443548A2_D0045.tif" /></maths>
0091A gain quantizer 286 vector-quantizes gains γ₁ and γ₂ by the method described above using a gain code book formed by using equation (15) or (16). In vector quantization, an optimal word code is selected by using equation (11). Fig. 6 shows an arrangement of the gain quantizer 286. Referring to Fig. 6, a reproducing circuit 505 receives c₁(n), c₂(n), and h<sub>w</sub>(n) to obtain s<sub>w1</sub>(n) and s<sub>w2</sub>(n) according to equations (12) and (13).
0092A cross-correlation calculator 500 and an auto-correlation calculator 510 receive e<sub>w</sub>(n), s<sub>w1</sub>(n), s<sub>w2</sub>(n), and a code word output from the gain code book 287, and calculate the second and subsequent terms of equation (11). A maximum value discriminating circuit 520 discriminates the maximum value in the second and subsequent terms of equation (11) and outputs an index representing a corresponding code word from the gain code book. A gain decoder 530 decodes the gain by using the index and outputs the result. The gain decoder 530 then outputs the index of the code book to the multiplexer 260. In addition, the gain decoder 530 outputs decoded gain values γ'₁ and γ'₂ to a multiplier 242.
0093The multiplier 242 multiplies the code words c<sub>1j</sub>(n) and c<sub>2i</sub>(n) respectively selected from the first and second code books by the quantized/decoded gains γ'₁ and γ'₂, and outputs the multiplication result to the adder 291. The adder 291 adds the output signals from the adaptive code book 210 and the multiplier 242, and outputs the addition result to the synthetic filter 281.
0094The multiplexer 260 outputs a combination of code series output from an LSP quantizer 140, an adaptive code book 210, a first code book search circuit 230, a second code book search circuit 270, and the gain quantizer 286.
0095Fig. 7 shows still another embodiment of the present invention. Since the same reference numerals in Fig. 7 denote the same parts as in Fig. 1, and they perform the same operations, a description thereof will be omitted.
0096A quantizer 225 vector-quantizes the gain of an adaptive code book by using a code book 226 formed by a learning procedure according to equation (20). The quantizer 225 then outputs an index representing an optimal code word to a multiplexer 260. In addition, the quantizer 225 quantizes/decodes the gain and outputs the result.
0097The gains of the adaptive code book and of the first and second code books may be vector-quantized together instead of performing the quantization described with reference to the above embodiment.
0098Furthermore, in order to reduce the operation amount, optimal code words may be selected by using equations (21) and (14) in vector quantization of the gain of the adaptive code book and the gains γ₁ and γ₂.
0099In addition, vector quantization of the gains of the adaptive code book and of the first and second code books may be performed such that a third code book is formed beforehand by a learning procedure on the basis of the absolute values of gains, and vector quantization is performed by quantizing the absolute values of gains while signs are separately transmitted.
0100As has been described above, according to the present invention, a code book representing sound source signals is divided into two code books. The first code book is formed beforehand by a learning procedure using training signals based on a large number of difference signals. The second code book has predetermined statistical characteristics. By using the first and second code books, excellent characteristics can be obtained with a smaller operation amount than that of the conventional system. In addition, a further improvement in characteristics can be realized by optimizing the gains of the code books. Furthermore, by effectively quantizing spectrum parameters by using a combination of the vector quantizer and the scalar quantizer, the transmission information amount can be set to be smaller than that in the conventional system. Moreover, by vector-quantizing the gain of the code book and the gain of the adaptive code book based on pitch prediction by means of the gain code book formed beforehand by a learning procedure based on a large amount of training signals, the system of the present invention can provide better characteristics with a smaller operation amount than the conventional system.
0101In comparison with the conventional system, the system of the present invention has a great advantage that high-quality coded/reproduced speech can be obtained at a bit rate of 8 to 4.8 kb/s.
53 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10 Sheet 11 Sheet 12 Sheet 13 Sheet 14 Sheet 15 Sheet 16 Sheet 17 Sheet 18 Sheet 19 Sheet 20 Sheet 21 Sheet 22 Sheet 23 Sheet 24 Sheet 25 Sheet 26 Sheet 27 Sheet 28 Sheet 29 Sheet 30 Sheet 31 Sheet 32 Sheet 33 Sheet 34 Sheet 35 Sheet 36 Sheet 37 Sheet 38 Sheet 39 Sheet 40 Sheet 41 Sheet 42 Sheet 43 Sheet 44 Sheet 45 Sheet 46 Sheet 47 Sheet 48 Sheet 49 Sheet 50 Sheet 51 Sheet 52 Sheet 53
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| EP0545386A2 | Cited by | European Patent Office (EPO) | Search report |
| US5548680A | Cited by | United States of America | Search report |
| WO9804046A3 | Cited by | World Intellectual Property Organization (WIPO) | International search |
| EP0630141A3 | Cited by | European Patent Office (EPO) | Search report |
| EP0630141A2 | Cited by | European Patent Office (EPO) | Search report |
| EP0755047A2 | Cited by | European Patent Office (EPO) | Search report |
| EP0616315A1 | Cited by | European Patent Office (EPO) | Search report |
| EP0557940A2 | Cited by | European Patent Office (EPO) | Search report |
| EP0755047A3 | Cited by | European Patent Office (EPO) | Search report |
| EP0545386A3 | Cited by | European Patent Office (EPO) | Search report |
| US5487128A | Cited by | United States of America | Search report |
| EP0910064A3 | Cited by | European Patent Office (EPO) | Search report |
| WO9804046A2 | Cited by | World Intellectual Property Organization (WIPO) | International search |
| US5704002A | Cited by | United States of America | Search report |
| EP0557940A3 | Cited by | European Patent Office (EPO) | Search report |
| US6594626B2 | Cited by | United States of America | Search report |
| EP0718821A3 | Cited by | European Patent Office (EPO) | Search report |
| EP0718821A2 | Cited by | European Patent Office (EPO) | Search report |
| EP0910064A2 | Cited by | European Patent Office (EPO) | Search report |
| EP0616315A1 | Cited by | European Patent Office (EPO) | Search report |
| US5432883A | Cited by | United States of America | Search report |
| EP0628947A1 | Cited by | European Patent Office (EPO) | Search report |
| EP0342687A2 | Cites | European Patent Office (EPO) | Search report |
| GB2199215A | Cites | United Kingdom | Search report |
10 members in 4 offices; this record represents the family
Priority claims8
| Document | Office | Kind | Date |
|---|---|---|---|
| 4295590 | Japan | A | |
| 4295690 | Japan | A | |
| 4295590 | Japan | – | |
| 4295690 | Japan | – | |
| JP19900042955 | – | – | – |
| JP19900042956 | – | – | – |
| 4295590 | – | – | – |
| 4295690 | – | – | – |
Members10
| Document | Office | Kind | |
|---|---|---|---|
| EP0443548A2This record | European Patent Office (EPO) | A2 | |
| JPH03243998A | Japan | A | |
| JPH03243999A | Japan | A | |
| EP0443548A3 | European Patent Office (EPO) | A3 | |
| US5208862A | United States of America | A | |
| JP3194930B2 | Japan | B2 | |
| JP3256215B2 | Japan | B2 | |
| EP0443548B1 | European Patent Office (EPO) | B1 | |
| DE69133296D1 | Germany | D1 | |
| DE69133296T2 | Germany | T2 |
24 legal events, as 3 offices reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | Office | |
|---|---|---|---|
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Patent expired after termination of 20 yearsExpiredPE20 | PE20 | GB | |
| Expiry of rightR071 | R071 | DE | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| No opposition filedOpposition26N | 26N | EP | |
| No opposition filed within time limitOppositionORIGINAL CODE: 0009261PLBE | PLBE | EP | |
| Information on the status of an ep patent application or granted ep patentGrantedSTATUS: NO OPPOSITION FILED WITHIN TIME LIMITSTAA | STAA | EP | |
| Fr: translation filedET | ET | EP | |
| Corresponds to:REF | REF | EP | |
| Designated contracting statesAK | AK | EP | |
| European patent grantedGrantedFG4D | FG4D | GB | |
| (expected) grantORIGINAL CODE: 0009210GRAA | GRAA | EP | |
| Despatch of communication of intention to grant a patentORIGINAL CODE: EPIDOS IGRAGRAH | GRAH | EP | |
| Information provided on ipc code assigned before grantRIC1 | RIC1 | EP | |
| Despatch of communication of intention to grant a patentORIGINAL CODE: EPIDOS IGRAGRAH | GRAH | EP | |
| First examination report despatched17Q | 17Q | EP | |
| Designated contracting statesAK | AK | EP | |
| Search report despatchedORIGINAL CODE: 0009013PUAL | PUAL | EP | |
| Request for examination filed17P | 17P | EP | |
| Designated contracting statesAK | AK | EP | |
| Public reference made under article 153(3) epc to a published international application that has entered the european phaseORIGINAL CODE: 0009012PUAI | PUAI | EP |
Numbers
- Publication
- 0443548
- Publication, DOCDB
- 0443548
- Publication, EPODOC
- EP0443548
- Application
- 91102440
- Application, DOCDB
- 91102440
- Application, EPODOC
- EP19910102440
Titles6
- German
- Sprachcodierer.
- English
- Speech coder.
- French
- Codeur de parole.
- German
- Sprachcodierer
- English
- Speech coder
- French
- Codeur de parole
Classification
- CPC, 8
- G10L19/12
- G10L25/06
- G10L25/18
- G10L25/24
- G10L2019/0003
- G10L2019/0005
- G10L2019/0011
- G10L2019/0014
- IPC, 4
- G10L19 12
- G10L25 06
- G10L25 18
- G10L25 24
Designated states3
- Contracting states, 3
- Germany
- France
- United Kingdom