JACK_MIDI_CLOCK(1)

NAME
jack_midi_clock - JACK MIDI Beat Clock Generator

SYNOPSIS
jack_midi_clock [ OPTIONS ] [JACK-port]*

DESCRIPTION
jack_midi_clock - JACK app to generate MCLK from JACK transport.

OPTIONS

-b <bpm>, --bpm <bpm>
    default BPM (if jack timecode master in not available)

-B, --force-bpm
    ignore jack timecode master

-d <sec>, --resync-delay <sec>
    seconds between 'song-position' and 'continue' message

-J, --jitter-level <percent>
    add artificial jitter to the signal 0..20% default: off (0)

-P, --no-position
    do not send song-position (0xf2) messages

-T, --no-transport
    do not send start/stop/continue messages

-s, --strict-bpm
    interpret tempo strictly as beats per minute (default is quarter-notes per minute)

-h, --help
    display this help and exit

-V, --version
    print version information and exit

jack_midi_clock sends MIDI beat clock message if jack-transport is rolling. it also sends start, continue and stop MIDI realtime messages whenever the transport changes state (unless -T option is used).

In order for jack_midi_clock to send clock messages, a JACK timecode master must be present and provide the tempo map (bar, beat, tick). Alternatively the -b option can be used to set a default BPM value. If a value larger than zero is given, it will be used if no timecode master is present. Combined with the -B option it can used to override and ignore the JACK timecode master and only act on transport state alone.

Either way, jack_midi_clock will never act as timecode master itself.

Note that song-position information is only sent if a timecode master is present ad the -P option is not given.

To allow external synths to accurately sync to song-position, there is a two second delay between the 'song-position changed' message (which is not a MIDI realtime message) and the 'continue transport' message. This delay can be configured with the -d option and is only relevant for if playback starts at a bar|beat|tick other than 1|1|0 in which case a 'start' message is sent immediately.

jack_midi_clock runs until it receives a HUP or INT signal or jackd is terminated.

See also: jack_transport(1), jack_mclk_dump(1)

REPORTING BUGS
Report bugs to Robin Gareus <robin@gareus.org>
Website: https://github.com/x42/jack_midi_clock/

COPYRIGHT
Copyright © GPL 2013 Robin Gareus <robin@gareus.org>
Copyright © GPL 2009 Gabriel M. Beddingfield <gabriel@teuton.org>