Search Images Maps Play YouTube News Gmail Drive More »
Sign in
Screen reader users: click this link for accessible mode. Accessible mode has the same essential features but works better with your reader.

Patents

  1. Advanced Patent Search
Publication numberUS5664056 A
Publication typeGrant
Application numberUS 08/272,872
Publication dateSep 2, 1997
Filing dateJul 8, 1994
Priority dateAug 2, 1991
Fee statusPaid
Also published asCA2075156A1, DE69232251D1, DE69232251T2, EP0525809A2, EP0525809A3, EP0525809B1, EP0805564A2, EP0805564A3, US5621856
Publication number08272872, 272872, US 5664056 A, US 5664056A, US-A-5664056, US5664056 A, US5664056A
InventorsKenzo Akagiri
Original AssigneeSony Corporation
Export CitationBiBTeX, EndNote, RefMan
External Links: USPTO, USPTO Assignment, Espacenet
Digital encoder with dynamic quantization bit allocation
US 5664056 A
Abstract
An encoder apparatus and method for compressing a digital input signal 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 derived from the analog signal is divided into frequency ranges. The digital signal in each of the frequency ranges is divided in time into blocks, the time duration of which may be adaptively varied. The blocks 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. Both embodiments give low quantizing noise levels with both broad spectrum signals and highly tonal signals.
Images(11)
Previous page
Next page
Claims(33)
I claim:
1. A digital encoding apparatus for compressing a digital input signal to provide a compressed output signal, the apparatus comprising:
frequency dividing means 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 blocks;
orthogonal transform means for orthogonally transforming each block to provide a plurality of spectral coefficients;
means for grouping by frequency the plurality of spectral coefficients from the orthogonal transform means into critical bands, each critical band having a band energy and a band frequency;
bit allocation pattern selecting means for selecting a predetermined bit allocation pattern from a plurality of predetermined bit allocation patterns;
first bit allocating means for allocating a total number of fixed bits among the critical bands to allocate to each critical band a number of fixed bits for quantizing each spectral coefficient in the critical band, the number of fixed bits allocated to each critical band being determined according to the selected predetermined bit allocation pattern;
second bit allocating means for allocating a total of number of variable bits among the critical bands to allocate to each critical band a number of variable bits for quantizing each spectral coefficient in the critical band, the number of variable bits allocated to each critical band being determined according to the band energy of the critical band; and
means for quantizing each spectral coefficient in each band using a number of bits equal to a sum of the number of fixed bits allocated for quantizing each spectral coefficient in the critical band and the number of variable bits allocated for quantizing each spectral coefficient in the critical band, the spectral coefficients in at least one of the critical bands being quantized using a number of fixed bits greater than zero and a number of variable bits greater than zero.
2. The digital encoding apparatus of claim 1, wherein the total number of fixed bits and the total number of variable bits each remain constant with time.
3. The digital encoding apparatus of claim 2, wherein:
the apparatus additionally comprises energy determining means for determining an energy of the digital input signal; and
the bit pattern selecting means selects a predetermined bit allocation pattern wherein fewer bits are allocated to critical bands having band frequencies towards higher frequencies than to critical bands having band frequencies towards middle frequencies when the energy determining means determines that the energy of the digital input signal is low.
4. The digital encoding apparatus of claim 2, wherein:
the apparatus additionally comprises energy determining means for determining the band energy of one of the critical bands; and
the bit pattern selecting means selects one of the plurality of predetermined bit patterns wherein fewer bits are allocated to critical bands having band frequencies towards higher frequencies than to critical bands having band frequencies towards middle frequencies when the energy determining means determines that the band energy in the one of the critical bands is low.
5. The digital encoding apparatus of claim 2, wherein:
the apparatus additionally comprises energy determining means for deriving a derived signal by further dividing one of the frequency ranges of the digital input signal in frequency, and for determining an energy of the derived signal; and
the bit allocation pattern selecting means selects one of the plurality of predetermined bit allocation patterns wherein fewer bits are allocated to critical bands towards higher frequencies than to critical bands towards middle frequencies when the energy determining means determines that the energy of the derived signal is low.
6. The digital encoding apparatus of claim 2, wherein:
each block has a duration in time, and
the time dividing means is additionally for changing the duration in time of the blocks in at least one of the frequency ranges in response to the digital input signal.
7. The digital encoding apparatus of claim 1, wherein:
each block has a duration in time, and
the time dividing means is additionally for changing the duration in time of the blocks in at least one of the frequency ranges in response to the digital input signal.
8. The digital encoding apparatus of claim 1, wherein:
a grand total number of bits is available for quantizing all the spectral coefficients; and
the apparatus additionally comprises means for dynamically apportioning the grand total number of bits between the total number of fixed bits and the total number of variable bits in response to the digital input signal.
9. The digital encoding apparatus of claim 8, wherein:
the apparatus additionally comprises energy determining means for determining an energy of the digital input signal; and
the bit pattern selecting means selects a predetermined bit pattern wherein fewer bits are allocated to critical bands having band frequencies towards higher frequencies than to critical bands having band frequencies towards middle frequencies when the energy determining means determines that the energy of the digital input signal is low.
10. The digital encoding apparatus of claim 8, wherein:
the apparatus additionally comprises energy determining means for determining the band energy of one of the critical bands; and
the bit pattern selecting means selects one of the plurality of predetermined bit allocation patterns wherein fewer bits are allocated to critical bands having band frequencies towards higher frequencies than to critical bands having band frequencies towards middle frequencies when the energy determining means determines that the band energy the one of the critical bands is low.
11. The digital encoding apparatus of claim 8, wherein:
the apparatus additionally comprises energy determining means for deriving a derived signal by further dividing one of the frequency ranges of the digital input signal in frequency, and for determining an energy of the derived signal; and
the bit allocation pattern selecting means selects one of the plurality of predetermined bit allocation patterns wherein fewer bits are allocated to critical bands having band frequencies towards higher frequencies than to critical bands having band frequencies towards middle frequencies when the energy determining means determines that the energy of the derived signal is low.
12. The digital encoding apparatus of claim 8, wherein:
the digital input signal has a spectrum having a smoothness,
the apparatus includes a spectral smoothness index generating means 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 grand total number of quantizing bits between the total number of fixed bits and the total number of variable bits increases the total number of fixed bits and decreases the total number of variable bits in response to an increase in the spectral smoothness index.
13. The apparatus of claim 12, wherein the spectral smoothness index generating means derives the spectral smoothness index in response to a measured difference in energy between adjacent critical bands.
14. The apparatus of claim 12, wherein:
the apparatus additionally comprises a floating point processing means for floating point processing the spectral coefficients in each critical band, and for generating floating point data for each critical band, and
the spectral smoothness index generating means derives the spectral smoothness index in response to a difference in floating point data between adjacent critical bands.
15. The digital encoding apparatus of claim 8, wherein:
each block has a duration in time, and
the time dividing means is additionally for changing the duration in time of the blocks in at least one of the frequency ranges in response to the input signal.
16. A system for compressing a digital input signal to provide a compressed digital signal, and for expanding the compressed digital signal to provide a digital output signal, the system comprising:
a compressor comprising:
means for dividing the digital input signal into a plurality of frequency ranges;
means for dividing in time each of the frequency ranges of the digital input signal into a plurality of blocks;
orthogonal transform means for orthogonally transforming each block to provide a plurality of spectral coefficients;
means for grouping by frequency the plurality of spectral coefficients from the orthogonal transform means into critical bands, each critical band having a band energy and a band frequency;
bit allocation pattern selecting means for selecting a predetermined bit allocation pattern from a plurality of predetermined bit allocation patterns;
first bit allocating means for allocating a total number of fixed bits among the critical bands to allocate to each critical band a number of fixed bits for quantizing each spectral coefficient in the critical band, the number of fixed bits allocated to each critical band being determined according to the selected predetermined bit allocation pattern;
second bit allocating means for allocating a total number of variable bits among the critical bands to allocate to each critical band a number of variable bits for quantizing each spectral coefficient in the band, the number of variable bits allocated to each critical band being determined according to the band energy of the critical band;
means for quantizing each spectral coefficient in each band using a number of bits equal to a sum of the number of fixed bits allocated for quantizing each spectral coefficient in the critical band and the number of variable bits allocated for quantizing each spectral coefficient in the critical band, and for generating word length data indicating the sum for each critical band, the spectral coefficients in at least one of the critical bands being quantized using a number of fixed bits greater than zero and a number of variable bits greater than zero; and
means for multiplexing the quantized spectral coefficients and the word length data to provide the compressed digital signal, and a decoder, comprising:
demultiplexing means for extracting the word-length data from the compressed digital signal, and for extracting the spectral coefficients from the compressed digital signal using the word-length data;
means for grouping by frequency the extracted spectral coefficients into a plurality of frequency ranges corresponding to the plurality of frequency ranges in the encoder;
means for performing an inverse orthogonal transform on the spectral coefficients in each frequency range to generate blocks of time-dependent data in each frequency range; and
means for combining the blocks of time-dependent data in each frequency range to provide the digital output signal.
17. An apparatus for deriving a compressed digital recording signal from a digital input signal for recording on a recording medium, the apparatus comprising:
means for dividing the digital input signal into a plurality of frequency ranges;
means for dividing in time each of the frequency ranges of the digital input signal into a plurality of blocks;
orthogonal transform means for orthogonally transforming each block to provide a plurality of spectral coefficients;
means for grouping by frequency the plurality of spectral coefficients from the orthogonal transform means into critical bands, each critical band having a band energy and a band frequency;
bit allocation pattern selecting means for selecting a predetermined bit allocation pattern from a plurality of predetermined bit allocation patterns;
first bit allocating means for allocating a total number of fixed bits among the critical bands to allocate to each critical band a number of fixed bits for quantizing each spectral coefficient in the critical band, the number of fixed bits allocated to each critical band being determined according to the selected predetermined bit allocation pattern;
second bit allocating means for allocating a total number of variable bits among the critical bands to allocate to each critical band a number of variable bits for quantizing each spectral coefficient in the band, the number of variable bits allocated to each critical band being determined according to the band energy;
means for quantizing each spectral coefficient in each band using a number of bits equal to a sum of the number of fixed bits allocated for quantizing each spectral coefficient in the critical band and the number of variable bits allocated for quantizing each spectral coefficient in the critical band, the spectral coefficients in at least one of the critical band being quantizing using a number of fixed bits greater than zero and a number of variable bits greater than zero, and for generating word length data indicating the sum for each critical band;
means for multiplexing the quantized spectral coefficients and word length data to provide the compressed digital signal; and
recording means for recording the compressed digital signal on the recording medium.
18. The apparatus of claim 17, wherein the recording medium is an optical disc.
19. The apparatus of claim 17, wherein the recording medium includes a semiconductor memory.
20. The apparatus of claim 17, wherein the total number of fixed bits and the total number of variable bits each remain constant with time.
21. The apparatus of claim 20, wherein:
each block has a duration in time, and
the means for dividing each frequency range by time includes means for changing the duration in time of the blocks in at least one of the frequency ranges in response to the digital input signal.
22. The apparatus of claim 17, wherein:
a grand total number of bits is available for quantizing all the spectral coefficients; and
the apparatus additionally comprises means for dynamically apportioning the grand total number of bits between the total number of fixed bits and the total number of variable bits in response to the digital input signal.
23. The apparatus of claim 22, wherein:
the digital input signal has a spectrum having a smoothness,
the apparatus additionally includes means 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 grand total number of bits between the total number of fixed bits and the total number of variable bits increases the total number of fixed bits and decreases the total number of variable bits in response to an increase in the spectral smoothness index.
24. The apparatus of claim 22, wherein:
each block has a duration in time, and
the means for dividing each frequency range by time includes means for changing the duration in time of the blocks in at least one of the frequency ranges in response to the digital input signal.
25. A method for deriving a compressed digital signal data from a digital input signal, the method including the steps of:
dividing the 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 blocks;
orthogonally transforming each block to provide a plurality of spectral coefficients;
grouping by frequency the plurality of spectral coefficients provided by the orthogonal transform step into critical bands, each critical band having a band energy and a band frequency;
providing a total number of variable bits and a total number of fixed bits, the total number of fixed bits being arranged in a plurality of predetermined bit allocation patterns;
selecting one of the plurality of predetermined bit allocation patterns as a selected predetermined bit allocation pattern;
allocating the total number of fixed bits among the critical bands to allocated to each critical band a number of fixed bits for quantizing each spectral coefficient in the critical band, the number of fixed bits allocated to each critical band being determined according to the selected predetermined bit allocation pattern;
allocating the total number of variable bits among the critical bands to allocate to each critical band a number of variable bits for quantizing each spectral coefficient in the critical band, the number of quantizing bits allocated to each critical band being determined according to the band energy of the critical band;
quantizing each spectral coefficient in each critical band using a number of bits equal to a sum of the number of fixed bits allocated for quantizing each spectral coefficient in the critical band and the number of variable bits allocated for quantizing each spectral coefficient in the critical band, the spectral coefficients in at least one of the critical band being quantized using a number of fixed bits greater than zero and a number of variable bits greater than zero;
generating word length data indicating the sum for each critical band; and
multiplexing the quantized spectral coefficients and word length data to provide the compressed digital signal.
26. The method of claim 5, wherein, in the step of providing a total number of fixed bits and a total number of variable bits, the total number of fixed bits provided and the total number of variable bits provided each remain constant with time.
27. The method of claim 26, wherein:
in the step of dividing in time, each block has a duration in time, and
the step of dividing in time includes the step of changing the duration in time of the blocks in at least one of the frequency ranges in response to the digital input signal.
28. The method of claim 25, wherein the step of providing a total number of variable bits and a total number of fixed bits includes the steps of:
providing a grand total number of bits for quantizing all the spectral coefficients; and
dynamically apportioning the grand total number of bits between the total number of fixed bits and the total number of variable bits in response to the digital input signal.
29. The method of claim 28, wherein:
the digital input signal 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 apportioning the grand total number of bits between the total number of fixed bits and the total number of variable bits, the total number of fixed bits is increased and the total number of variable bits is decreased in response to an increase in the spectral smoothness index.
30. The method of claim 28, wherein:
in the step of dividing in time, each block has a duration in time, and
the step of dividing in time includes the step of changing the duration in time of the blocks in at least one of the frequency ranges in response to the digital input signal.
31. The method of claim 25, wherein:
the method additionally comprises the step of determining an energy of the digital input signal; and
in the step of selecting one of the plurality of predetermined bit allocation patterns, one of the plurality of predetermined bit allocation patterns wherein fewer bits are allocated to critical bands having band frequencies towards higher frequencies than to critical bands having band frequencies towards middle frequencies is selected when the energy determining step determines that the energy of the digital input signal is low.
32. The method of claim 25, wherein:
the method additionally comprises the step of determining the band energy of one of the critical bands; and
in the step of selecting one of the plurality of predetermined bit allocation patterns, one of the plurality of predetermined bit patterns wherein fewer bits are allocated to critical bands having band frequencies towards higher frequencies than to critical bands having band frequencies towards middle frequencies is selected when the energy determining step determines that the band energy in the one of the critical bands is low.
33. The method of claim 25, wherein:
the method additionally comprises the steps of:
deriving a derived signal by further dividing one of the frequency ranges of the digital input signal in frequency, and
determining an energy of the derived signal; and
in the step of selecting one of the plurality of predetermined bit allocation patterns, one of the plurality of predetermined bit allocation patterns wherein fewer bits are allocated to critical bands having band frequencies towards higher frequencies than to critical bands having band frequencies towards middle frequencies is selected when the energy determining step determines that the energy of the derived signal is low.
Description

