hostsync~ Reference

Get transport control info from a ReWire host

hostsync~

Description

The hostsync~ object provides information about the current state of the ReWire host.

Discussion

Sample count information is available in any host; even Max. The validity of the other information output by the object is dependent upon what synchronization capabilities the ReWire host implements; the value from the flags (10th) outlet tells you what information is valid. Output from hostsync~ is continuous when the scheduler is running. Alternatively, you can bang its inlet to report the current values.

Arguments

None.

Attributes

Common Box Attributes

Messages

bang

bang will cause the hostsync~ object to report its transport state.

Output

float

Out 4nd outlet: The current beat fraction, from 0 to 1.0. If the ReWire host does not support synchronization, there is no output from this outlet.

float

Out 6th outlet: The current tempo in samples per beat. This number can be converted to beats per minute using the following formula: (sampling-rate / samples-per-beat) * 60. If the ReWire host does not support synchronization, there is no output from this outlet.

float

Out 7th outlet: The current number of beats, expressed in 1 PPQ. This number will contain a fractional part between beats. If the ReWire host does not support synchronization, there is no output from this outlet.

int

Out left outlet: 1 if the ReWire host's transport is currently running; 0 if it is stopped or paused.

int

Out 2nd outlet: The current bar count in the ReWire host sequence, starting at 1 for the first bar. If the ReWire host does not support synchronization, there is no output from this outlet.

int

Out 3rd outlet: The current beat count in the ReWire host sequence, starting at 1 for the first beat. If the ReWire host does not support synchronization, there is no output from this outlet.

int

Out 8th outlet: The current sample count, as defined by the ReWire host.

int

Out 10th outlet: A number representing the validity of the other information coming from hostsync~. Mask with the following values to determine if the information from hostsync~ will be valid.

Sample Count Valid 1 (always true)

Beats Valid 2 (2nd, 3rd, 4th, and 7th outlets valid)

Time Signature Valid 4 (5th outlet valid)

Tempo Valid 8 (6th outlet valid)

Transport Valid 16 (left outlet valid)

Loop Info Valid 64 (9th outlet valid)

list

Out 5th outlet: The current time signature as a list containing numerator followed by denominator. For instance, 3/4 time would be output as the list 3 4. If the ReWire host does not support time signature information, there is no output from this outlet.

list

Out 9th outlet: The loop info output as a list of three numbers containing loop on/off state (0,1), the loop start point (in 1PPQ ticks), and the loop stop point (in 1PPQ ticks). For example, if the time signature was 4/4 and looping was on from the start of the fifth measure for four bars the list would be 1 16 32.

See Also

Name Description
hostcontrol~
hostphasor~