Digital encoder with dynamic quantization bit allocation

Abstract: A digital encoder for compressing a digital input signal (10) derived from an analog signal to reduce the number of bits required to represent the analog signal with low quantizing noise. In the encoder, a digital input signal (10) representing the analog signal is divided into three frequency ranges. The digital signal in each of the three frequency ranges is divided in time into frames, the time duration of which may be adaptively varied. The frames are orthogonally transformed into spectral coefficients, which are grouped into critical bands. The total number of bits available for quantizing the spectral coefficients is allocated among the critical bands. In a first embodiment and a second embodiment, fixed bits are allocated among the critical bands according to a selected one of a plurality of predetermined bit allocation patterns and variable bits are allocated among the critical bands according to the energy in the critical bands. In the first embodiment, the apportionment between fixed bits and variable bits is fixed. In a second embodiment, the apportionment between fixed bits and variable bits is varied according to the smoothness of the spectrum of the input signal. In a third embodiment, bits are allocated among the critical bands according to a noise shaping factor that is varied according to the smoothness of the spectrum of the input signal. All three embodiments give low quantizing noise with both broad spectrum signals and highly tonal signals.

Description: Field of the Invention The invention relates to a digital encoder circuit for compressing a digital input signal to reduce the number of bits required to represent an analog information signal. Background of the Invention A variety of techniques exist for digitally encoding audio or speech signals using bit rates considerably lower than those required for pulse-code modulation (PCM). In sub-band coding (SBC), a filter bank divides the frequency band of the audio signal into a plurality of sub bands. In sub-band coding, the signal is not formed into frames along the time axis prior to coding. In transform encoding, a frame of digital signals representing the audio signal on the time axis is converted by an orthogonal transform into a block of spectral coefficients representing the audio signal on the frequency axis. In a combination of sub-band coding and transform coding, digital signals representing the audio signal are divided into a plurality of frequency ranges by sub-band coding, and transform coding is independently applied to each of the frequency ranges. Known filters for dividing a frequency spectrum into a plurality of frequency ranges include the Quadrature Mirror Filter (QMF), as discussed in, for example, R.E. Crochiere, Digital Coding of Speech in Subbands, 55 BELL SYST. TECH. J., No. 8, (1976). The technique of dividing a frequency spectrum into equal-width frequency ranges is discussed in Joseph H. Rothweiler, Polyphase Quadrature Filters-A New Subband Coding Technique, ICASSP 83 BOSTON. Known techniques for orthogonal transform include the technique of dividing the digital input audio signal into frames of a predetermined time duration, and processing the resulting frames using a Fast Fourier Transform (FFT), discrete cosine transform (DCT) or modified DCT (MDCT) to convert the signals from the time axis to the frequency axis. Discussion of a MDCT may be found in J.P. Princen and A.B. Bradley, Subband/Transform Coding Using Filter Bank Based on Time Domain Aliasing Cancellation, ICASSP 1987. In a technique of quantizing the spectral coefficients resulting from an orthogonal transform, it is known to use sub bands that take advantage of the psychoacoustic characteristics of the human auditory system. In this, spectral coefficients representing an audio signal on the frequency axis may be divided into a plurality of critical frequency bands. The width of the critical bands increase with increasing frequency. Normally, about 25 critical bands are used to cover the audio frequency spectrum of 0 Hz to 20 kHz. In such a quantizing system, bits are adaptively allocated among the various critical bands. For example, when applying adaptive bit allocation to the spectral coefficient data resulting from a MDCT, the spectral coefficient data generated by the MDCT within each of the critical bands is quantized using an adaptively-allocated number of bits. Known adaptive bit allocation techniques include that described in IEEE TRANS. ON ACOUSTICS, SPEECH, AND SIGNAL PROCESSING, VOL. ASSP-25, No. 4 (1977, August) in which bit allocation is carried out on the basis of the amplitude of the signal in each critical band. This technique produces a flat quantization noise spectrum and minimizes noise energy, but the noise level perceived by the listener is not optimum because the technique does not effectively exploit the psychoacoustic masking effect. In the bit allocation technique described in M.A. Krassner, The Critical Band Encoder-Digital Encoding of the Perceptual Requirements of the Auditory System, ICASSP 1980, the psychoacoustic masking mechanism is used to determine a fixed bit allocation that produces the necessary signal-to-noise ratio for each critical band. However, if the signal-to-noise ratio of such a system is measured using a strongly tonal signal, for example, a 1 kHz sine wave, non-optimum results are obtained because of the fixed allocation of bits among the critical bands. It is also known that, to optimize the perceived noise level using the amplitude-based bit allocation technique discussed above, the spectrum of the quantizing noise can be adapted to the human auditory sense by using a fixed noise shaping factor. Bit allocation is carried out in accordance with the following formula: b(k) = δ + ½log 2 [σ 2(1 + γ) (k)/D] where b(k) is the word length of the quantized spectral coefficients in the k'th critical band, δ is an optimum bias, σ 2 (k) is the signal power in the k'th critical band, D is the mean quantization error power over all the entire frequency spectrum, and γ is the noise shaping factor. To find the optimum value of b(k) for each critical band, the value of δ is changed so that the sum of the b(k)s for all the critical bands is equal to, or just less than, the total number of bits available for quantization. This technique does not allow bits to be concentrated sufficiently within a single critical band, so unsatisfactory results are obtained when the signal-to-noise ratio is measured using a high tonality signal, such as a 1 kHz sine wave. Objects and Summary of the Invention It can be seen from the foregoing that, if quantization noise is minimized by allocating bits among the critical bands according to the amplitude of the signal in each respective critical band, the quantization noise perceived by the listener is not minimized. It can also be seen that if fixed numbers of bits are allocated among the critical bands, taking into account psychoacoustic masking, the signal-to-noise ratio is unsatisfactory when measured using a high-tonality signal, such as a 1 kHz sine wave. The article "Low Bit-Rate Coding of High Quality Audio Signals - an Introduction to the MASCAM-System", Theile et al., Review Technical no. 230, August 1988, Brussels, pages 158 to 181 describes bit rate reduction possibilities including a dynamically varying bit rate margin for digital encoding systems. EP-A-420 745 discloses a digital signal encoding apparatus in which properties of the frequency components of the frequency bands are detected and encoding is controlled as a function of said detection output, whereby the detection time duration is selected to be longer for lower frequencies than for higher frequencies. US-A-45 35 472 describes subband coding including adaptive bit allocation, whereby fixed bits are allocated among the critical bands according to a selected one of a plurality predetermined bit allocation patterns. The article "Transform Coding of Audio Signals at 64 Kbits/s", Mahieux et al., Globecom 1990, vol. 1, December 1990, New York, pages 518 to 522, describes a digital encoding apparatus for compressing a digital input signal to provide a compressed output signal according to the preamble of claim 1 and a method for deriving compressed digital data from a noncompressed digital input signal according to the preamble of claim 11. Thereby, one fixed pattern for a bit allocation is used. Therefore, the bit allocation disclosed minimizes the quantization noise perceived by a human listener, but the audio signals produced have the same sensitivity in the entire frequency spectrum for low and for high input signal levels. Therefore, the object of the present invention is to provide a digital encoding apparatus for compressing a digital input signal according to the preamble of claim 1 and a method for deriving compressed digital data for a noncompressed digital input signal according to the preamble of claim 11, in which bits are allocated along the critical bands such that the quantization noise perceived by a human listener is minimized and in which the loudness effect in which the sensitivity of the ear to higher frequencies is reduced at low signal levels can be taken into account. The above object is achieved by a digital encoding apparatus according to claim 1 and a method for deriving compressed digital data according to claim 11. Advantageous features are defined in the respective subclaims. Brief Description of the Drawings Figure 1 is a block circuit diagram of an encoding apparatus according to the present invention. Figure 2 shows a practical example of how the digital input signal is divided in frequency and time in the circuit shown in Figure 1. Figure 3 is a block diagram illustrating a first example of a bit allocation circuit of the adaptive bit allocation and encoding circuit of Figure 1. This bit allocation circuit has a fixed ratio between fixed bits and variable bits. Figure 4 shows a Bark spectrum. Figure 5 is a graph showing an example of how the circuit shown in Figure 1 allocates bits to a signal having a relatively flat spectrum. Figure 6 is a graph showing the quantization noise spectrum for the signal shown in Figure 5. Figure 7 is a graph showing an example of how the circuit shown in Figure 1 allocates bits to a high tonality signal. Figure 8 is a graph showing the quantization noise spectrum for the signal shown in Figure 7. Figure 9 is a block circuit diagram showing a decoding apparatus which is a counterpart of the encoding apparatus shown in Figure 1. Figure 10 is a block diagram illustrating a second example of a bit allocation circuit of the adaptive bit allocation and encoding circuit of Figure 1. This bit allocation circuit provides a variable apportionment of quantizing bits between fixed bits and variable bits. Detailed Description of the Invention Referring to Figure 1, and embodiment will be described in which a digital input signal, such as a PCM audio signal, is compressed using the techniques of sub-band coding (SBC), adaptive transform coding (ATC), and adaptive bit allocation (APC-AB). In the encoding apparatus shown in Figure 1, a digital input signal is divided in frequency into a plurality of frequency ranges by a filter. Each signal in the plurality of frequency ranges is orthogonally transformed from the time axis to the frequency axis. The resulting spectral coefficients are then quantized using adaptive bit allocation. Quantizing bits are allocated to the spectral coefficients grouped in critical bands, which enables the psychoacoustic characteristics of the human hearing mechanism to be taken into account. A critical band is a frequency band that takes advantage of the psychoacoustic characteristics of the human hearing mechanism. A critical band is the band of noise that can be masked by a pure sound that has the same intensity as the noise and has a frequency in the vicinity of the frequency of the noise. The width of the critical band increases with increasing frequency of the pure sound. The entire audio frequency range of 0 Hz to 20 kHz can be divided into, for example, 25 critical bands. The following description will refer on occasions to the quantization noise of the compressed digital signal produced by the encoder that is the subject of this invention. The quantization noise of the compressed digital signal does not manifest itself until the compressed digital signal is converted back into an analog signal. However, reference will be made to the quantization noise of the compressed digital signal for brevity. The digital input signal can be divided into a plurality of frequency ranges by means of a filter or the like, without division along the time axis. The frequency ranges may be of equal width. In the present embodiment, the digital input signal is divided into frames along the time axis before being orthogonally transformed. The frame length is adaptively changed depending on the input signal. The present embodiment also includes floating point processing. Floating point processing is a normalization process that reduces the number of bits required to represent, for example, one frame of the signal along the time axis. This reduces the complexity of circuitry required. Floating point processing can be applied to each frame of the signal or to groups of frames. Additionally, floating point processing can be applied to the spectral coefficients resulting from the orthogonal transform. Floating point processing can be applied to each critical band, to a group of critical bands, or, in critical bands at higher frequencies, to a sub-band obtained by subdivision of the critical band in frequency. Referring to Figure 1, a PCM audio signal in the frequency range of 0 Hz to 20 kHz, for example, is supplied to the input terminal 10. The spectrum of the input signal is divided into frequency ranges by the band-dividing filter 11. Preferably, a quadrature mirror filter (QMF) is used to divide the spectrum of the input signal into a 0 Hz to 10 kHz frequency range and into a 10 to 20 kHz frequency range. The 0 Hz to 10 kHz frequency range is further divided by a second band-dividing filter 12, preferably also a QMF filter, into a 0 Hz to 5 kHz frequency range and a 5 to 10 kHz frequency range. The signals in the 10 kHz to 20 kHz frequency range from the band-dividing filter 11 are connected to the orthogonal transform circuit 13. The signals in the 5 kHz to 10 kHz frequency range from the band-dividing filter 12 are connected to the orthogonal transform circuit 14. The signals in the 0 to 5 kHz frequency range from the band-dividing filter 12 are connected to the orthogonal transform circuit 15. The orthogonal transform circuits 13, 14, and 15 are preferably modified discrete cosine transform (MDCT) circuits, but the other types of orthogonal transform circuits mentioned above could alternatively be used. Figure 2 shows a practical example of the frame sizes of the frequency- and time-divided digital signals fed into the MDCT circuits 13, 14 and 15. In Figure 2, the frequency ranges are wider and the time resolution is greater, that is, the block length is shorter, with increasing frequency. The number of samples BL L in each frame b L in the lower frequency range of 0 Hz to 5 kHz is 256, for example. The number of samples BL M in each frame b M in the middle frequency range of 5 to 10 kHz is also 256, for example. The number of samples BL H in each frame b H in the higher frequency range of 10 to 20 kHz is BL L /2 or BL M /2, i.e., 128. This is one-half of the number of samples in the frames b L and b M in the low and middle frequency ranges, respectively. The number of samples is one-half because the bandwidth of the upper frequency range is twice that of the middle and lower frequency ranges. This halves the spectral resolution in the high-frequency range, and therefore provides the same number of spectral coefficients in the high-frequency range as in each of the middle-and low-frequency ranges. Additionally, the respective frames may be adaptively divided along the time axis by factors of 2 or 4 at times when the input signal changes quickly. Returning to Figure 1, the spectral coefficients produced by the MDCT circuits 13 to 15 are grouped into critical bands, or into sub bands obtained by frequency subdivision of the higher-frequency critical bands. The resulting data is fed into the adaptive bit allocation circuits 16 to 18. In the adaptive bit allocation circuits 16 to 18, the spectral coefficients within each critical band are quantized using a number of quantizing bits allocated to each critical band, or to each sub band obtained by frequency subdivision of a higher-frequency critical band, using one of the bit allocation techniques to be described below. The resulting quantized data is fed to the output terminals 22, 24 and 26. Floating point data, indicating the manner of signal normalization, and quantization word length data, indicating the quantization word lengths are also provided as outputs. A multiplexing circuit (not shown) combines the quantized spectral coefficients, floating point data, and quantization word length data to provide a single compressed digital output signal. The compressed digital output can then be transmitted or recorded on a suitable recording medium for later reproduction and decoding. Examples of suitable recording media are magneto-optical discs, optical discs, and semiconductor memories. Figure 3 is a functional block diagram showing a first practical example for explaining the function of the adaptive bit allocation and encoding circuits 16 to 18. The spectral coefficients generated by the MDCT circuits 13 to 15 (Figure 1) are supplied to the input terminal 301 of the adaptive bit allocation circuit 300, and thence to the energy calculating circuit 303. The energy calculating circuit calculates the energy in each of the critical bands. The circuit determines the energy in each critical band by calculating the root mean square values of the spectral components in the band. The peak or mean values of the spectral components may alternatively be used to indicate the energy in each critical band. Figure 4 shows a plot of the energy in each of the critical bands, representing the output of the energy calculating circuit 303. For simplicity of illustration, Figure 4 shows the energy in only twelve critical bands B1 to B12. In a practical circuit, a larger number of critical bands would be used. Additionally, some of the higher-frequency critical bands could be divided into sub bands. The energy in successive critical bands is referred to as a Bark spectrum. The operation of the adaptive bit allocation circuit will now be described in more detail by referring to Figure 3. It will now be assumed that the total number of bits which can be used to quantize the spectral coefficients, and which may be used for transmission or recording, is 100 kilobits per second (kb/s). This is indicated in Figure 3 as the total number of bits from the block 302. Of the total of 100 kb/s from the block 302, 60 kb/s are provided to the fixed bit allocating circuit 305 for allocation according to a selected one of a number of predetermined bit allocation patterns, and the remaining 40 kb/s are provided to the variable bit allocation circuit for allocation among the critical bands depending on the Bark spectrum. A plurality of predetermined bit allocation patterns are provided for allocating among the critical bands the 60 kb/s allocated to the predetermined bit allocation patterns. One predetermined bit allocation pattern is selected at a time, according to signal properties, and bits are allocated among the critical bands according to the selected predetermined bit pattern. In the present embodiment, the selected one of the predetermined bit allocation patterns allocates among the critical bands the 60 kb/s of bits that are available for allocation among the critical bands according to a preselected bit allocation pattern. The bits for allocation according to the energy in the critical bands (40 kb/s) are fed from the total usable bit circuit 302 to the energy dependent bit allocation circuit 304, which also receives the output of the energy calculation circuit 303. The energy dependent bit allocation circuit allocates bits among the critical bands according to the energy in the critical bands. Alternatively, the energy dependent bit allocation circuit allocates bits among the critical bands according to the energy in a data block derived by dividing the digital input signal in time and in frequency. The present embodiment provides a plurality of predetermined bit allocation patterns having different bit allocation ratios for low- to mid-frequency critical bands and for high-frequency critical bands. A bit allocation pattern allocating fewer bits to the high-frequency critical bands is selected when the amplitude of the input signal is small. This takes advantage of the loudness effect in which the sensitivity of the ear to higher frequencies is reduced at low signal levels. Although the amplitude of the full frequency-range digital input signal may be used to select the appropriate predetermined bit allocation pattern, it is also possible to use an output of one of the MDCT circuits or the output of a non-block forming frequency dividing circuit. A non-block forming frequency dividing circuit is a circuit that divides the frequency spectrum of a signal using, e.g., a filter that does not divide the signal into frames along the time axis. The outputs of the fixed bit allocating circuit and the variable bit allocating circuit are fed into the bit sum calculating circuit 306. The bit sum calculating circuit calculates the total number of bits that can be used for each critical band. This sum comprises the number of bits allocated to the critical band according to the selected one of the predetermined bit allocation patterns, and the number of bits allocated to the critical band depending on the signal energy (or amplitude) in the critical band, or a sub band thereof for higher frequency critical bands. The bit sum calculated by the bit sum calculating circuit is fed via the output terminal 307 to be used for quantization. Figure 5 shows how bits are allocated among the critical bands for a signal having a relatively flat spectrum. Figure 6 shows the corresponding quantization noise spectrum. Figure 7 shows how bits are allocated among the critical bands when the signal has a high tonality, that is, when the signal is perceived by the listener has having a definite pitch. Figure 8 shows the corresponding quantization noise spectrum. In Figures 5 and 7, the non-hatched area indicates the quantity of bits that are allocated according to a selected predetermined bit allocation pattern, and the hatched area indicates the quantity of bits that are allocated depending on signal energy in the critical bands. In Figures 6 and 8, curves a , b , and c indicate the signal level, the quantization noise level ascribable to the bits allocated according to a selected predetermined bit allocation pattern, and the decreased noise level resulting from the bits allocated depending on signal energy in the critical bands, respectively. In Figures 5 and 6, the signal spectrum is relatively flat and the noise level ascribable to the bits allocated according to a selected predetermined bit allocation pattern provides a certain signal-to-noise ratio across the entire frequency spectrum. The selected bit allocation pattern allocates fewer bits to critical bands at and near the low and high frequency extremes of the frequency spectrum because the ear is less sensitive in these parts of the spectrum. Bit allocation depending on signal energy in the critical bands selectively reduces the noise level in the part of the frequency spectrum in which the signal has a larger amplitude. However, when the signal spectrum is relatively flat, as in figures 5 and 6, bit allocation depending on the signal energy in the critical bands allocates bits to a relatively large number of critical bands, and lowers the noise level over a broad frequency range. On the other hand, when the signal is highly tonal, as shown in Figures 7 and 8, bit allocation depending on signal energy in the critical bands reduces the quantization noise in a narrow frequency range. This leads to an improved signal-to-noise ratio in the presence of a highly tonal signal, such as a single-frequency (or narrow bandwidth) signal. Figure 9 shows a decoding circuit for decoding a compressed digital signal provided by the encoder just described, after the signal has been transmitted or recorded. The compressed digital signal is demultiplexed by a demultiplexer (not shown) to extract the quantization word length information from the compressed digital signal. The spectral coefficients, quantized in the respective critical bands with a number of bits that varies from critical band to critical band, are separated into the respective frequency ranges and are supplied to the input terminals 122, 124 and 126 of the decoding circuit. The quantization word length data is fed into the decoding circuit via the input terminals 123, 125 and 127. In the decoding circuits 116, 117 and 118, the spectral coefficients are extracted in response to the quantization word length data. In the inverse transform inverse circuits 113, 114 and 115, which are preferably inverse MDCT circuits (IMDCT circuits), the spectral coefficients on the frequency axis are converted into samples on the time axis. The samples on the time axis for the three frequency ranges are recombined by the inverse QMF (IQMF) circuits 112, 111 into a full frequency digital output signal, which is provided at the output terminal 110. Two variations on the encoder described above, which use different bit allocation schemes, are shown in Figures 10 and 11. Figure 10 is a functional block diagram showing a second practical example for explaining the function of the adaptive bit allocation and encoding circuits 16 to 18 shown in figure 1. In the first example, the ratio between bits that are allocated according to a predetermined bit pattern and the bits that are allocated according to the energy in the critical bands is fixed. In the first practical example just described the ratio is 60:40. In the second example, the total number of bits available for quantization is apportioned between bits that allocated according to a predetermined bit pattern and bits that are allocated according to the energy in the critical bands. The apportionment is varied according to the spectral smoothness of the input signal. In the following description of the second example, it will again be assumed that the number of bits available for quantizing the spectral coefficients, and which may be used for transmission or recording, is 100 kb/s. This is indicated in Figure 10 as the total number of bits from the block 302 indicating the total number of usable bits, or 100 kb/s. As in the first example, a plurality of predetermined bit allocation patterns are provided. A plurality of predetermined bit allocation patterns are provided for each possible apportionment of the total 100 kb/s for allocation according to a predetermined bit pattern, e.g., 40 kb/s, 50 kb/s, 60 kb/s and 70 kb/s. One of the predetermined bit allocation patterns is selected at a time, depending on signal properties, and bits are allocated among the critical bands according to the selected predetermined bit allocation pattern. In the second example, a variety of patterns are provided in which the number of bits apportioned for allocation according to a selected one of a plurality of predetermined bit allocation patterns is distributed to the respective critical bands according to the selected predetermined bit allocation pattern. The plurality of predetermined bit allocation patterns of the second example have different bit allocation ratios for the low- to mid-frequency range and for the high-frequency range. A bit allocation pattern allocating fewer bits to the high-frequency range is selected when the amplitude of the input signal is small. This takes advantage of the loudness effect in which the sensitivity of the ear to higher frequencies is reduced at low signal levels. Although the magnitude of the full-range signal may be used to select the appropriate predetermined bit allocation pattern, it is also possible to use an output of one of the MDCT circuits, or the output of a non-block forming frequency dividing circuit. A non-block forming frequency dividing circuit is a frequency dividing circuit using a filter that divides a digital input signal along the frequency axis without dividing the signal into frames along the time axis. In the second example, the apportionment of the quantization bits between bits allocated according to a predetermined bit allocation pattern and bits allocated among the critical bands according to the signal energy in the critical bands is variable. The apportionment is determined by a spectral smoothness index that indicates the smoothness of the signal spectrum. The spectral smoothness index is calculated in a spectral smoothness calculating circuit by dividing the sum of the absolute values of the differences in energy between adjacent critical bands by the sum of the energies in all the critical bands. Referring to Figure 10, the spectral smoothness calculating circuit 309 receives the output of the energy calculating circuit 303 and calculates spectral smoothness index. The energy calculating circuit is described above in connection with Figure 3, and so will not be described again here. The calculated spectral smoothness index is fed into the bit distribution ratio circuit 313, which also receives the output of the total usable bit circuit 302. The output of the energy calculating circuit 303 is also fed into the energy-dependent bit allocation circuit 304, which allocates bits among the critical bands according to the signal energies in the critical bands, i.e., according to the Bark spectrum. The output of the energy-dependent bit allocating circuit is connected to the variable bit allocating circuit 311. The output of the fixed bit allocating circuit 305, which allocates bits according to a selected one of a number of predetermined bit allocation patterns, is connected to the fixed bit allocating circuit 312. Bit apportionment information, indicating the apportionment between bits to be allocated according to a predetermined bit allocation pattern and bits to be allocated according to signal energy in the critical bands, is fed from the bit allocation circuit 313 into the respective bit allocating circuits 311 and 312. The outputs of the bit allocating circuits 311 and 312 are supplied to the bit sum calculating circuit 306. The bit sum calculating circuit 306 calculates the total number of bits that can be used for quantizing each critical band. This sum comprises the number of bits allocated to the critical band according to the selected one of the predetermined bit allocation patterns, and the number of bits allocated to the critical band according to signal energy in the band, or a subdivision of the critical band at higher frequencies. The bit sum calculated by the bit sum calculating circuit is provided at the output terminal 307 for use for quantization. Typical bit allocations for signals having differing spectral content are in Figures 5 and 7, and the corresponding quantization noise spectra are shown in Figures 6 and 8, respectively. Figure 5 shows how bits are allocated among the critical bands for a signal having a relatively flat spectrum. Figure 6 shows the corresponding quantization noise spectrum. Figure 7 shows how bits are allocated among the critical bands when the signal has a high totality, that is, when the signal is perceived by the listener as having a definite pitch. Figure 8 shows the corresponding quantization noise spectrum. In Figures 5 and 7, the non-hatched area indicates the quantity of bits that are allocated according to a selected predetermined bit allocation pattern. The hatched area shows the quantity of bits that are allocated depending on signal energy in the critical bands. In Figures 6 and 8, curves a , b , and c indicate the signal level, the noise level ascribable to the bits allocated according to a selected predetermined bit allocation pattern, and the decreased noise resulting from the bits dependent on signal energy in the critical bands, respectively. In Figures 5 and 6, the signal spectrum is relatively flat and the noise level ascribable to the bits allocated according to a preselected bit allocation pattern provides a certain signal-to-noise ratio across the entire frequency spectrum. However, fewer bits are allocated to critical bands at and near the low- and high-frequency extremes of the spectrum because the ear is less sensitive in these parts of the spectrum. Bit allocation depending on signal energy in the critical bands reduces the noise level in the part of the frequency spectrum in which the signal has a larger amplitude. However, when the signal spectrum is flat, bit allocation according to signal energy in the critical bands occurs in a larger number of critical bands, and lowers the noise level over a broader frequency range. Conversely, if the signal exhibits high tonality, as shown in Figures 7 and 8, the lowering of the quantization noise resulting from the bit allocation according to energy in the critical bands reduces the noise in an extremely narrow frequency range. This leads to an improved signal-to-noise ratio in the presence of single-frequency (or narrow bandwidth) input signals. If the signal spectrum exhibits high tonality, as shown in Figures 7 and 8, the lowering of the quantization noise ascribable to the bit allocation dependent on the signal energy in the critical bands is utilized for reducing the noise in an extremely narrow range. This leads to improved an improved signal-to-noise ratio in the presence of high-tonality input signals. The noise level over a wide frequency range also is uniformly lowered by the smaller number of bits allocated according to a predetermined bit allocation pattern. The results shown in figures 5 through 8 are the same as those obtained for the first example. Differences between the first and the second example appear when the signal spectrum becomes flatter than that shown in figure 5. With such a signal, the number of bits allocated according to the energy in the critical bands is decreased below the 40 kb/s set in the first example, and the number of bits allocated according to a preselected bit allocation pattern is increased beyond the 60 kb/s set in the first example. Differences between the first and the second example appear when the signal spectrum becomes more tonal than the signal shown in figure 7. With such a signal, the number of bits allocated according to the energy in the critical bands is increased beyond the 40 kb/s set in the first example, and the number of bits allocated according to a preselected bit allocation pattern is reduced below the 60 kb/s set in the first example.

