Live Midi Timecode In
live_midi_timecode_inSync an ismail set to another app's MIDI Time Code so playback follows a video player, DAW, or tape machine's play, stop, locate, and speed while keeping the set's own tempo.
Instructions
The set chases another app's MIDI Time Code (MTC) in: a video player, a DAW or a tape machine leads the position, its play, stop and locate. Reach for it when the set should sync to video timecode, chase or follow their timecode or SMPTE time, play when the video plays and stop when it stops (a tempo and beat to follow: live_midi_clock_in; the set leading: live_midi_timecode). source: an input's name or a unique part of it (midi_sources). MTC carries no tempo, so the set keeps its own (live_tempo works) and lays its bar lines on their time: offset ('hh:mm:ss:ff' or seconds, default 0) is their bar 1, and their bars run from there at the set's tempo. When their time runs (eight quarter frames in order, two frames after they start) the set goes silent and comes in on the first of their bar lines it can reach (one to two bars; the news says "their 01:00:04:00 = ismail bar 33"), then keeps its beats on theirs and follows their speed (a varispeed or a tape 1% fast) with tempo changes as live_midi_clock_in makes them (phase_tol_ms 4, tempo_tol_bpm 0.25, max_bend_pct 3, step_beats a bar, bandwidth_hz 0.5). No quarter frame for dropout_ms (250; under it the set plays through the gap): their transport stopped, and the set is silent until their time runs again. A full-frame message (a locate), a jump in their time, or a new rate relocks the same way; running backwards silences it. rate: 24, 25, 29.97 (drop-frame) or 30 to take only that rate (another is not followed, and the news says so); 'any' (the default) takes what they send. An offset their rate has no label for (00:01:00:00 at drop-frame, frame 24 at 24 fps) is not followed: the news and live_status name the label that exists (pin rate= to have it checked when given). A grid live_tempo moved holds through their stops, locates and relocks; a new offset or rate starts it again from offset. A sender that holds quarter frames and lets them out at once plays through: their numbering runs on, so it is no jump. offset_ms: positive lands ismail later, for an app whose sound is late. With MIDI clock in on too, the clock leads (it carries the tempo) and timecode only reads their time. Call again to change a setting; on=False lets go. With no source: the inputs and the chase; live_status shows their time, the lock and the phase. Not yet: placing the set at their exact time (a live set cannot jump), their tempo map, 29.97 non-drop.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| on | No | ||
| rate | No | ||
| offset | No | ||
| source | No | ||
| project | Yes | ||
| offset_ms | No | ||
| dropout_ms | No | ||
| step_beats | No | ||
| bandwidth_hz | No | ||
| max_bend_pct | No | ||
| phase_tol_ms | No | ||
| tempo_tol_bpm | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |