octmidi

octmidi — Get the note number, in octave-point-decimal units, of the current MIDI event.

Description

Get the note number, in octave-point-decimal units, of the current MIDI event.

Syntax

ioct octmidi

Performance

Get the note number of the current MIDI event, expressed in octave-point-decimal units, for local processing.

[Note] octmidi vs. octmidinn

The octmidi opcode only produces meaningful results in a Midi-activated note (either real-time or from a Midi score with the -F flag). With octmidi, the Midi note number value is taken from the Midi event that is internally associated with the instrument instance. On the other hand, the octmidinn opcode may be used in any Csound instrument instance whether it is activated from a Midi event, score event, line event, or from another instrument. The input value for octmidinn might for example come from a p-field in a textual score or it may have been retrieved from the real-time Midi event that activated the current note using the notnum opcode.

Examples

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

Example 677. Example of the octmidi 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
; Audio out   Audio in   No messages  MIDI in
-odac           -iadc     -d         -M0  ;;;RT audio I/O with MIDI in
; For Non-realtime ouput leave only the line below:
; -o octmidi.wav -W ;;; for file output any platform
</CsOptions>
<CsInstruments>

; Initialize the global variables.
sr = 44100
kr = 4410
ksmps = 10
nchnls = 1

; Instrument #1.
instr 1
  ; This example expects MIDI note inputs on channel 1
  i1 octmidi

  print i1
endin


</CsInstruments>
<CsScore>

;Dummy f-table to give time for real-time MIDI events
f 0 8000
e


</CsScore>
</CsoundSynthesizer>


See also

Midi Converters

Credits

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

Example written by Kevin Conder.