# US 8,989,884 B2 · Automatic audio configuration based on an audio output device

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

- Number: US 8,989,884 B2
- Document ID: US8989884B2
- Status: Granted
- Kind: B2
- Application number: 13/116,895
- Filed: 2011-05-26
- Published: 2012-07-12
- Granted: 2015-03-24
- Earliest claimed: 2011-01-11
- Assignees: Apple Inc.
- Applicants: Anthony J. Guetta; Douglas S. Wyatt; Eric A. Allamanche; William G. Stewart
- Inventors: Anthony J. Guetta; Douglas S. Wyatt; Eric A. Allamanche; William G. Stewart
- Web page: https://patentgrep.com/patent/US8989884B2

## CPC

- G11B 20/10527: {Audio or video recording; Data buffering arrangements (G11B20/12 - G11B20/18 take precedence)}
- G11B 2020/00028: {Advanced audio coding [AAC]}
- G11B 2020/00057: {MPEG-1 or MPEG-2 audio layer III [MP3]}
- G11B 2020/10555: {wherein the frequency, the amplitude, or other characteristics of the audio signal is taken into account}
- G11B: INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER (recording measured values in a way that does not require playback through a transducer G01D9/00; recording or playback apparatus using mechanically marked tape, e.g. punched paper tape, or using unit records, e.g. punched or magnetically marked cards G06K; transferring data from one type of record carrier to another G06K1/18; circuits for coupling output of reproducer to radio receiver H04B1/20; gramophone pick-ups or like acoustic electromechanical transducers or circuits therefor H04R)

## Abstract

Techniques are provided for determining, at an audio processing device, whether to produce high quality or low quality audio output based on one or more factors. The one or more factors may include the type of output device (e.g., headphones, built-in speakers, or USB audio devices) that is connected to the audio processing device and whether certain operations (e.g., mixing and/or scaling) are to be performed on the decoded audio content. Thus, the highest quality audio output is produced based on current conditions of the audio system, which includes the output device. If the current conditions of the audio system indicate that producing high quality audio output does not yield sufficient perceived benefits, then the audio processing device may produce lower quality audio output.

## Claims

### Claim 1

An audio processing system comprising a plurality of elements that include logic elements, wherein the plurality of elements are configured to perform operations including:
determining an encode format of audio content to be decoded by an audio processing device;
determining a hardware format supported by an output device to which decoded audio data is to be provided, wherein the output device is coupled to the audio processing device, and wherein the output device has an associated audio fidelity;
based upon the hardware format supported by the output device, the encode format of the audio content, and the fidelity of the output device, determining a decode format, from a plurality of decode formats, to which audio content is to be decoded, wherein the plurality of decode formats includes at least one decode format having a bit depth that is equal to the bit depth of the hardware format and at least one decode format having a bit depth that is higher than the bit depth of the hardware format;
decoding at least a portion of the audio content to the determined decode format, wherein the bit depth of the determined decode format is determined at least in part by the fidelity associated with the output device; and
converting at least a portion of the audio content from the decode format to the hardware format supported by the output device; and
providing the audio content to the output device after the converting.

### Claim 2 (depends on 1)

The system of claim 1, wherein the audio content has one of the following encode formats: 16-bit pulse-code modulation (PCM), 24-bit PCM, Advanced Audio Coding (AAC), MP3, Apple Lossless, Waveform Audio File Format (WAV), or Audio Interchange File Format (AIFF).

### Claim 3 (depends on 1)

The system of claim 1, wherein decoding the audio content to the decode format comprises:
generating, based at least in part upon the audio content, a first version of decoded audio that is at a first bit depth corresponding to the bit depth of the decode format; and
generating, based at least in part upon the first version of decoded audio and a dithering processing, a second version of decoded audio that is at a second bit depth that is lower than the first bit depth, the second bit depth corresponding to the bit depth of the hardware format supported by the output device.

### Claim 4 (depends on 1)

The system of claim 1, wherein the decode format is based on a 32-bit floating point number, 8.24 fixed-point integer, a 24-bit integer, or a 16-bit integer.

### Claim 5 (depends on 1)

The system of claim 1, wherein the plurality of elements are configured to perform further operations including:
determining whether at least one operation of one or more operations will be performed on the decoded audio prior to the decoded audio being converted from the decode format into the hardware format supported by the output device; and
in response to determining that at least one of the one or more operations will be performed:
generating the decoded audio at a first bit depth that is higher than the bit depth of the hardware format supported by the output device;
performing the at least one operation on the decoded audio to generate second audio data; and
generating, based at least in part upon the second audio data, third audio data that is at a second bit depth that is lower than the first bit depth, the second bit depth corresponding to the bit depth of the hardware format supported by the output device.

