Document
MIDI-OSC変換ルール
Creators' HubでのMIDIとOSCの間の変換ルールです。MIDIメッセージがどのようなOSCメッセージに変換されるか、どのようなOSCメッセージを書けばMIDIに変換されるかを示しています。 (現在利用できるメッセージの一覧です。このルールはamei-musicのgithubでオープンに議論・検討して仕様を決めて拡張していきます)
Note On
MIDI: [0x9n note_num velocity]
OSC : /midi/noteon/ ch note_num velocity
Note Off
MIDI: [0x8n note_num velocity]
OSC : /midi/noteoff/ ch note_num velocity
Note Pressure
MIDI: [0xAn note_num value]
OSC : /midi/notepressure ch note_num value
Control Change
MIDI: [0xBn type value]
OSC : /midi/controlchange ch type value
Program Change
MIDI: [0xCn value]
OSC : /midi/programchange ch value
Channel Pressure
MIDI: [0xDn value]
OSC : /midi/channelpressure ch value
Pitch Bend
MIDI: [0xEn msb lsb]
OSC : /midi/pitchbend ch msb lsb
System Exclusive
MIDI: [0xF0 value1 value2 value3 ... 0xF7]
OSC : /midi/sysex 240 value1 value2 value3 … 247
具体例
以上の記述では、MIDIメッセージ中のnはOSCメッセージのch(チャンネル番号)にあたります。
チャンネルは0から15(16進数で0からF)までの値を取り、その他の値は0から127までを設定できます。以下に具体例を示します。
- Note Onメッセージ
- チャンネル: 15(16進数で表すとF)
- ノートナンバー: 60
- ベロシティ: 100
MIDI: [0x9F 60 100]
OSC : /midi/noteon/ 15 60 100