these cannot be set from clients; the server sets them
Applications that support JackPositionBBT are encouraged to also fill the JackBBTFrameOffset
EXPERIMENTAL: could change
Struct for transport position information.
number of audio frames per video frame. Should be assumed zero if JackAudioVideoRatio is not set. If JackAudioVideoRatio is set and the value is zero, no video data exists within the JACK graph
Should be >0: the first bar is bar '1'.
number of ticks that have elapsed between frame 0 and the first beat of the current measure.
frame offset for the BBT fields (the given bar, beat, and tick values actually refer to a time frame_offset frames before the start of the cycle), should be assumed to be 0 if JackBBTFrameOffset is not set. If JackBBTFrameOffset is set and this value is zero, the BBT time refers to the first frame of this cycle. If the value is positive, the BBT time refers to a frame that many frames before the start of the cycle.
Should be >0 and <=beats_per_bar: the first beat is beat '1'.
time signature "denominator"
time signature "numerator"
BPM, quantized to block size. This means when the tempo is not constant within this block, the BPM value should adapted to compensate for this. This is different from most fields in this struct, which specify the value at the beginning of the block rather than an average.
frame number, always present/required.
This is the frame number on the transport timeline, which is not the same as what jack_frame_time returns.
current time in seconds
next sequential frame_time (unless repositioned)
Should be >0 and <=ticks_per_beat: the first tick is tick '0'.
number of ticks within a bar.
Usually a moderately large integer with many denominators, such as 1920.0
microsecond timestamp that is guaranteed to be monotonic, but not neccessarily linear.
The absolute value is implementation-dependent (i.e. it could be wall-clock, time since jack started, uptime, etc).
which other fields are valid, as a bitmask constructed from values in jack_position_bits_t
audio frame at which the first video frame in this cycle occurs. Should be assumed to be 0 if JackVideoFrameOffset is not set. If JackVideoFrameOffset is set, but the value is zero, there is no video frame within this cycle.