A newer version of Max is available. Click here to access the latest version of the Max documentation

midiparse Reference

Interpret raw MIDI data

midiparse

Description

Separates raw MIDI bytes into standard message types. This object works particularly well formatting the output of the midiin and seq objects.

Examples

Interpret the meaning of MIDI messages and filter different types of data

Arguments

None.

Attributes

hires [int] (default: 0)7.2.0

The hires attribute is used to support high-resolution pitch bend scaling. When the attribute is set to 0 (default), midiparse will accept and output pitch bend integer values in the standard MIDI range of 0 to 127. When the attribute is set to 1, it accepts high resolution MIDI data and outputs float values in the range of -1 to 1. When the attribute is set to 2, it accepts high resolution MIDI data and outputs integer values in the range of -8192 to 8191 (standard 14-bit MIDI high resolution pitch bend range). Possible values:

0 = 'Off (0-127)' ( Standard 8-bit MIDI pitch bend range (default) )
1 = 'Float (-1 to 1)' ( Uses pitch bend messages in the audio signal range )
2 = '14-bit Fixed (-8192 to 8191)' ( Standard 14-bit MIDI high resolution pitch bend range )

Common Box Attributes

annotation [symbol]

Sets the text that will be displayed in the Clue window when the user moves the mouse over the object.

background [int] (default: 0)

Adds or removes the object from the patcher's background layer. background 1 adds the object to the background layer, background 0 removes it. Objects in the background layer are shown behind all objects in the default foreground layer.

color [4 floats]

Sets the color for the object box outline.

fontface [int]

Sets the type style used by the object. The options are:

plain
bold
italic
bold italic Possible values:

0 = 'regular'
1 = 'bold'
2 = 'italic'
3 = 'bold italic'

fontname [symbol]

Sets the object's font.

fontsize [float]

Sets the object's font size (in points). Possible values:

'8'
'9'
'10'
'11'
'12'
'13'
'14'
'16'
'18'
'20'
'24'
'30'
'36'
'48'
'64'
'72'

hidden [int] (default: 0)

Toggles whether an object is hidden when the patcher is locked.

hint [symbol]

Sets the text that will be displayed in as a pop-up hint when the user moves the mouse over the object in a locked patcher.

ignoreclick [int] (default: 0)

Toggles whether an object ignores mouse clicks in a locked patcher.

jspainterfile [symbol]

JS Painter File

patching_rect [4 floats] (default: 0. 0. 100. 0.)

Sets the position and size of the object in the patcher window.

position [2 floats]

g/s(set)

Sets the object's x and y position in both patching and presentation modes (if the object belongs to its patcher's presentation), leaving its size unchanged.

presentation [int] (default: 0)

Sets whether an object belongs to the patcher's presentation.

presentation_rect [4 floats] (default: 0. 0. 0. 0.)

Sets the x and y position and width and height of the object in the patcher's presentation, leaving its patching position unchanged.

rect [4 floats]

g/s(set)

Sets the x and y position and width and height of the object in both patching and presentation modes (if the object belongs to its patcher's presentation).

size [2 floats]

g/s(set)

Sets the object's width and height in both patching and presentation modes (if the object belongs to its patcher's presentation), leaving its position unchanged.

textcolor [4 floats]

Sets the color for the object's text in RGBA format.

textjustification [int]

Sets the justification for the object's text. Possible values:

0 = 'left'
1 = 'center'
2 = 'right'

varname [symbol]

Sets the patcher's scripting name, which can be used to address the object by name in pattr, scripting messages to thispatcher, and the js object.

Messages

bang

Clears the midiparse object's memory of any partial MIDI message received up to that point.

int

Arguments

byte [int]
Numbers received in the inlet are treated as bytes of a MIDI message (usually from a seq or midiin object). The status byte determines the outlet which will be used to output the data bytes.

float

Arguments

byte [float]
Converted to int.

Output

int

Out 4th outlet: The number is a program change.

Out 5th outlet: The number is an aftertouch (channel pressure) value.

Out 6th outlet: The number is a pitch bend value.

Out 7th outlet: The number is the MIDI channel number.

list

Out leftmost outlet: A note-on message. The first number is a pitch value and the second number is a velocity value.

Out 2nd outlet: A polyphonic key pressure message. The first number is a key (note) number and the second number is an aftertouch (pressure) value.

Out 3rd outlet: A control message. The first number is the controller number and the second number is the controller value.

list

Out rightmost outlet: A formatted midievent message for use with the vst~ object.

See Also

Name Description
MIDI MIDI
borax Report note-on and note-off information
midiin Output raw MIDI data
midiinfo Fill a pop-up menu with MIDI device names
midiparse Interpret raw MIDI data
midiselect Select and interpret raw MIDI data
mpeconfig Configure a MIDI device that supports Multidimensional Polyphonic Expression (MPE) messages
mpeformat Prepare data in the form of a Multidimensional Polyphonic Expression (MPE) MIDI message
mpeparse Interpret raw MPE MIDI data
noteout Transmit MIDI note messages
polymidiin Output Multidimensional Polyphonic Expression (MPE) MIDI data
sxformat Prepare MIDI system exclusive messages
xbendout Format extra precision MIDI pitch bend messages
xnoteout Format MIDI note messages with release velocity
Max MIDI Tutorial 3: MIDI Parsing Max MIDI Tutorial 3: MIDI Parsing