# US 11,443,752 B2 · Audio encoder, audio decoder, method for encoding an audio information, method for decoding an audio information and computer program using a detection of a group of previously-decoded spectral values

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,443,752 B2
- Document ID: US11443752B2
- Status: Granted
- Kind: B2
- Application number: 15/845,616
- Filed: 2017-12-18
- Published: 2018-06-21
- Granted: 2022-09-13
- Earliest claimed: 2009-10-20
- Assignees: Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V.
- Applicants: Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V.
- Inventors: Guillaume Fuchs; Vignesh Subbaraman; Nikolaus Rettelbach; Markus Multrus; Marc Gayer; Patrick Warmbold; Christian Griebel; Oliver Weiss
- Web page: https://patentgrep.com/patent/US11443752B2

## CPC

- G10L 19/008: Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
- G10L 19/0017: {Lossless audio signal coding; Perfect reconstruction of coded audio signal by transmission of coding error (G10L19/24 takes precedence)}
- G10L 19/0208: {Subband vocoders}
- G10L: SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING

## Abstract

An audio decoder for providing a decoded audio information includes a arithmetic decoder for providing a plurality of decoded spectral values on the basis of an arithmetically-encoded representation of the spectral values and a frequency-domain-to-time-domain converter for providing a time-domain audio representation using the decoded spectral values. The arithmetic decoder is configured to select a mapping rule describing a mapping of a code value onto a symbol code in dependence on a context state. The arithmetic decoder is configured to determine or modify the current context state in dependence on a plurality of previously-decoded spectral values. The arithmetic decoder is configured to detect a group of a plurality of previously-decoded spectral values, which fulfill, individually or taken together, a predetermined condition regarding their magnitudes, and to determine the current context state in dependence on a result of the detection. An audio encoder uses similar principles.

## Claims

### Claim 1

An audio decoder for providing a decoded audio information on the basis of an encoded audio information, the audio decoder comprising:
an arithmetic decoder for providing a plurality of decoded spectral values on the basis of an arithmetically-encoded representation of the spectral values; and
a frequency-domain-to-time-domain converter for providing a time-domain audio representation using the decoded spectral values, in order to acquire the decoded audio information;
wherein the arithmetic decoder is configured to select a mapping rule describing a mapping of a code value onto a symbol code in dependence on a context state;
wherein the arithmetic decoder is configured to determine the current context state in dependence on a plurality of previously-decoded spectral values;
wherein the arithmetic decoder is configured to detect a group of a plurality of previously-decoded spectral values, which fulfill, individually or taken together, a predetermined condition regarding their magnitudes, and to determine or modify the current context state in dependence on a result of the detection;
wherein the arithmetic decoder is configured to set the current context state to be within a range of values which signals the detection of a group of a plurality of previously-decoded adjacent spectral values which fulfill, individually or taken together, a predetermined condition regarding their magnitudes, in response to the detection; and
wherein the audio decoder is implemented using a hardware apparatus, or using a computer, or using a combination of a hardware apparatus and a computer.

### Claim 2 (depends on 1)

The audio decoder according to claim 1, wherein the arithmetic decoder is configured to determine or modify the current context state independent from the previously decoded spectral values in response to the detection that the predetermined condition is fulfilled.

### Claim 3 (depends on 1)

The audio decoder according to claim 1, wherein the arithmetic decoder is configured to detect a group of a plurality of previously-decoded adjacent spectral values, which fulfill, individually or taken together, a predetermined condition regarding their magnitudes.

### Claim 4 (depends on 1)

The audio decoder according to claim 1, wherein the arithmetic decoder is configured to detect a group of a plurality of previously-decoded adjacent spectral values which, individually or taken together, comprise a magnitude which is smaller than a predetermined threshold magnitude, and to determine or modify the current context state in dependence on a result of the detection.

### Claim 5 (depends on 1)