### Claim 6 (depends on 5)

The system of claim 5, wherein the audio content is at a first bit depth, wherein decoding the audio content to the decode format further comprises:
in response to determining that none of the one or more operations will be performed on the decoded audio prior to the decoded audio being converted into the hardware format supported by the output device, generating the decoded audio at the first bit depth without first generating a version of the decoded audio at a second bit depth that is higher than the first bit depth.

### Claim 7 (depends on 5)

The system of claim 5, wherein the one or more operations include mixing the decoded audio with other audio data, applying volume to decoded audio, and equalization of the decoded audio.

### Claim 8 (depends on 1)

The system of claim 1, wherein the decode format is a first decode format, the output device is a first output device having an associated first fidelity, and wherein the plurality of elements are configured to perform further operations including:
while decoding at least a portion of the audio content to the first decode format for output to the first output device having the first fidelity:
detecting the coupling of a second output device having a second fidelity while decoding the portion of the audio content to the first decode format;
responsive to the coupling of the second output device, determining the hardware format supported by the second output device;
determining a second decode format to which a second portion of the audio content is to be decoded, wherein the second decode format is different than the first decode format, wherein the second portion is different than the portion; and
decoding the second portion of the audio content to the second decode format for output to the second output device having the second fidelity.

### Claim 9 (depends on 8)

The system of claim 8, wherein decoding the second portion of the audio content to the second decode format comprises:
determining whether any other data content is being decoded while the portion of the audio content is being decoded; and
only decoding the second portion of the audio content to the second decode format if it is determined that no other data content is being decoded while the portion of the audio content is being decoded.

### Claim 10

A non-transitory machine-readable medium storing instructions which, when executed by one or more processors, causes the one or more processes to perform operations including:
determining an encode format of audio content to be decoded by an audio processing device;
determining a hardware format associated with an output device to which decoded audio data is to be provided, wherein the output device is coupled to the audio processing device, and wherein the output device has an associated audio fidelity;
based at least in part upon the hardware format associated with the output device, the encode format of the audio content, and the fidelity of the output device, determining a decode format selected from a plurality of decode formats to which audio content is to be decoded, the decode formats including a high quality format having a first bit depth and a low quality format having a second bit depth, wherein the first bit depth is higher than the second bit depth;
decoding at least a portion of the audio content from an encode format to the determined decode format for audio processing before converting the portion of the audio content to the hardware format associated with the output device, wherein the bit depth of the decode format is determined at least in part by the fidelity associated with the output device; and
providing the audio content to the output device after the converting.

### Claim 11 (depends on 10)

The medium of claim 10, wherein the audio content has one of the following encode formats: 16-bit pulse-code modulation (PCM), 24-bit PCM, Advanced Audio Coding (AAC), MP3, Apple Lossless, Waveform Audio File Format (WAV), or Audio Interchange File Format (AIFF).

### Claim 12 (depends on 10)

The medium of claim 10, wherein decoding the audio content to the decode format comprises:
generating, based at least in part upon the audio content, a first version of decoded audio that is at a first bit depth corresponding to the bit depth of the decode format; and
generating, based at least in part upon the first version of decoded audio and a dithering processing, a second version of decoded audio that is at a second bit depth that is lower than the first bit depth, the second bit depth corresponding to the bit depth of the hardware format supported by the output device.

### Claim 13 (depends on 10)

The medium of claim 10, wherein the decode format is based on a 32-bit floating point number, 8.24 fixed-point integer, a 24-bit integer, or a 16-bit integer.

### Claim 14 (depends on 10)

The medium of claim 10, wherein decoding the audio content to the decode format further comprises:
determining whether at least one operation of one or more operations will be performed on decoded audio resulting from the decoding prior to the decoded audio being converted the hardware format supported by the output device.

### Claim 15 (depends on 14)

The medium of claim 14, wherein decoding the audio content to the decode format further comprises:
in response to determining that at least one of the one or more operations will be performed on the decoded audio prior to the decoded audio being converted into the hardware format supported by the output device:
generating the decoded audio at a first bit depth that is higher than the bit depth of the hardware format supported by the output device;
performing the at least one operation on the decoded audio to generate second audio data; and
generating, based at least in part upon the second audio data, third audio data that is at a second bit depth that is lower than the first bit depth, the second bit depth corresponding to the bit depth of the hardware format supported by the output device.

