|
|
|
| United States Patent | 5388181 |
| Link to this page | http://www.wikipatents.com/5388181.html |
| Inventor(s) | Anderson; David J. (2955 Lakehurst, Ann Arbor, MI 48105);
Lee; Donghoon (2442 Stone Dr., Ann Arbor, MI 48105);
Neuhoff; David L. (2675 Newport Rd., Ann Arbor, MI 48103);
Nemri; Omar A. (1324 McIntyre, Ann Arbor, MI 48105) |
| Abstract | The digitally sampled data is split into a plurality of subbands each
covering a different frequency range. The subbands are each individually
expanded to normalize the energy in each band and the subbands are
converted by FFT to the frequency domain and the magnitude and phase
portions are processed by different techniques based on psychoacoustic
principles. Magnitude data are processed by tree structured vector
processing to develop code books for each subband which are unique to each
song. Phase data are uniformly quantized with dynamic bit allocation used
to increase resolution on transient passages. |
|
|
|
Title Information  |
|
|
|
|
|
Drawing from US Patent 5388181 |
|
|
Digital audio compression system |
|
|
|
|
|
| Publication Date |
February 7, 1995 |
|
|
|
|
|
| Filing Date |
September 29, 1993 |
|
|
|
|
|
|
|
|
|
|
|
| Parent Case |
This is a continuation of copending application(s) Ser. No. 07/582,715
filed on Sep. 13, 1990, now abandoned, which is a continuation-in-part of
U.S. patent application Ser. No. 530,547, filed May 29, 1990, now
abandoned entitled "Digital Audio Compression System." |
|
|
|
|
|
|
|
|
|
|
|
|
|
Title Information  |
|
|
References  |
|
|
| *references marked with an asterisk below are user-added references |
|
U.S. References |
|
|
| Add a new US reference: |
| | Reference | Relevancy | Comments | Reference | Relevancy | Comments | 5222189 Fielder 704/229 Jun,1993 |      Your vote accepted [0 after 0 votes] | | 5197087 Iwahashi 375/240 Mar,1993 |      Your vote accepted [0 after 0 votes] | | 5115240 Fujiwara 341/51 May,1992 |      Your vote accepted [0 after 0 votes] | | 5091944 Takahashi 704/219 Feb,1992 |      Your vote accepted [0 after 0 votes] | | 5086475 Kutaragi
Feb,1992 |      Your vote accepted [0 after 0 votes] | | 5068899 Ellis
Nov,1991 |      Your vote accepted [0 after 0 votes] | | 5067152 Kisor
Nov,1991 |      Your vote accepted [0 after 0 votes] | | 5040217 Brandenburg 704/200.1 Aug,1991 |      Your vote accepted [0 after 0 votes] | | 5021971 Lindsay 704/220 Jun,1991 |      Your vote accepted [0 after 0 votes] | | 4965830 Barham 704/226 Oct,1990 |      Your vote accepted [0 after 0 votes] | | 4963030 Makur 375/240.22 Oct,1990 |      Your vote accepted [0 after 0 votes] | | 4953214 Takeguchi 704/230 Aug,1990 |      Your vote accepted [0 after 0 votes] | | 4949383 Koh 704/229 Aug,1990 |      Your vote accepted [0 after 0 votes] | | 4935963 Jain 704/207 Jun,1990 |      Your vote accepted [0 after 0 votes] | | 4922537 Frederiksen 704/212 May,1990 |      Your vote accepted [0 after 0 votes] | | 4916742 Kolesnikov 704/215 Apr,1990 |      Your vote accepted [0 after 0 votes] | | 4896362 Veldhuis 704/200.1 Jan,1990 |      Your vote accepted [0 after 0 votes] | | 4790016 Mazor 704/203 Dec,1988 |      Your vote accepted [0 after 0 votes] | | 4667340 Arjmand 704/207 May,1987 |      Your vote accepted [0 after 0 votes] | | 4559602 Bates, Jr. 702/71 Dec,1985 |      Your vote accepted [0 after 0 votes] | | 4528643 Freeny, Jr. 705/52 Jul,1985 |      Your vote accepted [0 after 0 votes] | | 4330689 Kang 704/219 May,1982 |      Your vote accepted [0 after 0 votes] | | 4300040 Gould 235/381 Nov,1981 |      Your vote accepted [0 after 0 votes] | | 4287568 Lester 711/116 Sep,1981 |      Your vote accepted [0 after 0 votes] | | 4232295 McConnell 340/825.25 Nov,1980 |      Your vote accepted [0 after 0 votes] | | 3982070 Flanagan 704/265 Sep,1976 |      Your vote accepted [0 after 0 votes] | | 5027376 Friedman 375/240 Dec,1969 |      Your vote accepted [0 after 0 votes] | | | | | |
|
|
|
|
U.S. References |
|
|
Foreign References |
|
|
|
|
|
|
Foreign References |
|
|
Other References |
|
|
|
|
|
|
Other References |
|
|
|
|
|
References  |
|
|
|
|
|
| Market Size |
|
Estimate the gross annual revenues of the relevant market
sector:
|
| | |
| |
|
|
| Market Share |
|
Estimate the percentage of the relevant market sector this invention will capture:
|
| | |
| |
|
|
| Reasonable Royalty |
|
What percentage of gross sales should the inventor or assignee be paid?
|
| | |
| |
|
|
|
Public's "Guesstimation" of Royalty Value
|
| Market Size | N/A | [No votes] | | x | Market Share | N/A | [No votes] | | x | Reasonable Royalty | N/A | [No votes] |
| | N/A | |
| |
|
|
|
|
|
|
|
|
|
|
|
|
Market Review  |
|
|
Technical Review  |
|
|
Claims  |
|
|
What is claimed is:
1. A method of processing a wideband digital audio signal and for storing
the processed signal on a data storage medium comprising:
dividing said wideband digital audio signal into signal blocks each block
having a maximum signal value;
scaling each signal block by a constant value selected such that the
maximum absolute signal value in each block equals a predetermined value
within a preset range and setting a scale factor equal to said constant
value for each signal block;
transforming each said signal block into transform blocks comprising a
plurality of transform values representative of the audio signal in its
associated signal block;
quantizing said transform blocks; and
recording said quantized transform blocks and said scale factors as digital
data on the data storage medium.
2. The method of claim 1 wherein said digital audio signal is divided into
overlapping signal blocks.
3. The method of claim 1 wherein said digital audio signal is divided into
non-overlapping signal blocks.
4. The method of claim 1 further comprising reproducing said quantized
transform blocks from said recorded digital data;
inverse transforming and inverse scaling said quantized transform blocks
into decoded signal blocks; and
recombining said decoded signal blocks into a reproduction of said wideband
digital audio signal.
5. The method of claim 4 wherein said decoded signal blocks are represented
by a predetermined arithmetic precision and wherein said predetermined
value of said scaling step is selected based upon said arithmetic
precision.
6. A method of processing a wideband digital audio signal and for storing
the processed signal on a data storage medium comprising:
dividing said wideband digital audio signal into signal blocks;
dividing said signal blocks into a plurality of subblocks;
detecting transients in said subblocks and setting a transient flag
associated with said signal block to a predetermined value if a transient
greater than a predetermined threshold is detected;
if the transient flag is set to said predetermined value, scaling each
subblock in accordance with transients detected to produce processed
signal blocks and generating a scale factor for each subblock;
said scaling step further comprising the step of scaling at least one
subblock occurring a predetermined time before a detected transient
differently than scaling the subblock containing the transient;
transforming said processed signal blocks into transform blocks each
comprising a plurality of transform values representative of the audio
signal in its associated block;
quantizing said transform blocks; and
recording said quantized transform blocks, transient flags and scale
factors as digital data on the data storage medium.
7. The method of claim 6 wherein stepwise scaling is used to scale said
adjacent subblocks to effect a transition from the scaling applied to the
pre-transient subblocks to the scaling applied to the subblock containing
the detected transient.
8. The method of claim 6 wherein said digital audio signal is divided into
overlapping signal blocks.
9. The method of claim 6 wherein said digital audio signal is divided into
non-overlapping signal blocks.
10. The method of claim 6 further comprising reproducing said quantized
transform blocks from said recorded digital data;
inverse transforming and inverse scaling said quantized transform blocks
into decoded signal blocks; and
recombining said decoded signal blocks into a reproduction of said wideband
digital audio signal.
11. A method of processing a wideband digital audio signal and for storing
the processed signal on a data storage medium comprising;
dividing said wideband digital audio signal into signal blocks;
detecting if a transient occurs in each signal block and setting a
transient flag to a predetermined value when a transient is detected;
when said transient flag equals said predetermined value, dividing said
signal blocks into a plurality of subblocks;
scaling each subblock in accordance with transients detected to produce
processed signal blocks and generating a scale factor for each subblock;
said scaling step further comprising the step of scaling at least one
subblock occurring a predetermined time before a detected transient
differently than scaling the subblock containing the transient;
transforming said processed signal blocks into transform blocks each
comprising a plurality of transform values representative of the magnitude
and phase of the audio signal as a function of frequency in its associated
block;
quantizing said transform blocks; and
recording said quantized transform blocks, transient flags and scale
factors as digital data on a data storage medium.
12. A method of processing a wideband digital audio signal and for storing
the processed signal on a dam storage medium comprising;
dividing said wideband digital audio signal into signal blocks;
Fourier transforming said signal blocks into transformed blocks
representative of the magnitude and phase of the audio signal in its
associated block as a function of frequency;
extracting from said transformed blocks magnitude data blocks and phase
data blocks as a function of frequency;
grouping said magnitude data blocks and phase data blocks into a plurality
of adjacent frequency bands, said frequency bands extending from low
frequency bands to high frequency bands;
applying a first quantization process upon said magnitude data blocks in
each frequency band to develop quantized magnitude blocks;
applying a second quantization process upon said phase dam blocks in each
frequency band to develop quantized phase blocks, said second quantization
process developing higher precision quantization in said low frequency
bands than in said high frequency bands;
recording said quantized magnitude blocks and said quantized phase blocks
as digital data on the data storage medium wherein said first quantization
process includes two-stage vector quantization of said magnitude data
blocks.
13. The method of claim 12 wherein said digital audio signal is divided
into overlapping signal blocks.
14. The method of claim 12 wherein said digital audio signal is divided
into non-overlapping signal blocks.
15. The method of claim 12 further comprising reproducing said quantized
transform blocks from said recorded digital data;
inverse transforming and inverse scaling said quantized transform blocks
into decoded signal blocks; and
recombining said decoded signal blocks into a reproduction of said wideband
digital audio signal.
16. The method of claim 12 wherein said first quantization process includes
vector quantizing said magnitude data blocks.
17. The method of claim 12 wherein said first quantization process includes
tree-structured vector quantization of said magnitude data blocks.
18. The method of claim 12 wherein said second quantization process
includes quantization where the quantizer is designed so that quantization
error in any phase data term is inversely proportional to the frequency of
said term.
19. The method of claim 12 wherein said second quantization process
includes scalar quantization with level spacing chosen so that the error
resulting from said quantization does not exceed a value inversely
proportional to the frequency of said term.
20. The method of claim 12 wherein said second quantization process
includes scalar quantization with pseudorandom dither added to the phases.
21. The method of claim 12 wherein said second quantization process
includes the step of dynamically altering bit allocation based in the
wideband digital audio signal.
22. A method of processing a wideband digital audio signal and for storing
the processed signal in a data storage medium comprising the steps of:
dividing said wideband audio signal into signal blocks,
Fourier transforming each said block into transform blocks representative
of the magnitude and phase of the audio signal as a function of frequency
in its associated block,
grouping said transform blocks into a plurality of adjacent frequency
bands, each frequency band having a predetermined magnitude quantizer
factor and predetermined phase quantizer factors, said quantizer factors
determining the degree of precision of a subsequent quantization,
quantizing the magnitudes and phases of each transform block in each
frequency band in accordance with its respective quantizer factor to
develop quantized magnitude blocks and quantized phase blocks, and
recording said quantized magnitude blocks and quantized phase blocks as
digital data on the data storage medium.
23. The invention as defined in claim 22 wherein the precision of the phase
quantizer factor increases from the higher frequency bands to the lower
frequency bands.
24. The invention as defined in claim 22 and comprising the step of
introducing a random dither to phase quantizing step at least one of said
frequency bands.
25. A method of processing a wideband digital audio signal and for storing
the processed signal on a data storage medium comprising:
dividing said wideband digital audio signal into signal blocks;
dividing said signal blocks into a plurality of subblocks;
detecting transients in said subblocks and setting a transient flag
associated with said signal block to a predetermined value if a transient
greater than a predetermined threshold is detected;
if the transient flag is set to said predetermined value, scaling each
subblock in accordance with transients detected to produce processed
signal blocks and generating a scale factor for each subblock;
said scaling step further comprising the step of scaling at least one
subblock occurring a predetermined time after a detected transient
differently than scaling the subblock containing the transient;
transforming said processed signal blocks into transform blocks each
comprising a plurality of transform values representative of the audio
signal in its associated block;
quantizing said transform blocks; and
recording said quantized transform blocks, transient flags and scale
factors as digital data on the data storage medium.
26. A method of processing a wideband digital audio signal and for storing
the processed signal on a data storage medium comprising;
dividing said wideband digital audio signal into signal blocks;
detecting if a transient occurs in each signal block and setting a
transient flag to a predetermined value when a transient is detected;
when said transient flag equals said predetermined value, dividing said
signal blocks into a plurality of subblocks;
scaling each subblock in accordance with transients detected to produce
processed signal blocks and generating a scale factor for each subblock;
said scaling step further comprising the step of scaling at least one
subblock occurring a predetermined time after a detected transient
differently than scaling the subblock containing the transient;
transforming said processed signal blocks into transform blocks each
comprising a plurality of transform values representative of the magnitude
and phase of the audio signal as a function of frequency in its associated
block;
quantizing said transform blocks; and
recording said quantized transform blocks, transient flags and scale
factors as digital data on a data storage medium.
27. A method of processing a wideband digital audio signal and for storing
the processed signal on a data storage medium comprising:
dividing said wideband digital audio signal into signal blocks;
Fourier transforming said signal blocks into transformed blocks
representative of the magnitude and phase of the audio signal in its
associated block as a function of frequency;
extracting from said transformed blocks magnitude data blocks and phase
data blocks as a function of frequency;
grouping said magnitude data blocks and phase data blocks into a plurality
of adjacent frequency bands, said frequency bands extending from low
frequency bands to high frequency bands;
applying a first quantization process upon said magnitude data blocks in
each frequency band to develop quantized magnitude blocks;
applying a second quantization process upon said phase data blocks in each
frequency band to develop quantized phase blocks, said second quantization
process developing higher precision quantization in said low frequency
bands than in said high frequency bands;
recording said quantized magnitude blocks and said quantized phase blocks
as digital data on the data storage medium wherein said first quantization
process includes tree-structured vector quantization of said magnitude
data blocks.
28. The method of claim 27 further comprising reproducing said quantized
transform blocks from said recorded digital data;
inverse transforming and inverse scaling said quantized transform blocks
into decoded signal blocks; and
recombining said decoded signal blocks into a reproduction of said wideband
digital audio signal.
29. A method of processing a wideband digital audio signal and for storing
the processed signal on a data storage medium comprising:
dividing said wideband digital audio signal into signal blocks;
Fourier transforming said signal blocks representative of the magnitude and
phase of the audio signal in its associated block as a function of
frequency;
extracting from said transformed blocks magnitude data blocks and phase
data blocks as a function of frequency;
grouping said magnitude data blocks and phase data blocks into a plurality
of adjacent frequency bands, said frequency bands extending from low
frequency bands to high frequency bands;
applying a first quantization process upon said magnitude data blocks in
each frequency band to develop quantized magnitude blocks;
applying a second quantization process upon said phase data blocks in each
frequency band to develop quantized phase blocks, said second quantization
process developing higher precision quantization in said low frequency
bands than in said high frequency bands;
recording said quantized magnitude blocks and said quantized phase blocks
as digital data on the data storage medium wherein each phase data block
comprises a plurality of phase coefficients and wherein said second
quantization process comprises the step of applying a scalar quantizer to
each phase coefficient with a level spacing inversely proportional to the
frequency of each coefficient.
30. A method of processing a wideband digital audio signal and for storing
the processed signal on a data storage medium comprising:
dividing said wideband digital audio signal into signal blocks;
Fourier transforming said signal blocks into transformed block
representative of the magnitude and phase of the audio signal in its
associated block as a function of frequency;
extracting from said transformed blocks magnitude data blocks and phase
data blocks as a function of frequency;
grouping said magnitude data blocks and phase data blocks into a plurality
of adjacent frequency bands, said frequency banks extending from low
frequency bands to high frequency bands;
applying a first quantization process upon said magnitude data blocks in
each frequency band to develop quantized magnitude blocks;
applying a second quantization process upon said phase data blocks in each
frequency band to develop quantized phase blocks, said second quantization
process developing higher precision quantization in said low frequency
bands than in said high frequency bands;
recording said quantized magnitude blocks and said quantized phase blocks
as digital data on the data storage medium;
detecting a transient in said transformed blocks and, when detected,
decreasing the level spacing with respect to said second quantization
process.
31. The method of claim 30 further comprising reproducing said quantized
transform blocks from said recorded digital data;
inverse transforming and inverse scaling said quantized transform blocks
into decoded signal blocks; and
recombining said decoded signal blocks into a reproduction of said wideband
digital audio signal.
32. A method of processing a wideband digital audio signal and for storing
the processed signal on a data storage medium comprising;
dividing said wideband digital audio signal into signal blocks;
Fourier transforming said signal blocks into transformed blocks
representative of the magnitude and phase of the audio signal in its
associated block as a function of frequency;
extracting from said transformed blocks magnitude data blocks and phase
data blocks as a function of frequency;
grouping said magnitude data blocks and phase data blocks into a plurality
of adjacent frequency bands, said frequency bands extending from low
frequency bands to high frequency bands;
scaling each said frequency band by a constant value selected such that the
energy of the frequency band equals a predetermined value within a preset
range;
applying a first quantization process upon said magnitude data blocks in
each frequency band to develop quantized magnitude blocks;
applying a second quantization process upon said phase data blocks in each
frequency band to develop quantized phase blocks, said second quantization
process developing higher precision quantization in said low frequency
bands than in said high frequency bands;
recording said quantized magnitude blocks said constant values and said
quantized phase blocks as digital data on the data storage medium wherein
said first quantization process includes two-stage vector quantization of
said magnitude data blocks.
33. The method of claim 32 further comprising reproducing said quantized
transform blocks from said recorded digital data;
inverse transforming and inverse scaling said quantized transform blocks
into decoded signal blocks; and
recombining said decoded signal blocks into a reproduction of said wideband
digital audio signal. |
|
|
|
|
Claims  |
|
|
Description  |
|
|
BACKGROUND AND SUMMARY OF THE INVENTION
The present invention relates generally to digital audio systems and more
particularly to a data compression system for substantially increasing the
playing time of a given storage medium without significant degradation of
sound quality.
In applications where access to a large library of digital audio is
desired, the main problem is in the extraordinary data volume required to
store high quality music. To place this problem in perspective, the
standard compact disc player transfers digital audio data at a rate of
approximately 5.3 megabytes per minute for one stereo channel. If one were
to store all compact disc data for a 3 minute stereo selection on a hard
disk of a computer, the selection would occupy 31.8 megabytes, or more
than a 30 megabyte hard drive can hold. Even using a large 750 megabyte
disk drive only about 1 hour and 10 minutes of music could be stored. That
is far too little for an evening's entertainment or for digital jukebox
purposes.
While there have been some advances made in the field of data compression,
present-day data compression techniques have not adequately focused on
human auditory perception. For example, many data compression algorithms
are intended for compressing telemetry and telecommunications data and
speech. There has heretofore been no practical data compression technique
for reducing the data volume to allow meaningful playing times on
relatively simple devices while preserving audio quality of recorded
music.
The present invention uses a combination of source coding theory and theory
of human auditory perception to greatly reduce the storage requirements
for digital audio. In the presently preferred embodiment the 5.3 megabyte
per minute compact disc data rate has been reduced to 0.42 megabytes per
minute per channel. This reduction in data rate is achieved by an encoding
and decoding system in which the more costly components are used on the
encoding side, to allow simple and inexpensive equipment to be used on the
decoding side. More specifically, the system is designed to permit
decoding with a processor with limited arithmetic precision, for example,
16 bit fixed-point arithmetic. The present invention is thus well suited
for music distribution systems, video game systems, consumer audio
systems, digital jukeboxes and computer-controlled video/audio systems.
In accordance with one principle of the invention, a wideband digital audio
signal is processed by transforming it into the frequency domain
comprising data capable of being represented as complex numbers. A
magnitude portion and a phase portion are extracted from the frequency
domain data, with different quantization processes being performed on the
magnitude and phase portions. After the quantization processes, the
magnitude and phase data are stored as digital data on a data storage
medium. In the presently preferred embodiment the magnitude portion is
quantized using a vector quantization technique while the phase portion is
quantized using uniform scalar quantization. By treating the magnitude and
phase separately, the invention permits different quantization rules to be
applied to each. This allows the use of vector quantization of the
magnitudes and scalar quantization of the phases.
In accordance with another principle of this invention, expansion via
scaling of bands of magnitude coefficients to a common power level assures
that the noise produced by their quantization will be essentially
inaudible. Using this technique it is possible to achieve effects similar
to a more complex process of dynamically choosing the rate of the
quantizer (in bits per coefficient) on the basis of perceptual masking
calculations.
In accordance with another principle of the invention, different vector
quantizers are designed for different bands of magnitude coefficients.
This use of a plurality of vector quantizers insures better performance,
because the quantizer is matched to the band being | | |