JackoTransport

JackoTransport — Control the Jack transport.

Description

Plugin opcode in jacko. This opcode is part of the plugin repository and has to be installed separately. The plugin repository can be found here: https://github.com/csound/plugins

Starts, stops, or repositions the Jack transport. This is useful, e.g., for starting an external sequencer playing to send MIDI messages to Csound.

Syntax

JackoTransport  kcommand, [kposition]

Performance

kcommand -- 0 means "no action", 1 starts the transport, 2 stops the transport, and 3 positions the transport to kposition seconds from the beginning of performance (i.e. time 0 in the score).

kposition -- Time to position to the transport, in seconds from the beginning of performance (i.e. time 0 in the score).

This opcode can be used at init time or during performance.

The granularity of timing is Csound's kperiod.

[Note] Note
works with an already running Jack daemon. Do not use -+rtaudio=jack in CsOptions

Examples

Here is an example of the JackoTransport opcode. It uses the file JackoTransport.csd.

Example 501. Example of the JackoTransport opcode.

See the sections Real-time Audio and Command Line Flags for more information on using command line flags.

<CsoundSynthesizer>
<CsOptions>
-n
</CsOptions>
<CsInstruments>
sr  = 48000
ksmps = 128
nchnls  = 2
0dbfs   = 1

; by Menno Knevel - 2023

JackoInit   "default", "csound6"                                        ; Csound as a Jack client

instr 1	; position & start external DAW
JackoTransport  3, 10                                                   ; set playbackhead of DAW to zero in 10 seconds                                                    
JackoTransport  1                                                       ; start transport and thus the playbackhead
endin

instr 2	; stop playback of DAW
JackoTransport  2
endin

</CsInstruments>
<CsScore>
i1  5	.1
i2  20  .1
e
</CsScore>
</CsoundSynthesizer>


See also

Jacko Opcodes

Credits

By: Michael Gogins 2010