This is a continuation of application Ser. No. 07/924,298 filed Aug. 3, 1992 now abandoned.

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)=δ+1/2 log22(1+γ) (k)/D](1)

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.

Accordingly, it is an object of the present invention to provide a circuit in which bits are allocated among the critical bands such that the quantization noise perceived by a human listener is minimized, and that a satisfactory signal-to-noise ratio can be measured using a high-tonality input signal, such as a 1 kHz sine wave.

According to a first aspect of the invention, a digital encoding apparatus for compressing a digital input signal to provide a compressed digital output signal is provided. The apparatus includes a first frequency dividing device that receives the digital input signal and divides the digital input signal into a plurality of frequency ranges. A time dividing device divides at least one of the frequency ranges of the digital input signal in time. The result of this time division is a plurality of frames. A second frequency dividing device orthogonally transforms each frame to provide a plurality of spectral coefficients. A device groups the plurality of spectral coefficients into critical bands. A bit allocating device allocates the total number of quantizing bits available for quantizing the spectral coefficients among the critical bands. The total number of bits includes fixed bits, which are allocated among the critical bands according to a selected one of a plurality predetermined bit allocation patterns. The total number of bits also includes variable bits, which are allocated among the critical bands according to signal energy in the critical bands. Finally, the apparatus includes a device that allocates the variable bits among the critical bands in response to signal energy in a data block derived by dividing the digital input signal in time and in frequency.