The audio decoder according to claim 1, wherein the arithmetic decoder is configured to detect a group of a plurality of previously-decoded adjacent spectral values, wherein each of the previously-decoded spectral values is a zero value, and to determine or modify the context state in dependence on a result of the detection.

### Claim 6 (depends on 1)

The audio decoder according to claim 1, wherein the arithmetic decoder is configured to set the current context state to a predetermined value in response to the detection that a group of a plurality of previously-decoded adjacent spectral values fulfill, individually or taken together, a predetermined condition regarding their magnitudes.

### Claim 7 (depends on 6)

The audio decoder according to claim 6, wherein the arithmetic decoder is configured to selectively omit a calculation of the context state in dependence on numeric values of a plurality of previously-decoded spectral values in response to the detection that a group of a plurality of previously-decoded adjacent spectral values fulfill, individually or taken together, a predetermined condition regarding their magnitudes.

### Claim 8 (depends on 1)

The audio decoder according to claim 1, wherein the arithmetic decoder is configured to map a symbol code onto a decoded spectral value.

### Claim 9 (depends on 1)

The audio decoder according to claim 1, wherein the arithmetic decoder is configured to evaluate one or more hash tables to select a mapping rule in dependence on the context state.

### Claim 10

An audio encoder for providing an encoded audio information on the basis of an input audio information, the audio encoder comprising:
an energy-compacting time-domain-to-frequency-domain converter for providing a frequency-domain audio representation on the basis of a time-domain representation of the input audio information, such that the frequency-domain audio representation comprises a set of spectral values; and
an arithmetic encoder configured to encode a spectral value or a preprocessed version thereof, using a variable length codeword, wherein the arithmetic encoder is configured to map a spectral value, or a value of a most significant bitplane of a spectral value onto a code value,
wherein the arithmetic encoder is configured to select a mapping rule describing a mapping of a spectral value, or of a most significant bitplane of a spectral value, onto a code value, in dependence on a context state; wherein the arithmetic encoder is configured to determine the current context state in dependence on a plurality of previously-encoded spectral values;
wherein the arithmetic encoder is configured to detect a group of a plurality of previously-encoded spectral values, which fulfill, individually or taken together, a predetermined condition regarding their magnitudes, and to determine or modify the current context state in dependence on a result of the detection;
wherein the arithmetic encoder is configured to set the current context state to be within a range of values which signals the detection of a group of a plurality of previously-encoded adjacent spectral values which fulfill, individually or taken together, a predetermined condition regarding their magnitudes, in response to the detection; and
wherein the audio encoder is implemented using a hardware apparatus, or using a computer, or using a combination of a hardware apparatus and a computer.

### Claim 11 (depends on 10)

The audio encoder according to claim 10, wherein the arithmetic encoder is configured to determine or modify the current context state independent from the previously encoded spectral values in response to the detection that the predetermined condition is fulfilled.

### Claim 12 (depends on 10)

The audio encoder according to claim 10, wherein the arithmetic encoder is configured to detect a group of a plurality of previously-encoded adjacent spectral values, which fulfill, individually or taken together, a predetermined condition regarding their magnitudes.

### Claim 13

A method for providing a decoded audio information on the basis of an encoded audio information, the method comprising:
providing a plurality of decoded spectral values on the basis of an arithmetically-encoded representation of the spectral values; and
providing a time-domain audio representation using the decoded spectral values, in order to acquire the decoded audio information;
wherein providing the plurality of decoded spectral values comprises selecting a mapping rule describing a mapping of a code value representing a spectral value, or a most-significant bit-plane of a spectral value, in an encoded form onto a symbol code representing a spectral value, or a most-significant bit-plane of a spectral value, in a decoded form, in dependence on a context state;
wherein the current context state is determined in dependence on a plurality of previously decoded spectral values;
wherein a group of a plurality of previously-decoded spectral values, which fulfill, individually or taken together, a predetermined condition regarding their magnitudes is detected, and wherein the current context state is determined or modified in dependence on a result of the detection: and
wherein the method comprises setting the current context state to be within a range of values which signals a detection of a group of a plurality of previously-decoded adjacent spectral values which fulfill, individually or taken together, a predetermined condition regarding their magnitudes, in response to the detection.

