System and method for embedded audio coding with implicit auditory masking
First Claim
1. A method for coding audio data comprising of using a computing device to:
- transform an audio input to produce at least one set of transform coefficients;
split separate bits representing transform coefficients into at least one embedded coding unit (ECU);
set an initial auditory masking threshold; and
sequentially entropy encode each ECU, wherein a first ECU is encoded using the initial masking threshold, and each subsequent entropy encoded ECU is entropy encoded using an auditory masking threshold which is automatically derived from a previously encoded coefficient.
2 Assignments
0 Petitions
Accused Products
Abstract
The embedded audio coder (EAC) is a fully scalable psychoacoustic audio coder which uses a novel perceptual audio coding approach termed “implicit auditory masking” which is intermixed with a scalable entropy coding process. When encoding and decoding an audio file using the EAC, auditory masking thresholds are not sent to a decoder. Instead, the masking thresholds are automatically derived from already coded coefficients. Furthermore, in one embodiment, rather than quantizing the audio coefficients according to the auditory masking thresholds, the masking thresholds are used to control the order that the coefficients are encoded. In particular, in this embodiment, during the scalable coding, larger audio coefficients are encoded first, as the larger components are the coefficients that contribute most to the audio energy level and lead to a higher auditory masking threshold.
74 Citations
67 Claims
-
1. A method for coding audio data comprising of using a computing device to:
-
transform an audio input to produce at least one set of transform coefficients;
split separate bits representing transform coefficients into at least one embedded coding unit (ECU);
set an initial auditory masking threshold; and
sequentially entropy encode each ECU, wherein a first ECU is encoded using the initial masking threshold, and each subsequent entropy encoded ECU is entropy encoded using an auditory masking threshold which is automatically derived from a previously encoded coefficient. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28)
-
-
29. A system for psychoacoustic audio coding comprising:
-
transforming at least one channel of audio data to produce at least one set of transform coefficients;
setting an initial auditory masking threshold;
dividing bits of each transform coefficient into at least one coding group; and
sequentially entropy encoding each coding group, wherein each coding group is entropy encoded using an auditory masking threshold which is sequentially derived from a previously encoded coding group, beginning with a first entropy encoded coding group that is entropy encoded using the initial masking threshold. - View Dependent Claims (30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48)
-
-
49. A system for entropy coding an audio signal, comprising:
-
transforming at least one channel of audio data to produce at least one set of transform coefficients; and
entropy coding at least one transform coefficient using half harmonic frequency components of the at least one transform coefficient to determine a context for significant identification of at least one bit of at least one transform coefficient. - View Dependent Claims (50)
-
-
51. A computer-implemented process for decoding audio data encoded using psychoacoustic masking, comprising using a computing device to:
-
automatically derive auditory masking thresholds directly from entropy coded coefficients in encoded audio data without explicitly receiving an auditory mask;
perform a reverse transform on the encoded coefficients to generate decoded audio components; and
combine the decoded audio components to generate a decoded copy of the encoded audio data. - View Dependent Claims (52, 53)
-
-
54. A computer-readable medium having computer executable instructions for psychoacoustic encoding of audio data, said computer executable instructions comprising:
-
inputting an audio signal into the computer;
multiplexing the audio signal to separate individual audio channel components;
transforming each audio channel component to produce a set of coefficients for each audio channel component;
splitting bits of coefficients into at least one embedded coding unit (ECU); and
performing the following steps;
(a) initializing an entropy encoder with an initial masking threshold, (b) determining a next ECU of the audio signal to be encoded, (c) entropy encoding the next ECU of the audio signal, (d) updating the initial masking threshold by automatically deriving a new masking threshold from the entropy encoded ECU that was encoded in step (c), and (e) repeating steps (b) through (d) until a desired endpoint is reached. - View Dependent Claims (55, 56, 57, 58, 59, 60, 61)
-
-
62. A method for entropy encoding audio signal comprising using a computing device to:
-
transform the audio signal to provide at least one set of transform coefficients, each set of transform coefficients comprising a number of critical bands;
divide bits comprising each critical band of each transform coefficient into at least one coding unit;
entropy encode the coding units by using the computer to perform the following steps;
a. initialize a context sensitive entropy coder by calculating a maximum bitplane of all coefficients, setting progress indicators for all coefficients to a predicted insignificance sub-bitplane of the maximum bitplane, setting an initial masking threshold and marking all critical bands of each coefficient as insignificant, b. determine a next critical band to be encoded by calculating a gap between each gaps progress indicator and the masking threshold, with the smallest gaps among all segments representing a current gap, and choosing the critical bands with a gap value the same as the current gap to be encoded, c. encode the sub-bitplane of the coding unit by encoding individual bits in the chosen significant critical band using the context sensitive entropy coder, d. update the progress indicator to identify a next sub-bitplane to be encoded, e. update the masking threshold based on the already coded audio coefficients if the progress indicator has reached a predetermined checkpoint, f. determine whether a predetermined end criteria has been met, and g. iteratively repeat steps (b) through (f) until the predetermined end criterion is reached. - View Dependent Claims (63, 64, 65, 66, 67)
-
Specification