Skip to content

outiat

Sends MIDI aftertouch messages at i-rate.

Syntax

outiat ichn, ivalue, imin, imax

Initialization

ichn -- MIDI channel number (1-16)

ivalue -- floating point value

imin -- minimum floating point value (converted in MIDI integer value 0)

imax -- maximum floating point value (converted in MIDI integer value 127 (7 bit))

Performance

outiat (i-rate aftertouch output) sends aftertouch messages. It works only with MIDI instruments which recognize them. It can drive a different value of a parameter for each note currently active.

It can scale an i-value floating-point argument according to the imin and imax values. For example, set imin = 1.0 and imax = 2.0. When the ivalue argument receives a 2.0 value, the opcode will send a 127 value to the MIDI OUT device. When the ivalue argument receives a 1.0 value, it will send a 0 value. i-rate opcodes send their message once during instrument initialization.

Examples

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

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

sr = 44100
ksmps = 10
nchnls = 2

instr 1

ikey notnum 
ivel  veloc

ivib = 25               ;low value.
outiat 1, ivib, 0, 127  ;assign aftertouch on
print ivib              ;external synth for example to
midion 1, ikey, ivel    ;change depth of filter modulation

endin
</CsInstruments>
<CsScore>
f0 30                   ;play for 30 seconds

e
</CsScore>
</CsoundSynthesizer>

See also

MIDI Message Output

Credits

Author: Gabriel Maldonado
Italy

New in Csound version 3.47

Thanks goes to Rasmus Ekman for pointing out the correct MIDI channel and controller number ranges.