midiselect
Select and interpret raw MIDI data
Description
midiselect receives raw MIDI bytes and separates the input stream. MIDI data to be selected for output is set using object attributes. There is a separate data outlet associated with each MIDI data selection attribute. Any input data which is unselected will be sent out the object's eighth outlet.
Discussion
Note: Due to the nature of the MIDI coding, use of the
attribute is cumulative: at least one channel needs to be specified; otherwise, all raw MIDI data will be sent out the 8th outlet.Arguments
None.
Attributes
bend[int]: 0
When then
attribute is set to 1, information is sent out the 6th outlet, otherwise the is sent out the 8th outlet as .
ch[16 atoms]
The midiselect object the the argument , you can also select specific channels (e.g., the argument will only select MIDI information on the first, third and fifth channels).
attribute allows you to specify which MIDI input will be selected. While you can choose input from all channels by instantiating the
ctl[128 atoms]
The
attribute allows you to specify which MIDI messages will be selected. By default, no are selected. You can select specific controlers to be filtered (e.g., the argument will select the controler 7 (Volume), 9 (Pan), 64 (Sustain Pedal)). To select all controllers, use the argument . To select no controllers (the default), use .
hires[int]: 0
8.1.6
An integer in the range 0 - 2 sets the range used for pitch bend messages by the midiparse 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
)
note[128 atoms]
The
attribute allows you to specify which MIDI messages will be selected. By default, no are selected. You can select specific notes to be filtered (e.g., will select the C4, E4, G4 notes). To select all notes, use the argument . To select no notes (the default), use .
pgm[int]: 0
When then
attribute is set to 1, information is sent out the 4th outlet. Otherwise, the is sent out the 8th outlet as .
poly[128 atoms]
The poly attribute allows you to specify which MIDI will be selected. By default, no is selected. You can select specific notes to be filtered (e.g., will select the C4, E4, G4 notes). To select all the notes, use the argument . To select no notes (the default) use .
touch[int]: 0
When then
attribute is set to 1, data is sent out the 5th outlet. Otherwise, the is sent out the 8th outlet as .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]: 0
Adds or removes the object from the patcher's background layer.
adds the object to the background layer, 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'
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]: 0
Toggles whether an object ignores mouse clicks in a locked patcher.
jspainterfile[symbol]
JS Painter File
patching_rect[4 floats]: 0. 0. 100. 0.
Sets the position and size of the object in the patcher window.
position[2 floats]
write-only
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]: 0
Sets whether an object belongs to the patcher's presentation.
presentation_rect[4 floats]: 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]
write-only
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]
write-only
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 midiselect object's memory of any partial MIDI messages received up to that point.
int
float
Floating-point numbers received in the inlet are converted to integer values and treated as bytes of a MIDI message. The status byte and the filtering attributes determine the outlet which will be used to output the data bytes.
- byte
[float]
Output
int
Out 4th outlet: The number is the program change.
Out 5th outlet: The number is the aftertouch (channel pressure) value.
Out 6th outlet: The number is the 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 the velocity value.
Out 2nd outlet: A polyphonic key pressure message. The first number is an aftertouch (pressure) value and the second number is the pitch value (key number).
Out 3rd outlet: A control message. The first number is a control value and the second number is the controller number.
See Also
Name | Description |
---|---|
midiparse | Interpret raw MIDI data |
borax | Report note-on and note-off information |
midiformat | Prepare data in the form of a MIDI message |
midiin | Output raw MIDI data |
midiinfo | Fill a pop-up menu with MIDI device names |