In a first variation, number of fixed bits is constant, and the number of variable bits is constant.

In a second variation, the bit allocation device includes a device for apportioning the total number of quantizing bits available for quantizing the spectral coefficients between fixed bits and variable bits. The apportionment is made in response to the smoothness of the spectrum of the digital input signal.

In a second embodiment of the invention, a digital encoding apparatus for compressing a digital input signal to provide a compressed digital output signal is provided. The digital input signal represents an audio information signal, and the compressed digital output signal, after expansion, conversion to an analog signal, and reproduction of the analog signal, is for perception by the human ear. The second embodiment of the apparatus comprises a first frequency dividing device that receives the digital input signal and divides the digital input signal into a plurality of frequency ranges. A time dividing device divides in time at least one of the frequency ranges of the digital input signal. The result of the time division is a plurality of frames. A second frequency dividing device orthogonally transforms each frame to provide a plurality of spectral coefficients. A device groups the plurality of spectral coefficients into critical bands. A noise factor setting device sets a noise shaping factor in response to the digital input signal. Finally, a bit allocating device allocates the total number of quantizing bits available for quantizing the spectral coefficients among the critical bands. The quantizing bits are allocated among the critical bands according to the noise-shaping factor.

In a first method according to the invention for deriving compressed digital data from a non-compressed digital input signal, the non-compressed digital input signal is divided into a plurality of frequency ranges. Each of the frequency ranges of the non-compressed digital input signal is divided in time into a plurality of frames. Each frame is orthogonally transformed to provide a plurality of spectral coefficients. The plurality of spectral coefficients is grouped into critical bands. The total number of quantizing bits available for quantizing the spectral coefficients is allocated among the critical bands. The total number of bits includes fixed bits that are allocated among the critical bands according to a selected one of a plurality predetermined bit allocation patterns. The total number of bits also includes variable bits that are allocated among the critical bands according to signal energy in the critical bands. Finally, the quantized spectral coefficients and quantizing word length data are multiplexed to provide the compressed digital data.