### Claim 14

A method for providing an encoded audio information on the basis of an input audio information, the method comprising:
providing a frequency-domain audio representation on the basis of a time-domain representation of the input audio information using an energy-compacting time-domain-to-frequency-domain conversion, such that the frequency-domain audio representation comprises a set of spectral values; and
arithmetically encoding a spectral value, or a preprocessed version thereof, using a variable-length codeword, wherein a spectral value or a value of a most significant bitplane of a spectral value is mapped onto a code value;
wherein a mapping rule describing a mapping of a spectral value, or of a most significant bitplane of a spectral value, onto a code value is selected in dependence on a context state;
wherein a current context state is determined in dependence on a plurality of previously-encoded adjacent spectral values;
wherein a group of a plurality of previously-encoded spectral values, which fulfill, individually or together, a predetermined condition regarding their magnitudes, is detected and the current context state is determined or modified in dependence on a result of the detection: and
wherein the method comprises setting the current context state to be within a range of values which signals a detection of a group of a plurality of previously-encoded adjacent spectral values which fulfill, individually or taken together, a predetermined condition regarding their magnitudes, in response to the detection.

### Claim 15

A non-transitory computer readable medium comprising a computer program for performing the method for providing a decoded audio information on the basis of an encoded audio information, the method comprising:
providing a plurality of decoded spectral values on the basis of an arithmetically-encoded representation of the spectral values; and
providing a time-domain audio representation using the decoded spectral values, in order to acquire the decoded audio information;
wherein providing the plurality of decoded spectral values comprises selecting a mapping rule describing a mapping of a code value representing a spectral value, or a most-significant bit-plane of a spectral value, in an encoded form onto a symbol code representing a spectral value, or a most-significant bit-plane of a spectral value, in a decoded form, in dependence on a context state,
wherein the current context state is determined in dependence on a plurality of previously decoded spectral values,
wherein a group of a plurality of previously-decoded spectral values, which fulfill, individually or taken together, a predetermined condition regarding their magnitudes is detected, and wherein the current context state is determined or modified in dependence on a result of the detection, and
wherein the method comprises setting the current context state to be within a range of values which signals a detection of a group of a plurality of previously-decoded adjacent spectral values which fulfill, individually or taken together, a predetermined condition regarding their magnitudes, in response to the detection, when the program runs on a computer.

### Claim 16

A non-transitory computer readable medium comprising a computer program for performing the method for providing an encoded audio information on the basis of an input audio information, the method comprising:
providing a frequency-domain audio representation on the basis of a time-domain representation of the input audio information using an energy-compacting time-domain-to-frequency-domain conversion, such that the frequency-domain audio representation comprises a set of spectral values; and
arithmetically encoding a spectral value, or a preprocessed version thereof, using a variable-length codeword, wherein a spectral value or a value of a most significant bitplane of a spectral value is mapped onto a code value;
wherein a mapping rule describing a mapping of a spectral value, or of a most significant bitplane of a spectral value, onto a code value is selected in dependence on a context state;
wherein a current context state is determined in dependence on a plurality of previously-encoded adjacent spectral values;
wherein a group of a plurality of previously-encoded spectral values, which fulfill, individually or together, a predetermined condition regarding their magnitudes, is detected and the current context state is determined or modified in dependence on a result of the detection; and
wherein the method comprises setting the current context state to be within a range of values which signals a detection of a group of a plurality of previously-encoded adjacent spectral values which fulfill, individually or taken together, a predetermined condition regarding their magnitudes, in response to the detection;
when the program runs on a computer.
