OSC magic

OSC, MIDI, GPIO, RS232

OscMagic-components

 

OSC → MIDI

1-Byte Message

OSC[Index] Inhalt / Bedeutung Wert / Kommentar
OSC[0] / Start OSC-Pfad
OSC[1] O -
OSC[2] M -
OSC[3] I -
OSC[4] / Delimiter
OSC[5] F Status MSN (High Nibble)
OSC[6] A Status LSN (Low Nibble)
OSC[7] 0 Null-Terminator für Status
OSC[8] , Argumenten-Delimiter
OSC[9] f Typ Float32
OSC[10] 0 Null-Terminator
OSC[11] 0 Null-Terminator
OSC[12] Float32 – Byte 1 / MSB Dummy = 0xBF
OSC[13] Float32 – Byte 2 Dummy = 0x80
OSC[14] Float32 – Byte 3 Dummy = 0
OSC[15] Float32 – Byte 4 / LSB Dummy = 0

 

OSC → MIDI

2-Byte Message

OSC[Index] Inhalt / Bedeutung Wert / Kommentar
OSC[0] / Start OSC-Pfad
OSC[1] O -
OSC[2] M -
OSC[3] I -
OSC[4] / Delimiter
OSC[5] C Status High Nibble (C, D, F)
OSC[6] 0 Status Low Nibble (0-F)
OSC[7] 0 Null-Terminator für Status
OSC[8] , Argumenten-Delimiter
OSC[9] f Typ Float32
OSC[10] 0 Null-Terminator
OSC[11] 0 Null-Terminator
OSC[12] Float32 – Byte 1 / MSB Data 1 High Byte (Big-Endian)
OSC[13] Float32 – Byte 2 Data 1 Byte 1
OSC[14] Float32 – Byte 3 Data 1 Byte 2
OSC[15] Float32 – Byte 4 / LSB Data 1 Low Byte (Big-Endian)
 

OSC → MIDI

3-Byte Message

OSC[Index] Inhalt / Bedeutung Wert / Kommentar
OSC[0] / Start OSC-Pfad
OSC[1] O -
OSC[2] M -
OSC[3] I -
OSC[4] / Delimiter
OSC[5] 9 Status High Nibble (8,9,A,B,E,F)
OSC[6] 0 Status Low Nibble (0-F)
OSC[7] Leerzeichen
OSC[8] 7 Data 1 High Nibble (0–7)
OSC[9] F Data 1 Low Nibble (0-F)
OSC[10] 0 Null-Terminator
OSC[11] 0 Null-Terminator
OSC[12] , Argumenten-Delimiter
OSC[13] f Typ Float32
OSC[14] 0 Null-Terminator
OSC[15] 0 Null-Terminator
OSC[16] Float32 – Byte 1 / MSB Data 2 High Byte
OSC[17] Float32 – Byte 2 Data 2 Byte 1
OSC[18] Float32 – Byte 3 Data 2 Byte 2
OSC[19] Float32 – Byte 4 / LSB Data 2 Low Byte
 

MIDI → OSC

1-Byte Message

OSC[Index] Inhalt / Bedeutung Wert / Kommentar
OSC[0] / Start OSC-Pfad
OSC[1] O -
OSC[2] M -
OSC[3] B -
OSC[4] / Delimiter
OSC[5] 0 Null-Terminator
OSC[6] 0 Null-Terminator
OSC[7] 0 Null-Terminator
OSC[8] , Argumenten-Delimiter
OSC[9] i Typ Int32
OSC[10] 0 Null-Terminator
OSC[11] 0 Null-Terminator
OSC[12] Int32 – Byte 1 / MSB Status High Byte (Big-Endian)
OSC[13] Int32 – Byte 2 Status Byte 1
OSC[14] Int32 – Byte 3 Status Byte 2
OSC[15] Int32 – Byte 4 / LSB Status Low Byte (Big-Endian)
 

MIDI → OSC

2-Byte Message

