[Jack-Devel] jack1: jack_transport does not work as master

Paul Davis paul at linuxaudiosystems.com
Thu Jul 2 18:57:17 CEST 2015

Frankly, computing BBT time has never been part of "how to use the
JACK API". It should probably never have been included in the source
code in the first place.

Managing BBT time is *extremely* complex - we have worked on it for
years in Ardour and it still has issues. I'd prefer to just rip it

On Thu, Jul 2, 2015 at 12:47 PM, Tobias Hoffmann
<lfile-list at thax.hardliners.org> wrote:
> On 02/07/15 17:30, Tobias Hoffmann wrote:
>> 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* timebase master...
> Ok, I see now that the BBT update algorithm (in the "else" branch in
> timebase()) in transport.c is quite broken, because it accumulates rounding
> errors. However always using the first, recalculating branch (basically: if
> (true)) seems to be stable -- or at least: better than Hydrogen's timebase
> master, which updates the BBT only every few cycles... (I've read that
> somewhere a completely rewritten Jack Master implementation for Hydrogen is
> available, which I have not tested yet).
> I find it quite sad that even some code distributed in the jack tarball is
> an example of how NOT to use the Jack API ...
>   Tobias

More information about the Jackaudio mailing list