### Claim 16 (depends on 14)

The medium of claim 14, wherein the audio content is at a first bit depth, wherein decoding the audio content to the decode format further comprises:
in response to determining that none of the one or more operations will be performed on the decoded audio prior to the decoded audio being converted into the hardware format supported by the output device, generating the decoded audio at the first bit depth without first generating a version of the decoded audio at a second bit depth that is higher than the first bit depth.

### Claim 17 (depends on 14)

The medium of claim 14, wherein the one or more operations include mixing the decoded audio with other audio data, applying volume to decoded audio, and equalization of the decoded audio.

### Claim 18 (depends on 10)

The medium of claim 10, wherein the decode format is a first decode format, and the output device is a first output device having an associated first fidelity, wherein the instructions, when executed by the one or more processors, cause further operations including:
while decoding at least a portion of the audio content to the first decode format for output to the first output device having the first fidelity:
detecting the coupling of a second output device having a second fidelity while decoding the portion of the audio content to the first decode format;
responsive to the coupling of the second output device, determining the hardware format supported by with the second output device;
determining a second decode format to which a second portion of the audio content is to be decoded, wherein the second decode format is different than the first decode format, wherein the second portion is different than the portion; and
decoding the second portion of the audio content to the second decode format for output to the second output device having the second fidelity.

### Claim 19 (depends on 18)

The medium of claim 18, wherein decoding the second portion of the audio content to the second decode format comprises:
determining whether any other data content is being decoded while the portion of the audio content is being decoded; and
only decoding the second portion of the audio content to the second decode format if it is determined that no other data content is being decoded while the portion of the audio content is being decoded.

### Claim 20

A method comprising:
determining an encode format of audio content to be decoded by the audio processing device;
determining, by an audio processing device, a hardware format associated with an output device to which decoded audio data is to be provided, wherein the output device is coupled to the audio processing device, and wherein the output device has an associated audio fidelity;
based at least in part upon the hardware format and fidelity of the output device, and the encode format of the audio content, determining a processing mode decode format, from a plurality of decode formats, to which audio content is to be decoded, wherein the processing mode decode format is at a higher bit depth than the hardware format associated with the output device; and
decoding at least a portion of the audio content to the processing mode decode format;
converting at least a portion of the audio content from the processing mode decode format to the hardware format supported by the output device; and
providing the audio content to the output device after the converting.

### Claim 21 (depends on 20)

The method of claim 20, wherein the audio content has one of the following formats: 16-bit pulse-code modulation (PCM), 24-bit PCM, Advanced Audio Coding (AAC), MP3, Apple Lossless, Waveform Audio File Format (WAV), or Audio Interchange File Format (AIFF).

### Claim 22 (depends on 20)

The method of claim 20, wherein the processing mode decode format is based on a 32-bit floating point number, 8.24 fixed-point integer, a 24-bit integer, or a 16-bit integer.

### Claim 23 (depends on 20)

The method of claim 20, wherein decoding at least a portion of the audio content to the processing mode decode format comprises:
generating first audio data in the processing mode decode format;
performing one or more operations on the first audio data to generate second audio data in the processing mode decode format; and
while converting the second audio data from the processing mode decode format to the hardware format supported by the output device, generating third audio data at a bit depth corresponding to the bit depth of the hardware format supported by the output device.

### Claim 24 (depends on 23)

The method of claim 23, wherein the one or more operations include mixing the first audio data with other audio data, applying volume to the first audio data or other audio data, and equalizing the audio data.

### Claim 25 (depends on 23)

The method of claim 23, wherein the processing mode decode format is a first decode format, the method further comprising:
while decoding at least a portion of the audio data to the first decode format:
determining a second decode format to which a second portion of the audio content is to be decoded, wherein the second decode format is different than the first decode format, wherein the second portion is different than the portion; and
decoding the second portion of the audio data to the second decode format.

### Claim 26 (depends on 25)

The method of claim 25, wherein decoding the second portion of the audio data to the second decode format comprises:
determining whether any other audio data is being decoded while the portion of the audio data is being decoded; and
only decoding the second portion of the audio data to the second decode format if it is determined that no other audio data is being decoded while the portion of the audio data is being decoded.
