dssiaudio

dssiaudio — Processes audio using a LADSPA or DSSI plugin.

Syntax

[aout1, aout2, ..., aout9] dssiaudio ihandle, [ain1, ain2, ..., ain9]

Description

dssiaudio generates audio by processing an input signal through a LADSPA plugin.

Initialization

ihandle - handle for the plugin returned by dssiinit

Performance

aout1, aout2, etc - Audio ouput generated by the plugin

ain1, ain2, etc - Audio provided to the plugin for processing

dssiaudio runs a plugin on the provided audio and produces audio output. Currently upto four inputs and outputs are provided. You should provide signal for all the plugins audio inputs, otherwise unpredictable results may occur. If the plugin doesn't have any input (e.g Noise generator) you must still provide at least one input variable, which will be ignored with a message.

Only one dssiaudio should be executed once per plugin, or strange results may occur.

Examples

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

Example 196. Example of the dssiaudio 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     ;;;RT audio out
;-iadc    ;;;uncomment -iadc if RT audio input is needed too
; For Non-realtime ouput leave only the line below:
; -o DSSIplay_mono.wav -W ;;; for file output any platform
</CsOptions>
<CsInstruments>

sr = 44100
ksmps = 32
nchnls = 2

gihandle dssiinit "caps.so", 19, 1	; = mono phaser and
gaout    init  0			; verbose about all ports

instr 1	; activate DSSI

dssiactivate gihandle, 1
endin

instr 2
ain1	diskin2 "beats.wav", 1,0,1	; loop

gaout = gaout+(ain1*.5)
endin

instr 3

dssictls gihandle, 0, .8, 1		; range -1 to 1
dssictls gihandle, 1, .05, 1		; rate 0 to 10
dssictls gihandle, 2, .8, 1		; depth 0 to 1
dssictls gihandle, 3, 2, 1		; spread 0 to 3.14
dssictls gihandle, 4, .7, 1		; feedback 0 to 0.999

endin

instr 4

aout1 dssiaudio gihandle, gaout	;get beats.wav, mono out
      outs aout1,aout1

gaout = 0

endin
</CsInstruments>
<CsScore>
i 1 0 20 
i 2 1 20
i 3 1 20
i 4 0 20

e
</CsScore>
</CsoundSynthesizer>


Credits

2005

By: Andrés Cabrera

Uses code from Richard Furse's LADSPA sdk.