Variable rate coder

Abstract: A variable rate coder for transforming an input signal into a low bit rate digital signal, comprising: a plurality of coding units (111, 121, 131) each comprising an output quantizer having a different number of output bits, and each independently transforming the input signal into a compressed digital signal. A plurality of bit rate determining circuits (24, 3a) are provided to determine an output of one of the plurality of coding units (111, 121, 131) as an output of the coder by an individual determining method, in which method, quality of a signal which is regenerated from an output of each coding unit is compared with an individual predetermined quality evaluating standard, and then an output of a coding unit having a smallest number of output bits among outputs of coding units satisfying each standard, is determined as the output of the coder. One output among the plurality of the above determined outputs, which is determined by a most suitable determining method for the level of the input signal, is used to select the output of the coder (Fig. 1). Further, when the number of the output in each of the coding untis (111, 121, 131) can be variably set, the most suitable number of output bits for the output of the coder is calculated based on prediction gains of the coding units (111, 121, 131), a required signal-to-noise ratio of the coder, and an ADC signal-to-noise ratio at the analog to digital converter, and the number of the output in each of the coding units (111, 121, 131) is set based on the above calculated value, before the above operation by the bit rate determining circuits (24, 3a).

Description: BACKGROUND OF THE INVENTION (1) Field of the Invention The present invention relates to a variable rate coder for transforming an input signal into a low and adaptively variable bit rate digital signal, comprising: a plurality of coding circuits each comprising an output quantizer having a different output bit rate, and independently transforming the input signal into a compressed digital signal. Generally, when a voice signal or a picture signal is transmitted, the original input signal is coded at the sender side by a coding method to reduce the bit rate on the transmission line, and the coded signal is received and decoded to regenerate the original signal in the receiver side. In the above transmission using coding, in addition to the requirement of a low bit rate, a sufficient quality of the regenerated signal is required according to the purpose of usage. In particular, in communication systems which allow variations of bit rate, such as a packet communication system, it is desirable to code an input signal to a least bit rate signal which maintains a sufficient quality of the regenerated signal from the view point of efficiency quality. (2) Description of the Related Art One attempt to realize the above-mentioned coding wherein an input signal is coded to a least bit rate signal which maintains a sufficient quality of the regenerated signal, called a variable rate coder, is described by T. Taniguchi, et al. in "ADPCM with a Multiquantizer for Speech Coding", IEEE Journal on Selected Areas in Communicatons, Vol. 6, Feb. 1988, pp.410-424. The coder described in the above paper comprises a plurality of ADPCM coder units, and the number of bits of the quantizer output in each coder unit is different. Input signals are coded in parallel in the plurality of coder units, the quality of the coding in each coder unit is evaluated for each frame of data, and the coder unit giving a lowest bit rate among the coder units satisfying a predetermined quality requirement is selected to be used for transmission. To carry out the above evaluation (determination whether or not the output of each coder unit satisties the above predetermined requirement of quality), two methods are described in the above paper. In the one method, a signal-to-noise ratio (SNR) is obtained for each coder unit and each frame of data, and the obtained SNR value is compared with a threshold of the SNR corresponding to the above predetermined Quality requirement. In the coder carrying out a prediction coding, a difference between an input signal and a prediction value of the input are quantized by the quantizer, and the output of the quantizer is used as the output of the coder. The SNR in the coder is expressed by a multiple (summation when the SNR is expressed as a logarithm) of a prediction gain and a quantization gain when the input signal is large enough to ignore the quantization step size in the analog to digital converter which is provided in the input stage of the coder. Therefore, when the prediction gain is large (the above difference is small), only a small number of the quantization steps in the quantizer (a small number of output bits of the quantizer) is necessary to obtain the required SNR, and when the prediction gain is small (the above difference is large), large number of the quantization steps in the quantizer (a large number of output bits of the quantizer) is necessary to obtain the required SNR. Thus, the above-mentioned evaluation of the SNR enables control of the output bit rate of the coder. In the other method, a noise (error) level is used for the evaluation instead of the SNR. As described in the above paper, there is a problem that a high bit rate output is selected for a low level input signal when evaluation based on the SNR is used, and for a high level input signal when evaluation based on the noise level is used. Generally, an analog to digital converter is provided in the sampling stage of a coder for converting an analog input signal to a digital signal, where a fixed amplitude range for input signals (dynamic range) is assigned at the input of the analog to digital converter, and the step size (resolution) in the analog to digital converter is constant. The constant step size in the analog to digital converter limits the SNR in the analog to digital converter, and thus the SNR in the total coder output. In particular, when the input level becomes lower, it becomes difficult to obtain the required SNR value. As mentioned above, the control of the output bit rate of the coder using the evaluation of SNR is effective when the input signal is large enough to ignore the quantization step size in the analog to digital converter. However, when an SNR value in the analog to digital converter which is determined by the factor (input signal level)/(quantization step size in the analog to digital converter), is comparable with the SNR value required for the total coder (i. e., required for a signal regenerated in the receiver side through the coder and a corresponding decoder), the above control of the output bit rate of the coder using the evaluation of SNR is not effective because an increase in the quantization gain in the quantizer can recover only a decrease in the prediction gain, but cannot recover the SNR degraded in the analog to digital converter. Nevertheless, in the conventional variable rate coder, the above control of the output bit rate of the coder using the evaluation of SNR, i. e., an increase in the output bit rate of the coder when the SNR of the coder becomes lower, is carried out even when the SNR of the coder is degraded by the SNR in the analog to digital converter due to a low level input. In the coder wherein the above control of the output bit rate is carried out based on the noise level instead of the SNR, the aforementioned problem of a high bit rate for a high level input is caused by a constant threshold level for noises which requires a high SNR for a high level input. Therefore, in the conventional variable rate coders, even if the output bit rate of the coder is controlled based on the SNR or the noise level, there is a problem that a high bit rate which does not contribute to the quality of the transmitted signal is output according to the variation of the input level. Further, in the conventional variable rate coder as described in the aforementioned paper by Taniguchi et al., a plurality of coder units are provided where the number of the coder units is determined by the extent of the variation of the necessary bit rates to obtain a required quality, and an input signal is coded in parallel in all the coding units. Therefore, there is a problem that the scale of the hardware is very large. Reference is also made to EP-A-0 206 352 and ICASSP 86 PROCEEDINGS vol. 3, April 1986, New York, pages 1721-1724, TANAGUCHI et al "A High-Efficiency Speach Coding Algorithm" both of which disclose coding transmission equipment which contains a plurality of adaptive coding units (ADPCM quantizors) having different processing characteristics. One of the adaptive coding units which has the optimum processing characteristic is selected based on quantization errors calculated by an error-calculating unit. The selection is made based on only one criterion (quantization error). Further, bit rates of the plurality of adaptive coding units (ADPCM quantizers) disclosed in both documents aforementioned cannot be changed. SUMMARY OF THE INVENTION An object of the present invention is to provide a variable rate coder for realizing an optimal coding according to a variation of an input level from the viewpoint of quality and bit rate. Another object of the present invention is to provide a variable rate coder for realizing an optimal coding according to a variation of an input level from the viewpoint of quality and bit rate, with a reduced hardware size. According to the present invention, there is provided a coder for transforming an input signal into a low bit rate digital signal, comprising: a plurality of coding means each comprising an output quantizer having a different number of output bits, and independently transforming said input signal into a compressed digital signal, and first output determining means for determining an output of one of said plurality of coding means as an output of said coder by an individual determining method, in which method, quality of a signal which is regenerated from an output of each coding means is evaluated by a predetermined quality evaluating standard, and then an output of a coding means having a smallest number of output bits among outputs of coding means satisfying said standard is determined as the output of the coder, characterised by second output determining means for determining an output of one of said plurality of coding means as an output of said coder by an individual determining method different from that of the first output determining means, in which second method quality of a signal which is regenerated from an output of each coding means is evaluated by another individual predetermined quality evaluating standard and then an output of a coding means having a smallest number of output bits among outputs of coding means satisfying said latter standard is determined as the output of the coder; and a control determining means for selecting one of said output determining means as a means to determine said output of the coder, according to the power of said input signal, and an output selecting means arranged to select an output of one of said plurality of coding means as said output of the coder, according to the output of said output determining means which is selected by said control determining means. BRIEF DESCRIPTION OF THE DRAWINGS The invention will be better understood by referring, by way of example, to the accompanying drawings, in which:- Figure 1 shows a preferred embodiment of the present invention, and Figure 2 shows another embodiment of the present invention. DESCRIPTION OF THE PREFERRED EMBODIMENTS Before describing two preferred embodiments of the present invention, the basic principle of the present invention is now explained. An input signal is coded in parallel in the plurality of coding means, and the output of one of the plurality of coding means which is selected by one of the plurality of output determining means, is used as the output of the (variable rate) coder. The above one of the output determining means is further selected by the control determining means according to the power of the input signal. Thus, when the characteristic (particularly the applicability or suitability) of the quality control using the individual predetermined evaluation standard by each of the output determining means depends on the power of the input signal (or input signal level), most suitable or applicable one of the quality controls using the individual predetermined evaluation standards by the output determining means is selected by the control determining means according to the power of the input signal (or input signal level). Figure 1 shows an embodiment of the present invention. In Fig. 1, reference numerals 111, 121, and 131 each denote a coding unit, 112, 122, and 132 each denote a decoding unit, 61, 62, and 63 each denote an adder, 64, 65, 66, and 67 each denote a power calculator, 21, 22, and 23 each denote a divider, 4a denotes a control select circuit, 24 denotes an S/N evaluating control circuit, 3a denotes a noise evaluating control circuit, 51 denotes a selector, 52 denotes a selector and multiplexer, 7 denotes a transmission line, 8 denotes a demultiplexer, and 9 denotes a decoding unit. Among the above composing elements, the demultiplexer 8 and decoding unit 9 are included in the receiver side, while all the other composing elements except the above elements in the receiver side, and the transmission line 7, constitute a construction in the sender side. A input signal (denoted by SIN in Fig. 1) is input in parallel into the coding units 111, 121, and 131. The coding units 111, 121, and 131 realize the aforementioned plurality of coding means, have different numbers of output bits (for example, three, four, and five, respectively), and the coding units 111, 121, and 131 in Fig. 1 each carry out, for example, ADPCM coding. The output (coded) signals (each denoted by SCOD1, SCOD2, and SCOD3) from the coders 111, 121, and 131, are input into the selector and multiplexer 52. The decoding units 112, 122, and 132 respectively decode the output signals (each denoted by SCOD1, SCOD2, and SCOD3) from the corresponding coders, and therefore, each of the decoding units 112, 122, and 132 regenerate the input signal suffering a possible degradation by the coding and decoding through the corresponding coding unit and decoding unit, respectively. The outputs of the decoding units 112, 122, and 132 (the above-mentioned regenerated signals, and each denoted by SDEC1, SDEC2, and SDEC3) are subtracted from the real input signal in the adders 61, 62, and 63, respectively, and thus, the error signals which are each generated through the coding units 111, 121, and 131, and the decoding units 112, 122, and 132, respectively, are obtained. The resultant error signals are input into the power calculators 65, 66, and 67, respectively, and thus, the powers (each denoted by PWR1, PWR2, and PWR3) of the above error signals are obtained. On the other hand, the power (denoted by PWR0) of the input signal is calculated in the power calculator 64, and, signal-to-noise ratios (each denoted by SN1, SN2, and SN3) for the pairs of the coding units and the corresponding decoding units 111 & 112, 121 & 122, and 131 & 132, are respectively calculated in the dividers 21, 22, and 23. The above signal-to-noise ratios SN1, SN2, and SN3 from the dividers 21, 22, and 23 are input into the S/N evaluating control circuit 24. The S/N evaluating control circuit 24 corresponds to one of the aforementioned output determining means in the first aspect of the present invention, and determines an output of one of the coding units 111, 121, and 131, as an output of the coder (i. e., the output of the sender side as shown in Fig. 1), according to the above signal-to-noise ratios SN1, SN2, and SN3. In detail, the S/N evaluating control circuit 24 first determines the outputs of the coding units corresponding to the outputs of the dividers which satisfy a predetermined S/N condition, and then determines the output of the coding unit having the smallest number of output bits among the coding units satisfying the predetermined S/N condition, as the output of the coder. The above S/N condition is, for example, that the signal-to-noise ratio must be greater than a predetermined threshold. The threshold value (denoted by SNTH in Fig. 1) is predetermined to, for example, 36 dB. Thus, if, for example, the signal-to-noise ratios SN2 and SN3 from the dividers 22 and 23 are above 36 dB, and the signal-to-noise ratio SN1 from the divider 21 is below 36 dB, first, it is determined that the coding units 121 and 131 satisfy the above S/N condition, and then the output of the coding unit 121 is determined as the output of the coder because the number of output bits (four) of the coding unit 121 is smaller than the number of output bits (five) of the coding unit 122, at the stage of the S/N evaluating control circuits 24. The result of the determination is output in the form of a selector control signal (denoted by ESN in Fig. 1), and is then applied to one input terminal of selector 51. On the other hand, the powers of the error signals PWR1, PWR2, and PWR3 are input into the noise evaluating control circuit 3a. The noise evaluating control circuit 3a corresponds to another of the aforementioned output determining means in the first aspect of the present invention, and determines an output of one of the coding units 111, 121, and 131, as an output of the coder (i.e., the output of the sender side as shown in Fig. 1), according to the above powers of the error signals PWR1, PWR2, and PWR3. In detail, the noise evaluating control circuit 3a first determines the outputs of the coding units corresponding to the outputs of the dividers each satisfying a predetermined error condition, and then determines an output of a coding unit having a smallest number of output bits among the coding units satisfying the predetermined error condition, as the output of the coder. The above error condition is, for example, that the power of the error signal must be smaller than a predetermined maximum. The maximum value (denoted by NTH in Fig. 1) is predetermined to, for example, -75 dBm0. Thus, if, for example, the powers of the errors PWR2 and PWR3 from the power calculators 66 and 67 are below -75 dBm0, and the powers of the error PWR1 from the power calculator 65 is over -75 dBm0, first, it is determined that the coding units 121 and 131 satisfy the above error condition, and then the output of the coding unit 121 is determined as the output of the coder because the number of output bits (four) of the coding unit 121 is smaller than the number of output bits (five) of the coding unit 122, at the stage of the noise evaluating control circuit 3a. The result of the determination is output in the form of a selector control signal (denoted by EN in Fig. 1), and is then applied to a corresponding input terminal of selector 51. The control select circuit 4a corresponds to the aforementioned control determining means in the first aspect of the present invention, and is realized by a comparator. The comparator 4a compares the above-mentioned power PWR0 of the input signal SIN with a threshold level (denoted by SPTH in Fig. 1) of the power of the input signal. The result of the comparison is output in the form of a selector control signal (denoted by ED in Fig. 1), and is then applied to a control input terminal of selector 51. The above threshold level of the power of the input signal is set to, for example, -50dBm0. Thus, when the power of the input signal is above the above threshold level SPTH, the control output ESN from the S/N evaluating control circuit 24 is selected in the selector 51. The output of the selector 51 (denoted by SEL) is applied to the selector and multiplexer 52 as a control signal for a selector portion of the selector and multiplexer 52. The selector and multiplexer 52 selects one of the output signals from the coding units 111, 121, and 131 according to the control signal supplied from the selector 51, and multiplexes the selected output of a coding unit and the above control signal to transmit them through the transmission line 7. Thus, the aforementioned control of the output bit rate of the coder using the evaluation of SNR is carried out for selecting a number of output bits in the coder (for selecting a coding unit). When the power of the input signal is below the above threshold level SPTH, the control output EN from the noise evaluating control circuit 3a is selected in the selector 51. Similar to the above case, the output of the selector 51 (denoted by SEL) is applied to the selector and multiplexer 52 as a control signal for the selector portion of the selector and multiplexer 52. The selector and multiplexer 52 selects one of the output signals from the coding units 111, 121, and 131 according to the control signal supplied from the selector 51, and multiplexes the selected output of a coding unit and the above control signal to transmit them through the transmission line 7. Thus, the aforementioned control of the output bit rate of the coder using the evaluation of noise levels is carried out for selecting a number of output bits in the coder. In the above multiplexing operation, coded data can be formed as a packet having a header portion and an information portion. In the header portion, the above control signal SEL which indicates which one of the outputs of the coding units are selected for the transmission, can be contained, and, in the information portion, for example, ADPCM codes (the above selected output) for 16 data samples are contained. The decoder 9 shown in the receiver side, contains the same construction of three decoding units as decoding units 112, 122, and 132 in the sender side, and, when a frame of data is received in the receiver side, the above-mentioned control signal SEL which is transmitted in the header portion, is divided, and is supplied to the decoder 9 to select one of the above-mentioned decoding units corresponding to the selection in the sender side. Thus, the regenerated signal (denoted by REG) can be obtained in the receiver side. In the above embodiment, all the calculations and controls in the above construction (and thus a switching for the selection of a bit rate) may be carried out for each frame. Figure 2 shows another embodiment of the present invention. This second embodiment of the present invention is realized as a variation of the above embodiment. The only difference in the constructions between the two embodiments is the function of the control select circuit. In Fig. 2, the control select circuit 4a' receives the control outputs ESN and EN from the S/N evaluating control circuit 24 and the noise evaluating control circuit 3a, and functions as follows. The range of the power of the input signal is divided into three regions by first and second predetermined threshold values (denoted by SPTH1 and SPTH2 in Fig. 2), where the first predetermined threshold value is greater than the second predetermined threshold value. The control determining means (which can be realized by the control select circuit 4a' in Fig. 2) in the second aspect of the present invention, determines as an output of the coder an output of a coding unit determined by the S/N control output determining means (which can be realized by the S/N evaluating control circuit 24 in Fig. 2) when the power of the input signal is greater than a first predetermined value SPTH1, the above control determining means (the control select circuit 4a' in Fig. 2) determines as the output of the coder an output of a coding unit determined by the above error level control output determining means (which can be realized by the noise evaluating control circuit 3a in Fig. 2) when the power of the input signal is not greater than a second predetermined value SPTH2, and the above control determining means (the control select circuit 4a' in Fig. 2) determines as an output of the coder an output of a coding unit having a smaller number of output bits between the output determined by the S/N control output determining means (the control select circuit 4a' in Fig. 2) and the above output determined by the above error level control output determining means (the noise evaluating control circuit 3a in Fig. 2), when the above power of the input signal is between the above first and second predetermined values SPTH1 and SPTH2. According to this embodiment of the present invention, a margin is given for determination of the threshold level of the power of the input signal. The first and second threshold levels SPTH1 and SPTH2 in the second aspect of the present invention may be set to ± 6 dB of the threshold level in the first aspect of the present invention. In the first and second aspects of the present invention, the numbers of output bits (bit rate) in the plurality of coding means (units) in the variable rate coder, are each fixed, and therefore, the number of the coder units is determined by the extent of the variation of the necessary bit rates to obtain a required quality. Since the construction of both the above embodiments is realized by digital signal processors, the above transformation tables for predetermined numbers of output bits (numbers of quantization steps) are installed in advance for each quantizer and a corresponding inverse quantizer. As explained above, according to the variable rate coders disclosed above, most suitable bit rate control is selected corresponding to variation of the input level (power), and the present invention is applicable to all types of coders. Reference signs in the claims are intended for better understanding and shall not limit the scope. Reference is made to the present applicants' European application 94 113 064.3 which is directed to subject-matter divided from the present application.

Claims: A coder for transforming an input signal into a low bit rate digital signal, comprising: a plurality of coding means (111, 121, 131) each comprising an output quantizer having a different number of output bits, and independently transforming said input signal into a compressed digital signal; and first output determining means (24) for determining an output of one of said plurality of coding means (111, 121, 131) as an output of said coder by an individual determining method, in which method, quality of a signal which is regenerated from an output of each coding means is evaluated by a predetermined quality evaluating standard, and then an output of a coding means having a smallest number of output bits among outputs of coding means satisfying said standard is determined as the output of the coder; characterised by: second output determining means (3a) for determining an output of one of said plurality of coding means (111, 121, 131) as an output of said coder by an individual determining method different from that of the first output determining means (24), in which second method quality of a signal which is regenerated from an output of each coding means is evaluated by another individual predetermined quality evaluating standard and then an output of a coding means having a smallest number of output bits among outputs of coding means satisfying said latter standard is determined as the output of the coder; and a control determining means (4a) for selecting one of said output determining means (24, 3a) as a means to determine said output of the coder, according to the power of said input signal; and an output selecting means (51, 52) arranged to select an output of one of said plurality of coding means (111, 121, 131) as said output of the coder, according to the output of said output determining means which is selected by said control determining means (4a). A coder according to claim 1, wherein: a plurality of decoding means (112, 122, 132) is provided corresponding to said plurality of coding means (111, 121, 131); a plurality of error obtaining means (61, 62, 63, 65, 66, 67) is provided corresponding to said plurality of decoding means (111, 121, 131), and each obtaining an error which is generated through the corresponding coding means and the corresponding decoding means, based on said input signal and an output of the corresponding decoding means; a plurality of S/N obtaining means (21, 22, 23) is provided corresponding to said plurality of decoding means (111, 121, 131), and each obtaining a signal-to-noise ratio based on the power of said input signal and the power of an output of a corresponding error obtaining means; said first control output determining means (24) is arranged for determining an output of a coding means among said plurality of coding means (111, 121, 131), as an output of said coder, according to the outputs of said plurality of S/N obtaining means (21, 22, 23); and said second control output determining means (3a) is arranged for determining an output of a coding means among said plurality of coding means (111, 121, 131), as an output of said coder, according to the outputs of said plurality of error obtaining means (61, 62, 63, 65, 66,67). A coder according to claim 2, wherein said control determining means (4a) selects said S/N control output determining means (24) as a means to determine said output of the coder when said power of the input signal is greater than a predetermined value, and said control determining means selects said error level control output determining means (3a) as a means to determine said output of the coder when the power of the input signal is not greater than said predetermined value. A coder according to claim 3, wherein said S/N control output determining means (24) first determines the outputs of the coding means corresponding to the outputs of the S/N obtaining means each satisfying a predetermined S/N condition, and then determines an output of a coding means having a smallest number of output bits among said coding means satisfying said predetermined S/N condition, as said output of the coder. A coder according to claim 4, wherein said predetermined S/N condition is that the signal-to-noise ratio is to be greater than a predetermined threshold. A coder according to claim 3, wherein said error level control output determining means (3a) first determines coding means corresponding to the outputs of the error obtaining means each satisfying a predetermined error condition when the outputs are each decoded through the corresponding decoding means and the corresponding errors are each obtained in said error obtaining means, and then determines an output of a coding means having a smallest number of output bits among the outputs of coding means satisfying the predetermined error condition, as said output of the coder. A coder according to claim 6, wherein said predetermined error condition for an error is that the error is not to be greater than a predetermined maximum. A coder as claimed in claim 1, wherein: a plurality of decoding means (111, 121, 131) is provided corresponding to said plurality of coding means (111, 121, 131); a plurality of error obtaining means (61, 62, 63, 65, 66, 67) is provided corresponding to said plurality of decoding means (111, 121, 131), and each obtaining an error which is generated through a corresponding coding means and a corresponding decoding means, based on said input signal and an output of the corresponding decoding means; a plurality of S/N obtaining means (21, 22, 23) is provided corresponding to said plurality of decoding means (111, 121, 131), and each obtaining a signal-to-noise ratio based on the power of said input signal and the power of an output of a corresponding error obtaining means; said first control output determining means (24) is arranged for determining an output of a coding means among the outputs of said plurality of coding means (111, 121, 131), as an output of said coder, according to the outputs of said plurality of S/N obtaining means (21, 22, 23); said second control output determining means (3a) is arranged for determining an output of a coding means among the outputs of said plurality of coding means (111, 121, 131), as an output of said coder, based on the outputs of said plurality of error obtaining means (61, 62, 63, 65, 66, 67); and said control determining means (4a) is arranged to determine as an output of the coder an output of a coding means determined by said S/N control output determining means (24) when said power of the input signal is greater than a first predetermined value, said control determining means is arranged to determine as the output of the coder an output of a coding means determined by said error level control output determining means (3a) when the power of the input signal is not greater than a second predetermined value, and said control determining means is arranged to determine as an output of the coder an output of a coding means having a smaller number of output bits between said output determined by said S/N control output determining means (24) and said output determined by said error level control output determining means (3a), when said power of the input signal is between said first and second predetermined values.

Inventors: ISEDA KOHEI, TOMITA YOSHIHIRO, UNAGAMI SHIGEYUKI, ISEDA, KOHEI, TOMITA, YOSHIHIRO, UNAGAMI, SHIGEYUKI
Applicants: FUJITSU LTD, FUJITSU LIMITED
Application year: 1989
Main classification: H04B14
IPC codes: H04N7, G06T9, H04B14