[LAD] JACK transport timebase and its callback
paul at linuxaudiosystems.com
Mon Oct 20 11:42:48 UTC 2008
On Mon, 2008-10-20 at 13:33 +0200, Julien Claassen wrote:
> I just read through the JACK transport section in the JACK reference again.
> If you want to be timebase-master you can (or must) supply a callback function
> to update the time-info.
> Does my program need audio thread (a process function?)
No. JACK will call your timebase callback at the right time.
> Which timing source
> is used to update the time?
that is up to you. it could be MTC, some other form of timecode, a
wallclock, NTP or whatever you want. keep in mind that JACK does not
support varispeed (a decision made long ago to avoid burdening every
JACK-transport app with very difficult implementation issues).
> Does my program provide it or does JACK provide it
> and my program only really kicks in when I want to relocate (jump to another
no, if your client elects to be time master then it is responsible for
updating the time every process cycle.
> I am correct in assuming, that my code doesn't have to be multithreaded (at
> least not look multithreaded) if I want to use the JACK transport interface
> (control and timebase)?
JACK will create a thread for you, you just supply the callback. The
callback will be called from the JACK-created thread, so you need to be
aware of this.
More information about the Linux-audio-dev