outic ichn, inum, ivalue, imin, imax outkc kchn, knum, kvalue, kmin, kmax outic14 ichn, imsb, ilsb, ivalue, imin, imax outkc14 kchn, kmsb, klsb, kvalue, kmin, kmax outipb ichn, ivalue, imin, imax outkpb kchn, kvalue, kmin, kmax outiat ichn, ivalue, imin, imax outkat kchn, kvalue, kmin, kmax outipc ichn, iprog, imin, imax outkpc kchn, kprog, kmin, kmax outipat ichn, inotenum, ivalue, imin, imax outkpat kchn, knotenum, kvalue, kmin, kmax
Send a single channel message to the MIDI OUT port.
ichn, kchn - MIDI channel number (0-15)
inum, knum - controller number (0-127 for example 1 = ModWheel; 2 = BreathControl etc.)
ivalue, kvalue - floating point value
imin, kmin - minimum floating point value (converted in MIDI integer value 0)
imax, kmax - maximum floating point value (converted in MIDI integer value 127 (7 bit) or 16383 (14 bit))
imsb, kmsb - most significant byte controller number when using 14 bit parameters
ilsb, klsb - least significant byte controller number when using 14 bit parameters
iprog, kprog - program change number in floating point
inotenum, knotenum - MIDI note number (used in polyphonic aftertouch messages)
outic and outkc (i- and k-rate MIDI controller output) send controller messages to MIDI OUT device. outi14 and outk14 (i and k-rate MIDI 14 bit controller output) send a pair of controller messages. These opcodes can drive 14 bit parameters on MIDI instruments that recognize them. The first control message contains the most significant byte of i(k)value argument while the second message contains the less significant byte. i(k)msb and i(k)lsb are the number of the most and less significant controller.
outipb and outkpb (i- and k-rate pitch bend output) send pitch bend messages.
outiat and outkat (i- and k-rate aftertouch output) send aftertouch messages. outiat and outkat (i- and k-rate aftertouch output) send aftertouch messages.
outipc and outkpc (i- and k-rate program change output) send program change messages.
outipat and outkpat (i- and k-rate polyphonic aftertouch output) send polyphonic aftertouch messages.
These opcodes can drive a different value of a parameter for each note currently active. They work only with MIDI instruments which recognize them.
N.B. All these opcodes can scale the i-(k-)value floating-point argument according with i(-)max and i(k)min values. For example, setting i(k)min = 1.0 and i(k)max = 2.0, when i(k)value argument receives a 2.0 value, the opcode will send a 127 value to MIDI OUT device, while when receiving a 1.0 it will send a 0 value. i-rate opcodes send their message once during instrument initialization. k-rate opcodes send a message each time the MIDI converted value of argument i(k)value changes.
Prior to Csound version 3.52, these opcodes were named ioutc, koutc, ioutc14, koutc14, ioutpb, koutpb, ioutat, koutat, ioutpc, koutpc, ioutpat, and koutpat. The current names were adopted with version 3.52 (February, 1999) to avoid name space pollution.
Gabriel Maldonado
Italy
New in Csound version 3.47