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

midiformat

Prepare data in the form of a MIDI message

Description

Numbers received in the inlets are used as data for MIDI messages. The data is formatted into a complete MIDI message (with the status byte determined by the inlet) and sent out the outlet as individual bytes.

Examples

Numbers are formatted into MIDI messages and sent out as individual bytes

Arguments

initial-MIDI-channel-number [int]

Optional

Sets an initial value for the channel number of the MIDI messages. Numbers greater than 16 are wrapped around to stay between 1 and 16. If there is no argument, the channel number is initially set to 1.

initial-MIDI-channel-number [float]

Optional

Converted to int.

Attributes

hires [int] (default: 0)7.2.0

An integer in the range 0 - 2 sets the range used for pitch bend messages by the midiformat object.

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.

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 [float]

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

textjustification [int]

Text Justification

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

int

Arguments

ARG_NAME_0 [int]
TEXT_HERE

  (inlet1)

Arguments

pitch-value and velocity [list]
In leftmost inlet: The first number is a pitch value and the second number is a velocity value, to be formatted into a note-on message.

  (inlet2)

Arguments

aftertouch and pitch-value [list]
In 2nd inlet: The first number is an aftertouch (pressure) value and the second number is a pitch value (key number), to be formatted into a polyphonic key pressure message.

  (inlet3)

Arguments

control-value and controller-number [list]
In 3rd inlet: The first number is a control value and the second number is a controller number, to be formatted into a control message.

  (inlet4)

Arguments

program-change-value [int]
In 4th inlet: The value is formatted into a program change message.

  (inlet5)

Arguments

aftertouch [int]
In 5th inlet: The value is formatted into an aftertouch (channel pressure) message.

  (inlet7)

Arguments

MIDI-channel-number [int]
In rightmost inlet: The number is stored as the channel number of the MIDI messages. The actual value of the status byte is dependent on the channel. Numbers greater than 16 are wrapped around to stay between 1 and 16.

float

Arguments

ARG_NAME_0 [float]
TEXT_HERE

Output

int

Out left outlet: MIDI messages are sent out as individual bytes, for recording by the seq object or for transmission by the midiout object.

list

Out right 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