In a second method according to the invention of deriving compressed digital data from a non-compressed digital input signal, the non-compressed digital input signal is divided into a plurality of frequency ranges. Each of the frequency ranges of the non-compressed digital input signal is divided in time into a plurality of frames. Each frame is orthogonally transformed to provide a plurality of spectral coefficients. The plurality of spectral coefficients is grouped into critical bands. A noise shaping factor is set in response to the non-compressed digital input signal. The total number of quantizing bits available for quantizing the spectral coefficients is allocated among the critical bands according to the noise-shaping factor. Finally, the quantized spectral coefficients and quantizing word length data are multiplexed to provide the compressed digital data.

The invention also encompasses a medium for recording compressed digital data derived from a non-compressed digital input signal according to either of the two methods set forth above.

Finally, the invention encompasses a decoding apparatus for expanding compressed digital data derived from a non-compressed digital input signal according to either of the methods set forth above. The decoding apparatus according to the invention comprises a demultiplexer that extracts the quantizing word length data from the compressed digital data and extracts the spectral coefficients from the compressed digital input signal using the quantizing word length data. A device groups the extracted spectral coefficients into a plurality of frequency ranges. A device performs an inverse orthogonal transform on the spectral coefficients in each frequency range to generate frames of time-dependent data in each frequency range. Finally, a device combines the frames of time-dependent data in each frequency range to provide the digital output signal.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block circuit diagram of an encoding apparatus according to the present invention.

FIG. 2 shows a practical example of how the digital input signal is divided in frequency and time in the circuit shown in FIG. 1.

FIG. 3 is a block diagram illustrating the bit allocation circuit of the adaptive bit allocation and encoding circuit of FIG. 1. The bit allocation circuit has a fixed ratio between fixed bits and variable bits.

