midictrl — Get the current value (0-127) of a specified MIDI controller.


Get the current value (0-127) of a specified MIDI controller.


ival midictrl inum [, imin] [, imax]
kval midictrl inum [, imin] [, imax]


inum -- MIDI controller number (0-127)

imin, imax -- set minimum and maximum limits on values obtained.


Get the current value (0-127) of a specified MIDI controller.


midictrl should only be used in notes that were triggered from MIDI, so that an associated channel number is available. For notes activated from the score, line events, or orchestra, the ctrl7 opcode that takes an explicit channel number should be used instead.


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

Example 540. Example of the midictrl opcode.

; Select audio/midi flags here according to platform
-odac  -+rtmidi=virtual -M0   ;;;realtime audio out and realtime midi in
;-iadc    ;;;uncomment -iadc if realtime audio input is needed too
; For Non-realtime ouput leave only the line below:
; -o midictrl.wav -W ;;; for file output any platform

sr = 44100
ksmps = 32
nchnls = 2
0dbfs  = 1

instr 1
icps	cpsmidi	 	 
iamp	ampmidi	.5
ips	midictrl 9, 10, 500		;controller 9	 
kenv	madsr	0.5, 0, 1, 0.5
asig	pluck	kenv, icps, ips, 2, 1	;change tone color	 
	outs	asig, asig			
f 2 0 4096 10 1	;sine wave
; no score events allowed
f0 30	;runs 30 seconds

See Also

aftouch, ampmidi, cpsmidi, cpsmidib, notnum, octmidi, octmidib, pchbend, pchmidi, pchmidib, veloc


Author: Barry L. Vercoe - Mike Berry
MIT - Mills
May 1997

Thanks goes to Rasmus Ekman for pointing out the correct controller number range.