matrix Reference

Event routing matrix

matrix

Description

The matrix object controls the connections between inlets and outlets. You can route any inlet to any combination of outlets. Each connection has an associated gain factor and all values travelling through matrix can be scaled. It shares the same control protocol with the signal matrix~ object, but unlike matrix~, the outlets of the matrix object do not add the values of multiple inputs. matrix is best understood as a combination of gate and switch with many more features.

Arguments

number-of-inputs [int]

Optional

Sets the number of inputs; if not present the default is 2.

number-of-outputs [int]

Optional

Sets the number of outputs; if not present the default is 2.

default-connect-gain [float]

Optional

If a float value is provided as a third argument, it sets a default gain to be used for the connect message when a gain argument to connect is not supplied.

Attributes

defaultgain [float]

Default Gain

inhibit [int]

When inhibit is enabled, messages such as bang or clear are not passed through the matrix.

inrange [float]

Sets an input range for constaining incoming values and/or scaling. When an input range is set, incoming numbers and lists are constained so they are within the range. If the outscale attribute is also set, the incoming values are also scaled so they map from the input range to the output scaling.

outscale [float]

Sets an output range for constaining output values and/or scaling. When an output scaling is set, values are constained so they are within the range before being sent out the object's outlets. If the inrange attribute is also set, the incoming values are also scaled so they map from the input range to the output scaling.

scalemode [int]

When the scalemode attribute is enabled, input, gain, and output scaling will be applied to numeric arguments to messages that do not start with a number. For example, if scalemode is enabled, the message set 74 will scale the 74.

Common Box Attributes

Messages

list

In left inlet: A list either adds or removes a connection between an inlet and outlet. The format of the message is input index (starting at 0 for the object's secont inlet from left), output index (starting at 0), gain. A non-zero gain adds a connection with the designated gain; a gain of 0 deletes the connection if it exists.
A list received in any other inlet is routed to any connected outlets.

clear

In left inlet: The clear message removes all inlet - outlet connections.

connect

In left inlet: The word connect followed by an inlet index, outlet index, and optional gain, adds a connection between the inlet and outlet. If the gain value is not present, the default gain (set either via typed-in argument or the defaultgain attribute) will be used for the connection.

dictionary

The word dictionary followed a symbol naming a Max dictionary object, replaces all connections with the ones in the dictionary. If the dictionary has no connections, the existing connections are cleared. To see the format of the dictionary, send the dumpdictionary message and print or otherwise capture the resulting dictionary that is sent out the object's left outlet.

disconnect

In left inlet: The word disconnect followed by an inlet index and outlet index deletes a connection between the inlet and outlet if it exists.

dumpconnections

The dumpdictionary message outputs a Max dictionary message listing all current connections of the matrix object.

See Also

Name Description
Working with Video in Jitter Working with Video in Jitter
crosspatch
gate
matrix~
matrixctrl
receive
router
switch
send
switch