OSC[Index] Inhalt / Bedeutung Wert / Kommentar
OSC[0] / Start OSC-Pfad
OSC[1] O -
OSC[2] M -
OSC[3] B -
OSC[4] / Delimiter
OSC[5] 0 Null-Terminator
OSC[6] 0 Null-Terminator
OSC[7] 0 Null-Terminator
OSC[8] , Argumenten-Delimiter
OSC[9] i Typ Int32
OSC[10] i Typ Int32
OSC[11] 0 Null-Terminator
OSC[12] Int32 – Byte 1 / MSB Status High Byte (Big-Endian)
OSC[13] Int32 – Byte 2 Status Byte 1
OSC[14] Int32 – Byte 3 Status Byte 2
OSC[15] Int32 – Byte 4 / LSB Status Low Byte (Big-Endian)
OSC[16] Int32 – Byte 1 / MSB Data 1 High Byte (Big-Endian)
OSC[17] Int32 – Byte 2 Data 1 Byte 1
OSC[18] Int32 – Byte 3 Data 1 Byte 2
OSC[19] Int32 – Byte 4 / LSB Data 1 Low Byte (Big-Endian)
 

MIDI → OSC

3-Byte Message

OSC[Index] Inhalt / Bedeutung Wert / Kommentar
OSC[0] / Start OSC-Pfad
OSC[1] O -
OSC[2] M -
OSC[3] B -
OSC[4] / Delimiter
OSC[5] 0 Null-Terminator
OSC[6] 0 Null-Terminator
OSC[7] 0 Null-Terminator
OSC[8] , Argumenten-Delimiter
OSC[9] i Typ Int32
OSC[10] i Typ Int32
OSC[11] i Typ Int32
OSC[12] 0 Null-Terminator
OSC[13] 0 Null-Terminator
OSC[14] 0 Null-Terminator
OSC[15] 0 Null-Terminator
OSC[16] Int32 – Byte 1 / MSB Status High Byte (Big-Endian)
OSC[17] Int32 – Byte 2 Status Byte 1
OSC[18] Int32 – Byte 3 Status Byte 2
OSC[19] Int32 – Byte 4 / LSB Status Low Byte (Big-Endian)
OSC[20] Int32 – Byte 1 / MSB Data 1 High Byte (Big-Endian)
OSC[21] Int32 – Byte 2 Data 1 Byte 1
OSC[22] Int32 – Byte 3 Data 1 Byte 2
OSC[23] Int32 – Byte 4 / LSB Data 1 Low Byte (Big-Endian)
OSC[24] Int32 – Byte 1 / MSB Data 2 High Byte (Big-Endian)
OSC[25] Int32 – Byte 2 Data 2 Byte 1
OSC[26] Int32 – Byte 3 Data 2 Byte 2
OSC[27] Int32 – Byte 4 / LSB Data 2 Low Byte (Big-Endian)
 

OSC → GPO

2-Byte Message

OSC[Index] Inhalt / Bedeutung Wert / Kommentar
OSC[0] / Start OSC-Pfad
OSC[1] G -
OSC[2] P -
OSC[3] O -
OSC[4] / Delimiter
OSC[5] A GPO PORT A–D
OSC[6] 1 GPO CHANNEL 1–8 als ASCII
OSC[7] 0 Null-Terminator
OSC[8] , Argumenten-Delimiter
OSC[9] f Typ Float32
OSC[10] 0 Null-Terminator
OSC[11] 0 Null-Terminator
OSC[12] Float32 – Byte 1 / MSB Data 2 High Byte (Big-Endian)
OSC[13] Float32 – Byte 2 Data 2 Byte 1
OSC[14] Float32 – Byte 3 Data 2 Byte 2
OSC[15] Float32 – Byte 4 / LSB Data 2 Low Byte (Big-Endian)
 

OSC → SERIAL

3-Byte Message

OSC[Index] Inhalt / Bedeutung Wert / Kommentar
OSC[0] / Start OSC-Pfad
OSC[1] S -
OSC[2] E -
OSC[3] R -
OSC[4] / Delimiter
OSC[5] 9 Status High Nibble (0–F)
OSC[6] 0 Status Low Nibble (0-F)
OSC[7] Leerzeichen
OSC[8] 6 Data 1 High Nibble (0–7)
OSC[9] 4 Data 1 Low Nibble (0-F)
OSC[10] 0 Null-Terminator
OSC[11] 0 Null-Terminator
OSC[12] , Argumenten-Delimiter
OSC[13] f Typ Float32
OSC[14] 0 Null-Terminator
OSC[15] 0 Null-Terminator
OSC[16] Float32 – Byte 1 / MSB Data 2 High Byte (Big-Endian)
OSC[17] Float32 – Byte 2 Data 2 Byte 1
OSC[18] Float32 – Byte 3 Data 2 Byte 2
OSC[19] Float32 – Byte 4 / LSB Data 2 Low Byte (Big-Endian)