Claims: Digital encoding apparatus for compressing a digital input signal to provide a compressed output signal, the apparatus comprising: first frequency dividing means (11) for receiving the digital input signal and for dividing the digital input signal into a plurality of frequency ranges; time dividing means for dividing in time at least one of the frequency ranges of the digital input signal into a plurality of frames; second frequency dividing means (12) for orthogonally transforming each frame to provide a plurality of spectral coefficients; means for grouping the plurality of spectral coefficients into critical bands; bit allocating means (304, 306) for allocating among the critical bands a total number of quantizing bits available for quantizing the spectral coefficients, the total number of bits including first bits and second bits, wherein the second bits are variable bits to be allocated among the critical bands according to signal energy in the critical bands, the bit allocating means comprising means (304) for allocating said second bits in response to signal energy in a data block derived by dividing the digital input signal in time and in frequency, characterized in that said first bits are bits to be allocated among the critical bands according to a selected one of a plurality of predetermined bit allocation patterns, wherein the bit allocating means additionally comprise bit pattern selecting means (305) for selecting one of a plurality of predetermined bit patterns, the bit pattern selecting means selecting a predetermined bit pattern having fewer bits allocated to high-frequency critical bands than to middle frequency critical bands when the digital input signal has low energy. Digital encoding apparatus of claim 1, characterized in that the bit allocating means includes a means (313) for apportioning the total number of quantizing bits available for quantizing the spectral coefficients between said first bits and said second bits. Digital encoding apparatus of claim 2, characterized in that the digital input signal has a spectrum having a smoothness, the apparatus includes a spectral smoothness index generating means (309) for generating a spectral smoothness index in response to the smoothness of the spectrum of the digital input signal, and the means for apportioning the total number of quantizing bits available for quantizing the spectral coefficients between said first bits and said second bits increases the number of quantizing bits allocated to said first bits and decreases the number of quantizing bits allocated to said second bits in response to an increase in the spectral smoothness index. Digital encoding apparatus of claim 3, characterized in that the spectral smoothness index generating means (309) derives the spectral smoothness index in response to a measured difference in energy between adjacent critical bands. Digital encoding apparatus of claim 3, characterized in that the apparatus additionally comprises a floating point processing means for floating point processing the spectral components and for generating floating point data for each critical band, and the spectral smoothness index generating means (309) derives the spectral smoothness index in response to a difference in floating point data between adjacent critical bands. Digital encoding apparatus of claim 1, characterized in that the ratio between said first bits and said second bits is constant. Digital encoding apparatus of one of the claims 1 to 6, characterized in that the bit pattern selecting means selects one of the plurality of predetermined bit patterns in response to the digital input signal. Digital encoding apparatus of one of the claims 1 to 6, characterized in that the bit pattern selecting means selects one of the plurality of predetermined bit patterns in response to energy in a critical band. Digital encoding apparatus of one of the claims 1 to 6, characterized in that the bit pattern selecting means (305) selects one of the plurality of predetermined bit patterns in response to a signal derived by further dividing in frequency, but not in time, one of the frequency ranges of the digital input signal. Digital encoding apparatus of one of the preceding claims, characterized in that each frame has a duration in time, and the time dividing means serves additionally for adaptively changing duration in time of the frames in each of the frequency ranges. Method for deriving compressed digital data from a non-compressed digital input signal, the method including the steps of: dividing the non-compressed digital input signal into a plurality of frequency ranges; dividing in time each of the frequency ranges of the non-compressed digital input signal into a plurality of frames; orthogonally transforming each frame to provide a plurality of spectral coefficients; grouping the plurality of spectral coefficients into critical bands; allocating among the critical bands a total number of quantizing bits available for quantizing the spectral coefficients, the total number of bits including first bits and second bits, wherein the second bits are variable bits to be allocated among the critical bands according to signal energy in the critical bands, wherein said second bits are allocated in response to signal energy in a data block derived by dividing the digital input signal in time and in frequency, and multiplexing the quantized spectral coefficients and quantizing word-length data to provide the compressed digital data, characterized in that said first bits are bits to be allocated among the critical band according to a selected one of a plurality predetermined bit allocation patterns, wherein a predetermined bit pattern having fewer bits allocated to high-frequency critical bands than to middle frequency critical bands is selected when the digital input signal has low energy. Method for deriving compressed digital data according to claim 11, characterized in that the method includes the additional step of apportioning the total number of quantizing bits available or quantizing the spectral coefficients between said first bits and said second bits. Method for deriving compressed digital data according to claim 12, characterized in that the non-compressed digital input data has a spectrum having a smoothness, the method includes the additional step of generating a spectral smoothness index in response to the smoothness of the spectrum of the non-compressed digital input signal, and in the step of a portioning the total number of quantizing bits available for quantizing the spectral coefficients between said first bits and said second bits the number of quantizing bits allocated to said first bits is increased and the number of quantizing bits allocated to said second bits is decreased in response to an increase in the spectral smoothness index. Method for deriving compressed digital data according to claim 13, characterized in that the step of generating a spectral smoothness index includes the step of deriving the spectral smoothness index in response to a measured difference in energy between adjacent critical bands. Method for deriving compressed digital data according to claim 13, characterized in that the method includes the additional step of floating point processing the spectral components and the additional step of generating floating point data for each critical band, and the step of generating a spectral smoothness index includes the step of deriving the spectral smoothness index in response to a difference in floating point data between adjacent critical bands. Method for deriving compressed digital data according to claim 11, characterized in that the ratio between said first bit and said second bit is constant. Method for deriving compressed digital data according to one of the claims 11 to 16, characterized in that one of the plurality of predetermined bit patterns is selected in response to the digital input signal. Method for deriving compressed digital data according to one of the claims 11 to 16, characterized in that one of the plurality of predetermined bit patterns is selected in response to energy in a critical band. Method for deriving compressed digital data according to one of the claims 11 to 16, characterized in that one of the plurality of predetermined bit patterns is selected in response to a signal derived by further dividing in frequency, but not in time, one of the frequency ranges of the digital input signal. Method for deriving compressed digital data according to one of the preceding claims, characterized in that each frame has a duration in time, and the step of dividing each frequency range by time includes the step of adaptively changing the duration in time of the frames in each frequency range.

Inventors: AKAGIRI KENZO, AKAGIRI, KENZO
Applicants: SONY CORP, SONY CORPORATION
Application year: 1992
Main classification: H04B1
IPC codes: H04B1