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

ctlout

Transmit MIDI controller messages

Description

Transmits MIDI continuous controller values to a MIDI device.

Examples

Letter argument transmits to only one port......... Otherwise, number specifies both port and channel

Arguments

port [symbol]

Optional

Specifies the port (a-z) for transmitting MIDI control messages. If there is no argument, ctlout initially transmits out port a, on channel 1. When a port is specified by a letter argument, channel numbers greater than 16 received in the right inlet will be wrapped around to stay within the 1-16 range.

device [symbol]

Optional

The name of a MIDI output device may be used as the first argument to specify the port.

ctrllr-channel [list]

Optional

Following the (optional) port argument, the next argument is an initial value for the controller number to be used in control messages transmitted by ctlout. Controller numbers are automatically limited between 0 and 127. If there is no controller number specified, the initial controller number is 1.

Following the controller number argument is an initial value for the channel number on which to transmit control messages. If the channel argument is not present, ctlout initially transmits control messages on channel 1. In order for this argument to be used, a controller number argument must precede it.

If a port has been specified with a letter argument, channel numbers greater than 16 will be wrapped around to stay within the 1-16 range. If no port argument is present, the channel number specifies both the port and the channel. The exact meaning of the channel number argument depends on the channel offset specified for each port in the MIDI Setup dialog.

Attributes

name [symbol]

Set the object's midi port based on a device name. The attribute will attempt to do a case-sensitive partial string match based on the attribute's value.

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

input [int]
In left inlet: The number is used as the control value, and ctlout transmits a MIDI control change message. Numbers are limited between 0 and 127.

  (inlet1)

Arguments

controller [int]
In middle inlet: The number is stored as the controller number of the control change messages transmitted by ctlout. Numbers are limited between 0 and 127.

  (inlet2)

Arguments

channel [int]
In right inlet: The number is stored as the channel number on which to transmit the control messages.

float

Arguments

input [float]
Converted to int.

anything

Arguments

port [list]
Performs the same function as port.

(mouse)

Double-clicking on a ctlout object shows a pop-up menu for choosing a MIDI port or device.

port

Arguments

port [symbol]
In left inlet: The word port, followed by a letter a-z or the name of a MIDI output port or device, specifies the port used to transmit MIDI control messages. The word port is optional and can be omitted.

Output

(MIDI)

There are no outlets. The output is a MIDI control message transmitted directly to the object's MIDI output port.

See Also

Name Description
MIDI MIDI
bendout Send MIDI pitch bend messages
ctlin Output received MIDI control values
midiout Transmit raw MIDI data
noteout Transmit MIDI note messages
xbendout Format extra precision MIDI pitch bend messages
Max MIDI Tutorial 1: Basic MIDI Max MIDI Tutorial 1: Basic MIDI