FIG. 4 shows a Burke spectrum.

FIG. 5 is a graph showing an example of how the circuit shown in FIG. 1 allocates bits to a signal having a relatively flat spectrum.

FIG. 6 is a graph showing the quantization noise spectrum for the signal shown in FIG. 5.

FIG. 7 is a graph showing an example of how the circuit shown in FIG. 1 allocates bits to a high tonality signal.

FIG. 8 is a graph showing the quantization noise spectrum for the signal shown in FIG. 7.

FIG. 9 is a block circuit diagram showing a decoding apparatus which is a counterpart of the encoding apparatus shown in FIG. 1.

FIG. 10 is a block diagram illustrating a first alternative bit allocation circuit of the adaptive bit allocation and encoding circuit of FIG. 1. The first alternative bit allocation circuit provides a variable apportionment of quantizing bits between fixed bits and variable bits.

FIG. 11 is a block diagram illustrating a second alternative bit allocation circuit of the adaptive bit allocation and encoding circuit of FIG. 1. The second alternative bit allocation circuit allocates bits according to a variable noise shaping factor.

FIG. 12 is a graph showing an example of how the circuit shown in FIG. 1 using the second alternative bit allocation circuit allocates bits to a signal having a relatively fiat spectrum.

FIG. 13 is a graph showing the quantization noise spectrum for the signal shown in FIG. 12.

FIG. 14 is a graph showing an example of how the circuit shown in FIG. 1 using the second alternative bit allocation circuit allocates bits to a high tonality signal.

FIG. 15 is a graph showing the quantization noise spectrum for the signal shown in FIG. 14.

DETAILED DESCRIPTION OF THE INVENTION

Referring to FIG. 1, an 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 FIG. 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. The orthogonal transform is performed on blocks of data obtained by dividing each frame in time by a divisor of one or more. The divisor is changed in response to 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 FIG. 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.

FIG. 2 shows a practical example of the block sizes of the frequency- and time-divided digital signals fed into the MDCT circuits 13, 14 and 15. In FIG. 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 BLL in each block bL in the lower frequency range of 0 Hz to 5 kHz is 256, for example. The number of samples BLM in each block bM in the middle frequency range of 5 to 10 kHz is also 256, for example. Thus, in the low and middle frequency ranges, the block length is equal to the frame length.

The number of samples BLH in each block bH in the higher frequency range of 10 to 20 kHz is BLL /2 or BLM /2, i.e., 128. This is one-half of the number of samples in the blocks bL and bM 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. Using shorter-length blocks in the high frequency range increases the temporal resolution in this range, in which the signal dynamics are most likely to change quickly.

Additionally, the respective frames may be further adaptively divided along the time axis by factors of 2 or 4 at times when the input signal changes quickly.

Returning to FIG. 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.

FIG. 3 is a functional block diagram showing a 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 (FIG. 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.

FIG. 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, FIG. 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 Burke spectrum.

The operation of the adaptive bit allocation circuit will now be described in more detail by referring to FIG. 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 FIG. 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 Burke 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. Bits are allocated among the critical bands according to the formula:

b(k)=δ+1/2 log22 (k)/D]           (2)

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 energy in the k'th critical band, and D is the mean quantization noise power over all the entire frequency spectrum. 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.

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 or blocks 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.

FIG. 5 shows how bits are allocated among the critical bands for a signal having a relatively flat spectrum. FIG. 6 shows the corresponding quantization noise spectrum. FIG. 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. FIG. 8 shows the corresponding quantization noise spectrum.

In FIGS. 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 FIGS. 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 FIGS. 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 FIGS. 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 FIGS. 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.

FIG. 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 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 FIGS. 10 and 11.

FIG. 10 is a functional block diagram showing a practical example for explaining the function of a first variation on the adaptive bit allocation and encoding circuits 16 to 18 shown in FIG. 1. In the basic embodiment, 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 practical example just described the ratio is 60:40. In the first variation, 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 first variation, 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 FIG. 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 basic embodiment, 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 first variation, 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 first variation 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 or blocks along the time axis.

In the first variation, 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 FIG. 10, the spectral smoothness calculating circuit 309 receives the output of the energy calculating circuit 303 and calculates spectral smoothness index according to the formula: ##EQU1## where SSI is the spectral smoothness index, and Si is the spectral energy in the i'th critical band.

The energy calculating circuit is described above in connection with FIG. 3, and so will not be described again here. The calculated spectral smoothness index is fed into the bit apportionment ratio circuit 313, which also receives the output of the total usable bit circuit 302. The bit apportionment ratio circuit apportions the total number of usable bits between bits to be allocated according to signal energy in the critical bands and bits to be allocated according to a predetermined bit allocation pattern in response to the spectral smoothness index according to the following formula: ##EQU2##

The output of the bit apportionment circuit 313 is connected to the bit allocating circuits 311 and 312 where it indicates the number of bits available for allocation by the respective bit allocating circuits 311 and 312.

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 Burke spectrum. Bits are allocated among the critical bands according to the formula:

b(k)=δ+1/2log22 (k)/D]            (5)

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 energy in the k'th critical band, and D is the mean quantization noise power over all the entire frequency spectrum. 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. 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.

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 FIGS. 5 and 7, and the corresponding quantization noise spectra are shown in FIGS. 6 and 8, respectively. FIG. 5 shows how bits are allocated among the critical bands for a signal having a relatively flat spectrum. FIG. 6 shows the corresponding quantization noise spectrum. FIG. 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. FIG. 8 shows the corresponding quantization noise spectrum.

