Nanomidi
Simple stream-based MIDI message encoder and decoder
MIDI Messages

MIDI message definitions and data structures. More...

Data Structures

struct  midi_message
 MIDI message data structure. More...
 

Enumerations

enum  midi_type {
  MIDI_TYPE_NOTE_OFF = 0x80, MIDI_TYPE_NOTE_ON = 0x90, MIDI_TYPE_POLYPHONIC_PRESSURE = 0xa0, MIDI_TYPE_CONTROL_CHANGE = 0xb0,
  MIDI_TYPE_PROGRAM_CHANGE = 0xc0, MIDI_TYPE_CHANNEL_PRESSURE = 0xd0, MIDI_TYPE_PITCH_BEND = 0xe0, MIDI_TYPE_TIME_CODE_QUARTER_FRAME = 0xf1,
  MIDI_TYPE_SONG_POSITION = 0xf2, MIDI_TYPE_SONG_SELECT = 0xf3, MIDI_TYPE_TUNE_REQUEST = 0xf6, MIDI_TYPE_TIMING_CLOCK = 0xf8,
  MIDI_TYPE_START = 0xfa, MIDI_TYPE_CONTINUE = 0xfb, MIDI_TYPE_STOP = 0xfc, MIDI_TYPE_ACTIVE_SENSE = 0xfe,
  MIDI_TYPE_SYSTEM_RESET = 0xff, MIDI_TYPE_SYSEX = 0xf0, MIDI_TYPE_SYSTEM_EXCLUSIVE = MIDI_TYPE_SYSEX
}
 MIDI message types. More...
 

Detailed Description

MIDI message definitions and data structures.

Enumeration Type Documentation

◆ midi_type

enum midi_type

MIDI message types.

Enumerator
MIDI_TYPE_NOTE_OFF 

Channel Mode: Note Off.

MIDI_TYPE_NOTE_ON 

Channel Mode: Note On.

MIDI_TYPE_POLYPHONIC_PRESSURE 

Channel Mode: Polyphonic Pressure (Aftertouch)

MIDI_TYPE_CONTROL_CHANGE 

Channel Mode: Control Change.

MIDI_TYPE_PROGRAM_CHANGE 

Channel Mode: Program Change.

MIDI_TYPE_CHANNEL_PRESSURE 

Channel Mode: Channel Pressure (Aftertouch)

MIDI_TYPE_PITCH_BEND 

Channel Mode: Pitch Bend Change.

MIDI_TYPE_TIME_CODE_QUARTER_FRAME 

System Common: MIDI Time Code Quarter Time.

MIDI_TYPE_SONG_POSITION 

System Common: Song Position Pointer.

MIDI_TYPE_SONG_SELECT 

System Common: Song Select.

MIDI_TYPE_TUNE_REQUEST 

System Common: Tune Request.

MIDI_TYPE_TIMING_CLOCK 

System Real Time: Timing Clock.

MIDI_TYPE_START 

System Real Time: Start.

MIDI_TYPE_CONTINUE 

System Real Time: Continue.

MIDI_TYPE_STOP 

System Real Time: Stop.

MIDI_TYPE_ACTIVE_SENSE 

System Real Time: Active Sensing.

MIDI_TYPE_SYSTEM_RESET 

System Real Time: System Reset.

MIDI_TYPE_SYSEX 

System Exclusive Message (SysEx)

MIDI_TYPE_SYSTEM_EXCLUSIVE 

Alias for MIDI_TYPE_SYSEX.