Before any MIDI events received at your computer’s MIDI inputs can be recorded by Logic Pro, there must be a connection between two Environment objects:
In Logic Pro, incoming MIDI events (which arrive at the Sequencer Input object) are always directed to the selected track in the Arrange area’s track list, where they can be recorded in MIDI regions.
The events played by the track region are mixed with incoming events (if any), and sent to the Environment object that the track is routed to.
From here (the multi-instrument object), the events are directed to a MIDI output (see Creating Direct Output Assignments).
You can insert objects into the signal path between the Physical Input object and the Sequencer Input object if you wish (a MIDI monitor object, for example, which allows you to see incoming MIDI events).
You can also insert objects between the arrange track and its destination object, enabling other Environment processing. The arrange track itself is not represented by an Environment object, but you can use the Track Assignment menu to route the track’s output to an Environment object.
For example, the output of an arrange track (the note events in a MIDI region) routed to (software) instrument channel 1 can be arpeggiated. To do this, you would create an arpeggiator object (this will be easiest on the Mixer layer of the Environment), assign the arpeggiator to the arrange track (Control-click the track header to access the Track Assignment menu, and browse to the arpeggiator object), then cable the arpeggiator out to instrument channel 1.
On playback, the note events in the region will be processed by the arpeggiator object, and routed (via the cable) into the instrument channel, which plays back the processed (arpeggiated) MIDI note data.
You can create a direct output connection to a physical MIDI output from any of the following object types:
Instrument
Multi-Instrument
Mapped Instrument
Touch Tracks
GM Mixer
MIDI Metronome Click
Click the Port menu in the object’s Parameter box, and choose a MIDI output.
The Port menu lists all MIDI Outputs, plus the following options:
The Off setting completely disables the connection to the MIDI interface port.
The All option routes the object’s output to all available MIDI ports. This may be useful if the device is sending a pulse, for example.
Note: If you have a MIDI interface with more than one output port (or even several interfaces that can be stacked), you can set up a direct connection to one of the individual ports (1 to 63) of that (or those) interfaces.
Any object with a directly assigned output is indicated by a white triangle on its right side. The triangle is hollow when there is no direct assignment.
The cabling between Environment objects provides control over the entire MIDI signal path. A cable is normally shown as a gray or colored line between a source and destination object.
Cables are assigned the same color as the source object, which makes following the signal path much easier. You can, however, turn off cable coloring, and render them in gray with the View > Colored Cables function.
Objects always have an (invisible) input on the left, and an output on the right side. The output of an object is shown as a small triangle, pointing to the right.
Click-hold the triangle of the source object.
The mouse pointer turns into a plug (patch cord) that represents a cable connection coming from the object’s output.
Move the cable plug over the destination object, and release the mouse button when the object is highlighted (this happens automatically when you touch it).
A cable connection is created between the two objects.
If the source object has already been directly assigned to a MIDI output port, a dialog asks if you want to replace the direct assignment. You have three options:
Option-click the triangle, which opens a hierarchical menu.
Browse to the layer that the destination object is on, and choose the object name.
A cable connection is created between the two objects.
This method is ideal for creating connections between layers, but can also be useful when a large number of closely spaced objects exists on a single layer.
You can also open a second Environment window (showing the destination layer), and connect the objects graphically between the windows.
A cable connection to another layer looks like this:
Click the cable with the Eraser tool.
Select the cable and press Delete.
Grab the cable, and plug it back into (drag it over) the triangle of the source object.
Use Edit > Clear Cables Only to remove all selected cables, without also clearing any objects that happen to be selected.
This is handy when you want to clear all cables leading to (or from) one or more objects, given that selecting objects also selects all associated cable connections.
There is no limit to the number of cables that you can plug in to a destination object. All MIDI signals are mixed at the object’s input.
Connect the object to a destination object.
Once an output from an object is used (cabled to another object), another output triangle automatically appears.
Use the second output triangle to create a second cable connection to a further destination object.
Once this is done, a third output triangle appears, and so on.
Some objects have special outputs, and are exceptions to the previous task. One example is channel splitter objects (see Channel Splitter Objects), which feature several (functionally different) outputs. Other special objects include cable switchers (see Cable Switchers) and the Physical Input object (see Physical Input Objects). In these objects, each output can only be used once.
Create a monitor object (see Monitor Objects) by choosing New > Monitor.
Plug the cable from the desired object output into the monitor object.
Cable from the monitor object to as many other destinations as you’d like.
The monitor object allows you to view the MIDI events flowing through it.
Select the cables.
Tip: If the cables are already connected to a common destination, the simplest way of doing this is to select the destination object.
Grab one of the cables, and plug it into the new destination object.
You are asked if you want to connect all selected cables with the new destination.
Click Connect, or press Return.
You can cable objects in series or in parallel. Cabling objects in series is handy for quickly connecting groups of faders used to control a MIDI mixing console, for example.
Select all objects you want to cable, then choose Options > Cable serially.
The objects are cabled in series, starting with the top-left object.
Cable one of the source objects to the destination.
Select the destination object and choose Edit > Copy.
Select the other objects that you want to connect to the same destination, and choose Options > Apply Buffer Template to > Cable(s).
You can copy more complex cabling configurations this way, too. Just ensure that the type(s) of objects in the group that you want to copy matches the type(s) of objects in the group that you apply the buffer template to.