In FIGS. 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 FIGS. 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 FIGS. 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 FIGS. 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 FIGS. 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 FIGS. 5 through 8 are the same as those obtained for the basic embodiment. Differences between the basic embodiment and the first variation appear when the signal spectrum becomes flatter than that shown in FIG. 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 basic embodiment, and the number of bits allocated according to a preselected bit allocation pattern is increased beyond the 60 kb/s set in the basic embodiment. Differences between the basic embodiment and the first variation also appear when the signal spectrum becomes more tonal than the signal shown in FIG. 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 basic embodiment, and the number of bits allocated according to a preselected bit allocation pattern is reduced below the 60 kb/s set in the basic embodiment.

A second variation on the adaptive bit allocation part of the circuit is shown in FIG. 11. FIG. 11 is a functional block diagram showing a practical example for explaining the function of the second variation on the adaptive bit allocation and encoding circuits 16 to 18 shown in FIG. 1.

Spectral coefficients from the MDCT circuits 13 to 15 in FIG. 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 is the same as the energy calculating circuit in FIG. 3, and will not be described again here. The energy calculating circuit calculates signal energies in each critical band, or in sub bands obtained by subdividing the higher frequency critical bands.

The spectral coefficients from the MDCT circuits 13 through 15 (FIG. 1) are also supplied via the input terminal 301 to the circuit for diminishing high range signal levels 308. The band energies calculated by the energy calculating circuit 303 are supplied to the circuit for diminishing high frequency signal levels 308, the spectral smoothness calculating circuit 309, and to the noise shaping factor circuit 310.

The circuit for diminishing the high frequency signal levels 308 decreases the high frequency signal level to a larger extent when the signal energies in the critical bands at 4 kHz and above are low. This takes into account the diminished sensitivity of the human hearing mechanism at higher frequencies.

The spectral smoothness calculating circuit 309 is the same as the spectral smoothness calculating circuit 309 described above in connection with FIG. 10, and so will not be described again here.

In response to the output of the spectral smoothness calculating circuit 309, the noise shaping factor circuit 310 decreases the noise shaping factor when the spectral smoothness index is small, i.e., when the spectrum is smooth. The spectral smoothness index is calculated by dividing of the sum of the differences in signal energy between adjacent critical bands over the entire frequency range, by the sum, over the entire frequency range, of the signal energies in all the critical bands.

The energy-dependent bit allocation circuit 304 receives the calculated noise shaping factor from the noise shaping factor circuit 310 and the signal spectrum with decreased high frequency signal level from the high frequency signal level decreasing circuit 308 and carries out bit allocation in accordance with the formula (1). The energy-dependent bit allocation circuit 304 is energy dependent because of the band energy term in the formula (1). The bit allocation values generated by the circuit 304 are provided via the output terminal 307 and are used for quantization.

FIGS. 12 and 14 show typical bit allocations for signals having differing spectral content. FIGS. 13 and 15 show the corresponding quantization noise spectra. FIG. 12 shows how the bits are allocated among the critical bands for a signal with a relatively flat spectrum. FIG. 13 shows the corresponding quantization noise spectrum. FIG. 14 shows how the bits are allocated among the critical bands for a signal with high tonality, i.e., a signal that is perceived by a listener as having a definite pitch. FIG. 15 shows the corresponding quantization noise spectrum.

In FIGS. 13 and 15, curves a and b indicate the signal level and the quantization noise level, respectively.

In FIGS. 12 and 13, the signal spectrum is relatively flat. The spectral smoothness index is small, and the noise shaping factor consequently approaches minus 1. On the other hand, when the signal is relatively tonal, as shown in FIGS. 14 and 15, the spectral smoothness index is large, which reduces the noise shaping factor to close to zero. This changes the quantization noise spectrum to close to white. This leads to an improved signal-to-noise ratio in the presence of tonal signals, such as single frequency (or narrow bandwidth) signals.

