outkat

outkat — Sends MIDI aftertouch messages at k-rate.

Description

Sends MIDI aftertouch messages at k-rate.

Syntax

outkat kchn, kvalue, kmin, kmax

Performance

kchn -- MIDI channel number (1-16)

kvalue -- floating point value

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

kmax -- maximum floating point value (converted in MIDI integer value 127)

outkat (k-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 the k-value floating-point argument according to the kmin and kmax values. For example: set kmin = 1.0 and kmax = 2.0. When the kvalue argument receives a 2.0 value, the opcode will send a 127 value to the MIDI OUT device. When the kvalue argument receives a 1.0 value, it will send a 0 value. k-rate opcodes send a message each time the MIDI converted value of argument kvalue changes.

Examples

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

Example 710. Example of the outkat 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 -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 outkat.wav -W ;;; for file output any platform
</CsOptions>
<CsInstruments>

sr = 44100
ksmps = 10
nchnls = 2

instr 1

ikey notnum 
ivel  veloc

kvib linseg 100, .5, 120	;vary aftertouch in .5 second
kvbr = int(kvib)		;whole numbers only
outkat 1, kvbr, 0, 127		;assign aftertouch on
printk2 kvbr			;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.