Forum: AVB AVB media clock synchronization for audio

Author: Andreas Schwarz (andreas) (Admin) Flattr this
Posted on:

Rate this post
0 useful
not useful
All devices on an AVB network have a clock which is automatically 
synchronized using the Precision Time Protocol (PTP). However, this does 
not mean that every AVB talker on the network automatically uses a 
synchronized sampling rate for the audio stream it sends ("Media Clock") 
[1]. For example, one device might generate an 48 kHz media clock with 
an external oscillator; another device might derive an 48 kHz media 
clock from its PTP clock; yet another device might synchronize to an 
ADAT lightpipe input; etc. While these sampling rates are nominally the 
same, the clocks are not synchronized.

To generate AVB streams with synchronized media clocks in multiple 
devices, a media clock has to be generated in one device and distributed 
to the others. At the moment, the only way to distribute a media clock 
is to act as a talker and provide a stream (which does not neet to 
contain any actual audio channels) to other devices, which may then 
recover the media clock from this stream and generate their own talker 
stream with the same media clock. In the XMOS AVB reference 
implementation, if an input stream is connected to the listener, the 
media clock is automatically recovered from this stream and used for the 
talker [2].

For IEEE1722a a stream format for the distribution of a global media 
clock has been proposed [3].

[1] Understanding IEEE's deterministic AV bridging standards, 
[2] XMOS AVB Media Clocks, http://xcore.github.io/sw_avb/clocking.html
[3] 1722A Global System Clock Streams (aka Media Clock Streams), 

: Edited by Admin
Author: Andreas (Guest)
Posted on:

Rate this post
0 useful
not useful
contains more information about best practices for media clock handling.

"Many real world applications (a mixer for example) require a Listener 
to receive audio from multiple Talkers (many microphones for example). 
In these situations, a common media clock for all Talkers eliminates the 
need for sample rate conversion (SRC) operations inside the Listener. 
The implication is that some sort of “House Media Clock” equivalent for 
AVB is required. Although not formally part of the AVB specification 
suite, the simplest method of distributing a “House Media Clock” is via 
a designated AVB stream that contains the canonical media clocking 
information - any stream can be designated as the house clock reference 
stream. Any Talker device that can talk to a mixing device should also 
be capable of being a Listener so that it can Listen to “House Media 
Clock” AVTP packets and adjust its internal media clock to match the 
“House Media Clock”."


Entering an e-mail address is optional. If you want to receive reply notifications by e-mail, please log in.

Rules — please read before posting

  • Post long source code as attachment, not in the text
  • Posting advertisements is forbidden.

Formatting options

  • [c]C code[/c]
  • [avrasm]AVR assembler code[/avrasm]
  • [code]code in other languages, ASCII drawings[/code]
  • [math]formula (LaTeX syntax)[/math]

Bild automatisch verkleinern, falls nötig
Note: the original post is older than 6 months. Please don't ask any new questions in this thread, but start a new one.