Patent Citations
Cited PatentFiling datePublication dateApplicantTitle
US4184049 *Aug 25, 1978Jan 15, 1980Bell Telephone Laboratories, IncorporatedTransform speech signal coding with pitch controlled adaptive quantizing
US4455649 *Jan 15, 1982Jun 19, 1984International Business Machines CorporationMethod and apparatus for efficient statistical multiplexing of voice and data signals
US4535472 *Nov 5, 1982Aug 13, 1985At&T Bell LaboratoriesAdaptive bit allocator
US4896362 *Apr 22, 1988Jan 23, 1990U.S. Philips CorporationSystem for subband coding of a digital audio signal
US4932062 *May 15, 1989Jun 5, 1990Dialogic CorporationMethod and apparatus for frequency analysis of telephone signals
US4949383 *Aug 21, 1988Aug 14, 1990Bristish Telecommunications Public Limited CompanyFrequency domain speech coding
US4956871 *Sep 30, 1988Sep 11, 1990At&T Bell LaboratoriesImproving sub-band coding of speech at low bit rates by adding residual speech energy signals to sub-bands
US4964166 *May 26, 1988Oct 16, 1990Pacific Communication Science, Inc.Adaptive transform coder having minimal bit allocation processing
US4972484 *Nov 20, 1987Nov 20, 1990Bayerische Rundfunkwerbung GmbhMethod of transmitting or storing masked sub-band coded audio signals
US5042069 *Apr 18, 1989Aug 20, 1991Pacific Communications Sciences, Inc.Methods and apparatus for reconstructing non-quantized adaptively transformed voice signals
US5049992 *Aug 27, 1990Sep 17, 1991Zenith Electronics CorporationHDTV system with receivers operable at different levels of resolution
US5105463 *Nov 27, 1989Apr 14, 1992U.S. Philips CorporationSystem for subband coding of a digital audio signal and coder and decoder constituting the same
US5109417 *Dec 29, 1989Apr 28, 1992Dolby Laboratories Licensing CorporationLow bit rate transform coder, decoder, and encoder/decoder for high-quality audio
US5115240 *Sep 21, 1990May 19, 1992Sony CorporationMethod and apparatus for encoding voice signals divided into a plurality of frequency bands
US5117228 *Oct 17, 1990May 26, 1992Victor Company Of Japan, Ltd.System for coding and decoding an orthogonally transformed audio signal
US5125030 *Jan 17, 1991Jun 23, 1992Kokusai Denshin Denwa Co., Ltd.Speech signal coding/decoding system based on the type of speech signal
US5134475 *Dec 11, 1990Jul 28, 1992At&T Bell LaboratoriesAdaptive leak hdtv encoder
US5142656 *Nov 4, 1991Aug 25, 1992Dolby Laboratories Licensing CorporationLow bit rate transform coder, decoder, and encoder/decoder for high-quality audio
US5151941 *Sep 7, 1990Sep 29, 1992Sony CorporationDigital signal encoding apparatus
US5157760 *Apr 16, 1991Oct 20, 1992Sony CorporationDigital signal encoding with quantizing based on masking from multiple frequency bands
US5166686 *Jun 29, 1990Nov 24, 1992Nec CorporationVariable length block coding with changing characteristics of input samples
US5222189 *Jan 29, 1990Jun 22, 1993Dolby Laboratories Licensing CorporationLow time-delay transform coder, decoder, and encoder/decoder for high-quality audio
US5235671 *Oct 15, 1990Aug 10, 1993Gte Laboratories IncorporatedDynamic bit allocation subband excited transform coding method and apparatus
US5264846 *Mar 27, 1992Nov 23, 1993Yoshiaki OikawaCoding apparatus for digital signal
US5268685 *Mar 27, 1992Dec 7, 1993Sony CorpApparatus with transient-dependent bit allocation for compressing a digital signal
EP0145788A1 *Jun 1, 1984Jun 26, 1985Sony CorporationMethod and apparatus for transmitting digital signal
EP0409248A2 *Jul 19, 1990Jan 23, 1991Sony CorporationSignal encoding apparatus
EP0420745A2 *Sep 25, 1990Apr 3, 1991Sony CorporationDigital signal encoding apparatus
Non-Patent Citations
Reference
1Brandenburg et al., "Aspec: Adaptive Spectral Entropy Coding of High Quality Music Signals," Audio Engineering Society Preprint No. 3011 (1991 Feb.).
2 *Brandenburg et al., Aspec: Adaptive Spectral Entropy Coding of High Quality Music Signals, Audio Engineering Society Preprint No. 3011 (1991 Feb.).
3Davidson et al., "Low Complexity Transform Coder for Satellite Link Applications" Audio Engineering Society Preprint No. 2966 (1990 Sep. ).
4 *Davidson et al., Low Complexity Transform Coder for Satellite Link Applications Audio Engineering Society Preprint No. 2966 (1990 Sep. ).
5Esteban et al., "Application of Quadrature Mirror Filters To Split Band Voice Coding Schemes," Record of the 1977 ICASSP, pp. 191-195 (1977 May).
6 *Esteban et al., Application of Quadrature Mirror Filters To Split Band Voice Coding Schemes, Record of the 1977 ICASSP, pp. 191 195 (1977 May).
7G. Thiele et al., "Low Bit-Rate Coding of High-Quality Audio Signals; an Introduction to the MASCAM system", EBU Review, Technical, No. 230, pp. 158-181 (Aug. 1988).
8 *G. Thiele et al., Low Bit Rate Coding of High Quality Audio Signals; an Introduction to the MASCAM system , EBU Review, Technical, No. 230, pp. 158 181 (Aug. 1988).
9Johnston, "Transform Coding of Audio Signals Using Perceptual Noise Criteria," 6 IEEE Trans. on Selected Areas in Communications, 314-323 (1988 Feb.).
10 *Johnston, Transform Coding of Audio Signals Using Perceptual Noise Criteria, 6 IEEE Trans. on Selected Areas in Communications, 314 323 (1988 Feb.).
11Rothweiler, "Polyphase Quadrature Filters--A New Subband Coding Technique," 3 Proc. 1983 ICASSP 1280-1283 (1983 Apr.).
12 *Rothweiler, Polyphase Quadrature Filters A New Subband Coding Technique, 3 Proc. 1983 ICASSP 1280 1283 (1983 Apr.).
13Schroeder et al., "High Quality Digital Audio Encoding with 3.0 Bits/Sample Using Adaptive Transform Coding," Audio Engineering Society Reprint No. 2321 (1986 Mar.).
14 *Schroeder et al., High Quality Digital Audio Encoding with 3.0 Bits/Sample Using Adaptive Transform Coding, Audio Engineering Society Reprint No. 2321 (1986 Mar.).
15Stoll et al., "Masking-Pattern Adapted Sub-Band Coding: Use of the Dynamic Bit-Rate Margin," Audio Engineering Society Preprint No. 2585 (1988 Mar.).
16 *Stoll et al., Masking Pattern Adapted Sub Band Coding: Use of the Dynamic Bit Rate Margin, Audio Engineering Society Preprint No. 2585 (1988 Mar.).
17Thiele et al., "Low Bit-Rate Coding of High-Quality Audio Signals--An Introduction to MASCAM System," 230 EBU Technical Review 71-93 (1988 Aug.).
18 *Thiele et al., Low Bit Rate Coding of High Quality Audio Signals An Introduction to MASCAM System, 230 EBU Technical Review 71 93 (1988 Aug.).
19Y. Mahieux & J. P. Petit, "Transform Coding of Audio Signals at 64 kbit/s," Globecom 90, vol. 1, pp. 518-522 (Dec. 1990).
20 *Y. Mahieux & J. P. Petit, Transform Coding of Audio Signals at 64 kbit/s, Globecom 90, vol. 1, pp. 518 522 (Dec. 1990).
Referenced by
Citing PatentFiling datePublication dateApplicantTitle
US5819211 *Feb 26, 1996Oct 6, 1998Samsung Electronics Co., Ltd.Adaptive transform acoustic coding circuit formed in a single application specific integrated circuit of a mini disk system
US5864800 *Jan 4, 1996Jan 26, 1999Sony CorporationMethods and apparatus for processing digital signals by allocation of subband signals and recording medium therefor
US5873065 *Dec 7, 1994Feb 16, 1999Sony CorporationTwo-stage compression and expansion of coupling processed multi-channel sound signals for transmission and recording
US5924064 *Oct 7, 1996Jul 13, 1999Picturetel CorporationVariable length coding using a plurality of region bit allocation patterns
US6029136 *Nov 7, 1996Feb 22, 2000Sony CorporationBand dividing/synthesizing filter with reduced memory requirements
US6038369 *Sep 8, 1997Mar 14, 2000Sony CorporationSignal recording method and apparatus, recording medium and signal processing method
US6061649 *Jun 12, 1995May 9, 2000Sony CorporationSignal encoding method and apparatus, signal decoding method and apparatus and signal transmission apparatus
US6094636 *Nov 26, 1997Jul 25, 2000Samsung Electronics, Co., Ltd.Scalable audio coding/decoding method and apparatus
US6104321 *Jul 15, 1994Aug 15, 2000Sony CorporationEfficient encoding method, efficient code decoding method, efficient code encoding apparatus, efficient code decoding apparatus, efficient encoding/decoding system, and recording media
US6108625 *Apr 2, 1998Aug 22, 2000Samsung Electronics Co., Ltd.Scalable audio coding/decoding method and apparatus without overlap of information between various layers
US6181745 *Mar 9, 1996Jan 30, 2001Robert Bosch GmbhProcess for monitoring the quantization quality in digital radio or television transmission systems
US6434519 *Jul 19, 1999Aug 13, 2002Qualcomm IncorporatedMethod and apparatus for identifying frequency bands to compute linear phase shifts between frame prototypes in a speech coder
US6697775Mar 29, 2002Feb 24, 2004Matsushita Electric Industrial Co., Ltd.Audio coding method, audio coding apparatus, and data storage medium
US6870907 *Oct 14, 1998Mar 22, 2005Sony CorporationData distribution system, distribution equipment, terminal equipment and data distribution method
US7199954Jul 15, 2003Apr 3, 2007Hitachi Global Storage Technologies Netherlands, B.V.Method, apparatus and program storage device for determining sector block sizes using existing controller signals
US8494843 *Dec 17, 2009Jul 23, 2013Electronics And Telecommunications Research InstituteEncoding and decoding apparatuses for improving sound quality of G.711 codec
US20090248407 *Mar 29, 2007Oct 1, 2009Panasonic CorporationSound encoder, sound decoder, and their methods
US20100161322 *Dec 17, 2009Jun 24, 2010Electronics And Telecommunications Research InstituteEncoding and decoding apparatuses for improving sound quality of g.711 codec
CN101989428BJul 31, 2009Jul 4, 2012华为技术有限公司Bit distribution method, coding method, decoding method, coder and decoder
WO2001006494A1 *Jul 18, 2000Jan 25, 2001Qualcomm IncMethod and apparatus for identifying frequency bands to compute linear phase shifts between frame prototypes in a speech coder
Classifications
U.S. Classification704/200.1, 704/204
International ClassificationH04B1/66
Cooperative ClassificationH04B1/665
European ClassificationH04B1/66M
Legal Events
DateCodeEventDescription
Sep 30, 2008FPAYFee payment
Year of fee payment: 12
Mar 2, 2005FPAYFee payment
Year of fee payment: 8
Dec 18, 2000FPAYFee payment
Year of fee payment: 4
Jan 20, 1998CCCertificate of correction