[Jack-Devel] jack1: jack_transport does not work as master
lfile-list at thax.hardliners.org
Thu Jul 2 17:30:42 CEST 2015
On 02/07/15 15:38, Paul Davis wrote:
> jack_transport is not intended to act as a the time master.
Well, comparing example-clients/transport_client.c and
tools/transport.c, I'd say the one big difference between the two is
that tools/transport.c (aka jack_transport) can act as a *simple*
> providing BBT information requires some kind of tempo map. This is
> beyond the scope of jack_transport.
Sure, if I need a more sophisticated tool, I'll use one (or write one
Thankfully, jack provides a lot of small command line tools for simple
That's what I also expected from jack_transport. And with jack2 the same
jack_transport does work as a timebase master (with a "trivial" tempo map).
But the real issue here is a completely different one:
Does jack_set_timebase_callback() also require jack_set_process_callback()?
jack_transport (which is shipping with jack1) assumes that
jack_set_process_callback is not required -- which matches jack2's behavior.
But for jack1 the timebase callback is only called, when I add a process
callback (just return 0;).
Either jack1/libjack0 is wrong to also require the process callback, or
transport.c is wrong to assume that it's not needed (because it does not
AFAIUI jackaudio.org/api does not clearly say that the process callback
must be non-NULL to become a timebase master, although I could see why
it might in fact be necessary (for a certain implementation).
More information about the Jackaudio