On Mon, 2008-10-20 at 13:33 +0200, Julien Claassen wrote:
Hello!
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
position)?
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.