Audio entropy encoder/decoder for coding contexts with different frequency resolutions and transform lengths
First Claim
1. An audio encoding apparatus for encoding a sequence of segments of coefficients, the segments being subsequent to each other in time, the audio encoder comprising:
- a provider configured to provide the sequence of segments of coefficients from an audio stream representing a sampled audio signal by using different transform lengths such that segments of coefficients for which different transform lengths are used, spectrally represent the sampled audio signal at different frequency resolutions;
a processor configured to derive a coding context for a currently encoded coefficient of a current segment based on a previously encoded coefficient of a previous segment, the previous and current segments corresponding to different frequency resolutions and different transform lengths, respectively; and
an entropy encoder configured to entropy encode the current coefficient based on the coding context to acquire an encoded audio stream;
wherein the entropy encoder is adapted for encoding the current coefficient in units of a tuple of spectral coefficients and for predicting a range of the tuple based on the coding context; and
wherein the entropy encoder is adapted for dividing the tuple by a predetermined factor as often as necessitated to fit a result of the division in a predetermined range and for encoding a number of divisions necessitated, a division remainder and the result of the division when the tuple does not lie in the predicted range, and for encoding the tuple without the use of any division when the tuple already lies within the predicted range.
1 Assignment
0 Petitions
Accused Products
Abstract
An audio encoder for encoding segments of coefficients, the segments of coefficients representing different time or frequency resolutions of a sampled audio signal, the audio encoder including a processor for deriving a coding context for a currently encoded coefficient of a current segment based on a previously encoded coefficient of a previous segment, the previously encoded coefficient representing a different time or frequency resolution than the currently encoded coefficient. The audio encoder further includes an entropy encoder for entropy encoding the current coefficient based on the coding context to obtain an encoded audio stream.
-
Citations
14 Claims
-
1. An audio encoding apparatus for encoding a sequence of segments of coefficients, the segments being subsequent to each other in time, the audio encoder comprising:
-
a provider configured to provide the sequence of segments of coefficients from an audio stream representing a sampled audio signal by using different transform lengths such that segments of coefficients for which different transform lengths are used, spectrally represent the sampled audio signal at different frequency resolutions; a processor configured to derive a coding context for a currently encoded coefficient of a current segment based on a previously encoded coefficient of a previous segment, the previous and current segments corresponding to different frequency resolutions and different transform lengths, respectively; and an entropy encoder configured to entropy encode the current coefficient based on the coding context to acquire an encoded audio stream; wherein the entropy encoder is adapted for encoding the current coefficient in units of a tuple of spectral coefficients and for predicting a range of the tuple based on the coding context; and wherein the entropy encoder is adapted for dividing the tuple by a predetermined factor as often as necessitated to fit a result of the division in a predetermined range and for encoding a number of divisions necessitated, a division remainder and the result of the division when the tuple does not lie in the predicted range, and for encoding the tuple without the use of any division when the tuple already lies within the predicted range. - View Dependent Claims (2, 3, 4)
-
-
5. A method for encoding a sequence of segments of coefficients, the segments being subsequent to each other in time, the method comprising:
-
providing the sequence of segments of coefficients from an audio stream representing a sampled audio signal by using different transform lengths such that segments of coefficients for which different transform lengths are used, spectrally represent the sampled audio signal at different frequency resolutions; deriving, using a computer, a coding context for a currently encoded coefficient of a current segment based on a previously encoded coefficient of a previous segment, the previous and current segments corresponding to different frequency resolutions and different transform lengths, respectively; and entropy encoding, using the computer, the current coefficient based on the coding context to acquire an encoded audio stream; wherein the entropy encoding comprises encoding the current coefficient in units of a tuple of spectral coefficients and for predicting a range of the tuple based on the coding context; and wherein the entropy encoding comprises dividing the tuple by a predetermined factor as often as necessitated to fit a result of the division in a predetermined range and for encoding a number of divisions necessitated, a division remainder and the result of the division when the tuple does not lie in the predicted range, and encoding the tuple without the use of any division when the tuple already lies within the predicted range.
-
-
6. An audio encoding apparatus for encoding segments of coefficients, the segments of coefficients representing different time or frequency resolutions of a sampled audio signal, the audio encoder comprising:
-
a provider configured to provide the segments of coefficients from an audio stream, the coefficients forming a spectral representation of an audio signal represented by the audio stream at a spectral resolution varying among the segments; a processor configured to derive a coding context for a currently encoded coefficient of a current segment based on a previously encoded coefficient of a previous segment, the previously encoded coefficient representing a different time or frequency resolution than the currently encoded coefficient; and an entropy encoder configured to entropy encode the current coefficient based on the coding context to acquire an encoded audio stream, wherein the entropy encoder is adapted for encoding the current coefficient in units of a tuple of spectral coefficients and for predicting a range of the tuple based on the coding context, wherein the entropy encoder is adapted for dividing the tuple by a predetermined factor as often as necessitated to fit a result of the division in a predetermined range and for encoding a number of divisions necessitated, a division remainder and the result of the division when the tuple does not lie in the predicted range, and for encoding the tuple without the use of any division when the tuple already lies within the predicted range, and wherein the entropy encoder is adapted for encoding the result of the division or the tuple using a group index, the group index referring to a group of one or more codewords for which a probability distribution is based on the coding context, and, based on a uniform probability distribution, an element index in case the group comprises more than one codeword, the element index referring to a codeword within the group, and for encoding the number of divisions by a number of escape symbols, an escape symbol being a specific group index only used for indicating a division, and for encoding the remainders of the divisions based on a uniform probability distribution using an arithmetic coding rule.
-
-
7. An audio decoding apparatus for decoding an encoded audio stream representing a sampled audio signal to acquire a sequence of segments of coefficients being subsequent to each other in time and representing the sampled audio signal by using different transform lengths such that segments of coefficients for which different transform lengths are used, spectrally represent the sampled audio signal at different frequency resolutions, comprising:
-
a processor configured to derive a coding context for a currently decoded coefficient of a current segment based on a previously decoded coefficient of a previous segment, the previous and current segments corresponding to different frequency resolutions and different transform lengths, respectively; and an entropy decoder configured to entropy decode the current coefficient based on the coding context and the encoded audio stream; wherein the processor is adapted for deriving the coding context per spectral band for the current coefficient, based on neighboring spectral coefficients previously decoded in the previous segment and in the present segment; and wherein the entropy decoder is adapted for decoding a group index from the encoded audio stream based on a probability distribution derived from the coding context, wherein the group index represents a group of one or more codewords, and for, based on a uniform probability distribution, decoding an element index from the encoded audio stream if the group index indicates a group comprising more than one codeword, and for deriving a tuple of spectral coefficients of the current segment based on the group index and the element index, thereby acquiring the spectral domain representation in tuples of spectral coefficients. - View Dependent Claims (8, 9, 10)
-
-
11. An audio decoding apparatus for decoding an encoded audio stream to acquire segments of coefficients representing different time or frequency resolutions of a the sampled audio signal, comprising:
-
a processor configured to derive a coding context for a currently decoded coefficient of a current segment based on a previously decoded coefficient of a previous segment, the previously decoded coefficient representing a different time or frequency resolution than the currently decoded coefficient; and an entropy decoder configured to entropy decode the current coefficient based on the coding context and the encoded audio stream, wherein the processor is adapted for deriving the coding context based on the previous coefficient, the coefficients forming a spectral representation of an audio signal represented by the audio stream at a spectral resolution varying among the segments, wherein the processor is adapted for deriving the coding context for the current coefficient, based on neighboring spectral coefficients previously decoded in the previous segment and in the present segment, and wherein the entropy decoder is adapted for decoding a group index from the encoded audio stream based on a probability distribution derived from the coding context, wherein the group index represents a group of one or more codewords, and for, based on a uniform probability distribution, decoding an element index from the encoded audio stream if the group index indicates a group comprising more than one codeword, and for deriving a tuple of spectral coefficients of the current segment based on the group index and the element index, thereby acquiring the spectral domain representation in tuples of spectral coefficients.
-
-
12. A method for decoding an encoded audio stream representing a sampled audio signal to acquire a sequence of segments of coefficients being subsequent to each other in time and representing the sampled audio signal by using different transform lengths such that segments of coefficients for which different transform lengths are used, spectrally represent the sampled audio signal at different frequency resolutions, comprising:
-
deriving, using a computer, a coding context for a currently decoded coefficient of a current segment based on a previously decoded coefficient of a previous segment, the previous and current segments corresponding to different frequency resolutions and different transform lengths, respectively; and entropy decoding, using the computer, the current coefficient based on the coding context and the encoded audio stream; wherein the deriving comprises deriving the coding context per spectral band for the current coefficient, based on neighboring spectral coefficients previously decoded in the previous segment and in the present segment; wherein the entropy decoding comprises decoding a group index from the encoded audio stream based on a probability distribution derived from the coding context, wherein the group index represents a group of one or more codewords, and, based on a uniform probability distribution, decoding an element index from the encoded audio stream if the group index indicates a group comprising more than one codeword, and for deriving a tuple of spectral coefficients of the current segment based on the group index and the element index, thereby acquiring the spectral domain representation in tuples of spectral coefficients.
-
-
13. A non-transitory computer-readable medium having stored thereon a computer program comprising a program code for performing the method for encoding a sequence of segments of coefficients, the segments being subsequent to each other in time, the method comprising:
-
providing the sequence of segments of coefficients from an audio stream representing a sampled audio signal by using different transform lengths such that segments of coefficients for which different transform lengths are used, spectrally represent the sampled audio signal at different frequency resolutions; deriving a coding context for a currently encoded coefficient of a current segment based on a previously encoded coefficient of a previous segment, the previous and current segments corresponding to different frequency resolutions and different transform lengths, respectively; and entropy encoding the current coefficient based on the coding context to acquire an encoded audio stream; when the program code runs on a computer or a processor; wherein the entropy encoding comprises encoding the current coefficient in units of a tuple of spectral coefficients and for predicting a range of the tuple based on the coding context; and wherein the entropy encoding comprises dividing the tuple by a predetermined factor as often as necessitated to fit a result of the division in a predetermined range and for encoding a number of divisions necessitated, a division remainder and the result of the division when the tuple does not lie in the predicted range, and encoding the tuple without the use of any division when the tuple already lies within the predicted range.
-
-
14. A non-transitory computer-readable medium having stored thereon a computer program comprising a program code for performing the method for decoding an encoded audio stream representing a sampled audio signal to acquire a sequence of segments of coefficients being subsequent to each other in time and representing the sampled audio signal by using different transform lengths such that segments of coefficients for which different transform lengths are used, spectrally represent the sampled audio signal at different frequency resolutions, the method comprising:
-
deriving a coding context for a currently decoded coefficient of a current segment based on a previously decoded coefficient of a previous segment, the previous and current segments corresponding to different frequency resolutions and different transform lengths, respectively; and entropy decoding the current coefficient based on the coding context and the encoded audio stream; when the program code runs on a computer or a processor; wherein the deriving comprises deriving the coding context per spectral band for the current coefficient, based on neighboring spectral coefficients previously decoded in the previous segment and in the present segment; and wherein the entropy decoding comprises decoding a group index from the encoded audio stream based on a probability distribution derived from the coding context, wherein the group index represents a group of one or more codewords, and, based on a uniform probability distribution, decoding an element index from the encoded audio stream if the group index indicates a group comprising more than one codeword, and deriving a tuple of spectral coefficients of the current segment based on the group index and the element index, thereby acquiring the spectral domain representation in tuples of spectral coefficients.
-
Specification