# US 9,521,449 B2 · Techniques for audio synchronization

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

- Number: US 9,521,449 B2
- Document ID: US9521449B2
- Status: Granted
- Kind: B2
- Application number: 13/726,352
- Filed: 2012-12-24
- Published: 2014-06-26
- Granted: 2016-12-13
- Earliest claimed: 2012-12-24
- Assignees: Intel Corporation
- Applicants: Intel Corporation
- Inventors: Amihai Kidron
- Web page: https://patentgrep.com/patent/US9521449B2

## CPC

- H04N 21/43072: {of multiple content streams on the same device}
- H04N 21/242: Synchronisation processes, e.g. processing of PCR [Programme Clock References] {(arrangements for synchronising broadcast or distribution via plural systems in broadcast distribution systems H04H20/18)}
- H04N 21/4305: {Synchronising client clock from received content stream, e.g. locking decoder clock with encoder clock, extraction of the PCR packets (arrangements for synchronising receiver with transmitter by comparing receiver clock with transmitter clock H04L7/0012; arrangements for synchronising receiver with transmitter wherein the receiver takes measures against momentary loss of synchronisation H04L7/0083)}
- H04N 21/43637: {involving a wireless protocol, e.g. Bluetooth®, RF or wireless LAN [IEEE 802.11] (arrangements for wireless networking or broadcasting of information in indoor or near-field type systems H04B10/114)}
- H04N 21/439: Processing of audio elementary streams
- H04N 21/8547: involving timestamps for synchronizing content
- H03L 7/00: Automatic control of frequency or phase; Synchronisation
- H04N 5/04: Synchronising (for television systems using pulse code modulation H04N7/56)
- H04N 7/152: {Multipoint control units therefor}
- H04N 21/4344: {Remultiplexing of multiplex streams, e.g. by modifying time stamps or remapping the packet identifiers}
- H04N 21/64723: {Monitoring of network processes or resources, e.g. monitoring of network load (traffic related reporting in data switching networks H04L43/062)}
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION
- H03L: AUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES (generation of oscillations H03B)

## Abstract

Techniques for audio synchronization are described. In one embodiment, for example, an apparatus may comprise a processor circuit and an audio synchronization module, and the audio synchronization module may be operable by the processor circuit to receive audio information comprising a first network time index defined with respect to a network clock for a network, determine a second network time index for the audio information, the second network time index defined with respect to the network clock, determine a transmission delay value for the audio information based on a difference between the first network time index and the second network time index, and determine a total delay value for the audio information based on the transmission delay value and on a remote processing delay value for the audio information. Other embodiments are described and claimed.

## Claims

### Claim 1

At least one non-transitory machine-readable medium comprising a plurality of instructions that, in response to being executed on a computing device, cause the computing device to:
receive at least two portions of audio information over a first network, each portion of the audio information comprising a first network time index defined with respect to a network clock for a second network, the first network time index to indicate a relative offset from a value of the network clock, the relative offset comprising a number of periods of a symbol clock for the second network;
determine a second network time index for each portion of the audio information, the second network time index defined with respect to the network clock for the second network;
determine a transmission delay value for each portion of the audio information based on a difference between the first network time index and the second network time index, the transmission delay to indicate a delay associated with transmission of the portion of the audio information over the first network;
determine a total delay value for each portion of the audio information based on the transmission delay value and on a remote processing delay value for each portion of the audio information, the remote processing delay value to indicate a duration of processing by a remote device for the portion of the audio information;
determine a coordinated time index for each portion of the audio information based on the total delay value and on a local clock, the coordinated time index to indicate a time defined with respect to the local clock;
combine the at least two portions of audio information based on the coordinated time index for each portion of the audio information to generate composite audio information; and
send, over the first network, the composite audio information to the remote device for playback.

### Claim 2 (depends on 1)

The at least one machine-readable medium of claim 1, the coordinated time index indicating a time when the portion of the audio information was captured.

### Claim 3 (depends on 1)

The at least one machine-readable medium of claim 1, the network clock comprising a Bluetooth network clock for a Bluetooth network.

### Claim 4 (depends on 1)

The at least one machine-readable medium of claim 1, comprising instructions that, in response to being executed on the computing device, cause the computing device to synchronize playback of the audio information by multiple devices according to an inter-device temporal frame of reference defined based on the network clock.

### Claim 5

An apparatus, comprising:
a processor circuit; and
audio synchronization logic for execution on the processor circuit to:
receive at least two portions of audio information over a first network, each portion of the audio information comprising a first network time index defined with respect to a network clock for a second network, the first network time index to indicate a relative offset from a value of the network clock, the relative offset comprising a number of periods of a symbol clock for the second network;
determine a second network time index for each portion of the audio information, the second network time index defined with respect to the network clock for the second network;
determine a transmission delay value for each portion of the audio information based on a difference between the first network time index and the second network time index, the transmission delay to indicate a delay associated with transmission of the portion of the audio information over the first network;
determine a total delay value for each portion of the audio information based on the transmission delay value and on a remote processing delay value for each portion of the audio information, the remote processing delay value to indicate a duration of processing by a remote device for the portion of the audio information;
determine a coordinated time index for each portion of the audio information based on the total delay value and on a local clock, the coordinated time index to indicate a time defined with respect to the local clock;
combine the at least two portions of audio information based on the coordinated time index for each portion of the audio information to generate composite audio information; and
send, over the first network, the composite audio information to the remote device for playback.

### Claim 6 (depends on 5)

The apparatus of claim 5, the coordinated time index indicating a time when the portion of the audio information was captured.

### Claim 7 (depends on 5)

The apparatus of claim 5, the network clock comprising a Bluetooth network clock for a Bluetooth network.

### Claim 8 (depends on 5)

The apparatus of claim 5, the audio synchronization logic for execution on the processor circuit to synchronize playback of the audio information by multiple devices according to an inter-device temporal frame of reference defined based on the network clock.

### Claim 9

A method, comprising:
receiving at least two portions of audio information over a first network, each portion of the audio information comprising a first network time index defined with respect to a network clock for a second network, the first network time index indicating a relative offset from a value of the network clock, the relative offset comprising a number of periods of a symbol clock for the second network;
determining a second network time index for each portion of the audio information, the second network time index defined with respect to the network clock for the second network;
determining a transmission delay value for each portion of the audio information based on a difference between the first network time index and the second network time index, the transmission delay indicating a delay associated with transmission of the portion of the audio information over the first network;
determining a total delay value for each portion of the audio information based on the transmission delay value and on a remote processing delay value for each portion of the audio information, the remote processing delay value indicating a duration of processing by a remote device for the portion of the audio information;
determining a coordinated time index for each portion of the audio information based on the total delay value and on a local clock, the coordinated time index indicating a time defined with respect to the local clock;
combining the at least two portions of audio information based on the coordinated time index for each portion of the audio information to generate composite audio information; and
sending, over the first network, the composite audio information to the remote device for playback.

### Claim 10 (depends on 9)

The method of claim 9, the coordinated time index indicating a time when the portion of audio information was captured.

### Claim 11 (depends on 9)

The method of claim 9, the network clock comprising a Bluetooth network clock for a Bluetooth network.

### Claim 12 (depends on 9)

The method of claim 9, comprising synchronizing playback of the audio information by multiple devices according to an inter-device temporal frame of reference defined based on the network clock.
