JackoAudioOut

JackoAudioOut — Sends an audio signal to a Jack port.

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

Sends an audio signal to an internal Jack audio output port, and in turn to its connected external Jack audio input port.

Note that it is possible to send audio out via Jack to the system audio interface, while at the same time rendering to a regular Csound output soundfile.

Syntax

JackoAudioOut  ScsoundPortName, asignal

Initialization

ScsoundPortName -- The short name ("portname") of the internal Jack audio output port.

Performance

asignal -- Audio to be sent to the external Jack audio input port to which CsoundPortName is connected.

Audio from multiple instances of the opcode sending to the same Jack port is summed before sending.

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

Examples

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

Example 492. Example of the JackoAudioOut opcode.

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

<CsoundSynthesizer>
<CsOptions>
; Select audio/midi flags here according to platform
-odac    ;;;realtime audio out
;-iadc    ;;;uncomment -iadc if realtime audio input is needed too
; For Non-realtime ouput leave only the line below:
; -o JackoAudioOut.wav -W ;;; for file output any platform
</CsOptions>
<CsInstruments>

sr    	   = 48000 ; The control rate must be BOTH a power of 2 (for Jack)
ksmps 	   = 128
nchnls 	   = 2
0dbfs 	   = 1

; by Menno Knevel - 2023

JackoInit "default", "csound"
JackoAudioOutConnect  "audioout", "system:playback_4"   ; create 1 Audio output & connect to soundcard 

instr 1     
asig    vco2 .2, 100
JackoAudioOut "audioout", asig      ; signal is send to the 4th audio channel of the soundcard
asig2   vco2 .2, 40
outs asig2, asig2                   ; while asig2 is send to channel 1&2 of the soundcard
endin

</CsInstruments>
<CsScore>

i 1 0 10
e
</CsScore>
</CsoundSynthesizer>


See also

Jacko Opcodes

Credits

By: Michael Gogins 2010