Jack2 1.9.6
Functions

Handling time

Functions

jack_nframes_t jack_frames_since_cycle_start (const jack_client_t *) JACK_OPTIONAL_WEAK_EXPORT
jack_nframes_t jack_frame_time (const jack_client_t *) JACK_OPTIONAL_WEAK_EXPORT
jack_nframes_t jack_last_frame_time (const jack_client_t *client) JACK_OPTIONAL_WEAK_EXPORT
jack_time_t jack_frames_to_time (const jack_client_t *client, jack_nframes_t) JACK_OPTIONAL_WEAK_EXPORT
jack_nframes_t jack_time_to_frames (const jack_client_t *client, jack_time_t) JACK_OPTIONAL_WEAK_EXPORT
jack_time_t jack_get_time () JACK_OPTIONAL_WEAK_EXPORT

Detailed Description

JACK time is in units of 'frames', according to the current sample rate. The absolute value of frame times is meaningless, frame times have meaning only relative to each other.


Function Documentation

jack_nframes_t jack_frames_since_cycle_start ( const jack_client_t *  )
Returns:
the estimated time in frames that has passed since the JACK server began the current process cycle.

Definition at line 1302 of file JackAPI.cpp.

jack_nframes_t jack_frame_time ( const jack_client_t *  )
Returns:
the estimated current time in frames. This function is intended for use in other threads (not the process callback). The return value can be compared with the value of jack_last_frame_time to relate time in other threads to JACK time.

Definition at line 1367 of file JackAPI.cpp.

jack_nframes_t jack_last_frame_time ( const jack_client_t *  client)
Returns:
the precise time at the start of the current process cycle. This function may only be used from the process callback, and can be used to interpret timestamps generated by jack_frame_time() in other threads with respect to the current process cycle.

This is the only jack time function that returns exact time: when used during the process callback it always returns the same value (until the next process callback, where it will return that value + nframes, etc). The return value is guaranteed to be monotonic and linear in this fashion unless an xrun occurs. If an xrun occurs, clients must check this value again, as time may have advanced in a non-linear way (e.g. cycles may have been skipped).

Definition at line 1375 of file JackAPI.cpp.

jack_time_t jack_frames_to_time ( const jack_client_t *  client,
jack_nframes_t   
)
Returns:
the estimated time in microseconds of the specified frame time

Definition at line 1325 of file JackAPI.cpp.

jack_nframes_t jack_time_to_frames ( const jack_client_t *  client,
jack_time_t   
)
Returns:
the estimated time in frames for the specified system time.

Definition at line 1346 of file JackAPI.cpp.

jack_time_t jack_get_time ( )
Returns:
return JACK's current system time in microseconds, using the JACK clock source.

The value returned is guaranteed to be monotonic, but not linear.

Definition at line 1317 of file JackAPI.cpp.