Efficient coding of transients in transform-domain
AssigneeApple Inc.
InventorsVenkatraman ATTI, Dipanjan SEN
Life of this patent
Estimating the term…
Abstract
Aspects of the present disclosure provide improved techniques for coding audio signal with a transient audio sound. Improved techniques include parsing a frame of predetermined length of audio samples into a series of windows of a smaller size, and transforming the windows of time-domain samples into a series of windows of frequency-domain samples. The frequency-domain samples may be organized according to an alignment pattern and may be coded with respect to an envelope of the organized frequency-domain samples.
Claims21
An audio encoding method, comprising:
- parsing a sequence of audio samples contained within a frame of a predetermined size into a plurality of windows of smaller size,
- transforming the audio samples in the windows into respective sets of frequency-domain coefficients,
- estimating a spectral envelope of the frame by:
- arranging the frequency-domain coefficients of the windows according to an alignment pattern in which a lowest-frequency coefficient of one window is placed adjacent to a lowest frequency coefficient of its neighboring window and a highest frequency coefficient of another window is placed adjacent to a highest frequency coefficient of its neighboring window, and
- estimating the spectral envelope of the frame from the frequency-domain coefficients arranged according to the alignment pattern, and
- coding the audio samples of the frame with reference to the spectral envelope of the frame.
A system for audio encoding, comprising:
- a processor;
- and
- a memory storing instructions, that when executed by the processor, cause the system to:
- parse a sequence of audio samples contained within a frame of a predetermined size into a plurality of windows of smaller size,
- transform the audio samples in the windows into respective sets of frequency-domain coefficients,
- estimate a spectral envelope of the frame by:
- arranging the frequency-domain coefficients of the windows according to an alignment pattern in which a lowest-frequency coefficient of one window is placed adjacent to a lowest-frequency coefficient of its neighboring window and a highest-frequency coefficient of another window is placed adjacent to a highest-frequency coefficient of its neighboring window, and estimating the spectral envelope of the frame from the frequency-domain coefficients arranged according to the alignment pattern, and
- code the audio samples of the frame with reference to the spectral envelope of the frame.
A non-transitory computer readable memory storing instructions for encoding audio that, when executed by a processor, cause the processor to:
- parse a sequence of audio samples contained within a frame of a predetermined size into a plurality of windows of smaller size,
- transform the audio samples in the windows into respective sets of frequency-domain coefficients,
- estimate a spectral envelope of the frame by:
- arranging the frequency-domain coefficients of the windows according to an alignment pattern in which a lowest-frequency coefficient of one window is placed adjacent to a lowest frequency coefficient of its neighboring window and a highest frequency coefficient of another window is placed adjacent to a highest frequency coefficient of its neighboring window, and
- estimating the spectral envelope of the frame from the frequency-domain coefficients arranged according to the alignment pattern, and
- code the audio samples of the frame with reference to the spectral envelope of the frame.
An audio encoding method, comprising:
- detecting, from a frame of audio samples, whether an audio transient occurs within the frame and a level of confidence in the detection of the audio transient,
- when an audio transient is detected:
- parsing a sequence of audio samples contained within a frame of a predetermined size into a plurality of windows of smaller size,
- transforming the audio samples in the windows into respective sets of frequency-domain coefficients, and
- estimating a spectral envelope of the frame by:
- when an audio transient is detected at a first level of confidence, arranging the frequency-domain coefficients according to a first alignment pattern, the first alignment pattern including concatenating the windows of the frequency coefficients into a series of windows for the frame, where the frequency coefficients within each window are ordered by frequency, and ordering by frequency is reversed between neighboring windows in the series, and
- when an audio transient is detected at a second level of confidence lower than the first level of confidence, arranging of the frequency-domain coefficients according to a second alignment pattern, the second alignment pattern including sorting the frequency coefficients of all windows according to frequency such that a frequency coefficient for a lowest frequency from all windows are neighboring each other in the second alignment pattern;
- and
- coding the audio samples of the frame with reference to the spectral envelope of the frame.
An audio decoding method, comprising:
- decoding a frame of normalized coefficients with reference to a spectral envelope of the frame, the spectral envelope defined by an envelope representation provided in coded audio data, the decoding including denormalizing the normalized coefficients according to the spectral envelope;
- and
- transforming the scaled coefficients of the frame from a domain of transform coefficients to a domain of time samples;
- wherein the transforming occurs on a window granularity at a smaller size than a size of the frame, and the spectral envelope is defined according to an alignment pattern in which a lowest-frequency coefficient of a first window is placed adjacent to a lowest-frequency coefficient of its neighboring window and a highest frequency coefficient of the first window is placed adjacent to a highest-frequency coefficient of another neighboring window.
A system for audio decoding, comprising:
- a processor;
- and
- a memory storing instructions, that when executed by the processor, cause the system to:
- decode, for a frame of a predetermined size comprising a plurality of time-domain windows of smaller size, an encoded audio signal to determine normalized frequency-domain coefficients for the frame and an indication of a spectral envelope for the frame arranged according to an alignment pattern, wherein the alignment pattern places a lowest-frequency coefficient of one window adjacent to a lowest frequency coefficient of its neighboring window and places a highest frequency coefficient of another window adjacent to a highest frequency coefficient of its neighboring window,
- de-normalize the normalized frequency-domain coefficients for the frame with reference to the spectral envelope for the frame,
- inverse transform the de-normalized frequency-domain coefficients corresponding to the time-domain windows of the frame into decoded audio samples for the time-domain windows.
A non-transitory computer readable memory storing instructions for decoding audio that, when executed by a processor, cause the processor to:
- decode, for a frame of a predetermined size comprising a plurality of time-domain windows of smaller size, an encoded audio signal to determine normalized frequency-domain coefficients for the frame and an indication of a spectral envelope for the frame arranged according to an alignment pattern, wherein the alignment pattern places a lowest-frequency coefficient of one window adjacent to a lowest frequency coefficient of its neighboring window and places a highest frequency coefficient of another window adjacent to a highest frequency coefficient of its neighboring window,
- de-normalize the normalized frequency-domain coefficients for the frame with reference to the spectral envelope for the frame,
- inverse transform the de-normalized frequency-domain coefficients corresponding to the time-domain windows of the frame into decoded audio samples for the time-domain windows.
Dependencies are inferred from the claim text.