Jack timebase synchronization

Programming applications for making music on Linux.

Moderators: MattKingUSA, khz

Post Reply
User avatar
raboof
Established Member
Posts: 1865
Joined: Tue Apr 08, 2008 11:58 am
Location: Deventer, NL
Has thanked: 52 times
Been thanked: 80 times
Contact:

Jack timebase synchronization

Post by raboof »

Apart from connecting clients and keeping them in-time, jack also offers transport control and timebase synchronization services.

One process acts as a 'timebase master', and others may choose to sync to this masters' time. Aside from current frame numbers, a timebase master may also emit more abstract information such as the current location in 'Beat/Bar/Tick' format and the current BPM.

While this system isn't perfect (it requires all clients' time signature maps to be synced up), it does open up some interesting possibilities: in theory one application (the timebase master) could govern tempo changes, and other applications could be written in such a way to follow tempo changes automatically.

Right now most timebase clients seem to assume a constant BPM (disallowing tempo changes entirely), but as a 'hello world' I wrote a JACK MIDI metronome that syncs to a BBT-emitting timebase master. Note that it only emits note-on events, so be sure to choose a non-sustained instrument :)

http://arnout.engelen.eu/files/dev/linu ... metronome/
brummer

Re: Jack timebase synchronization

Post by brummer »

hi raboof

can you please give a short discription, how to use it ? I build and run it, connect it with fluidsynth or wavetable, play midi, audio, but I dont hear anything from the metronome ?
I use ardour as time master.

regards hermann
User avatar
raboof
Established Member
Posts: 1865
Joined: Tue Apr 08, 2008 11:58 am
Location: Deventer, NL
Has thanked: 52 times
Been thanked: 80 times
Contact:

Re: Jack timebase synchronization

Post by raboof »

brummer wrote:can you please give a short discription, how to use it? I build and run it, connect it with fluidsynth or wavetable, play
That should indeed emit a midi note-on message on each beat.
I use ardour as time master.
Does ardour produce BBT data? (you can see in qjackctl: if it shows '--:--.----' no BBT information is received)
brummer

Re: Jack timebase synchronization

Post by brummer »

Ah, okay, got it

Qtractor send BBT Data, interresting stuff.

Thanks :D
User avatar
raboof
Established Member
Posts: 1865
Joined: Tue Apr 08, 2008 11:58 am
Location: Deventer, NL
Has thanked: 52 times
Been thanked: 80 times
Contact:

Re: Jack timebase synchronization

Post by raboof »

I now also added an application playing a given melody in sync with the BBT master:

http://arnout.engelen.eu/files/dev/linu ... /midiplay/
Post Reply