REAPER's multi-channel capabilities were greatly improved a few months ago, and I still hope that someone will
make a nice Youtube video about these colorful features.
Quote:
Originally Posted by zediiiii
Forcing particular instruments or midi objects to particular midi channels for notes AND CC events.
|
In current versions of REAPER, the typical way to force all MIDI playback into a single channel is to either use track routing, or to use a JSFX, such as MIDI Tool II, as a track or take FX. For more complex routings, the
MIDI routing matrix JSFX is particularly handy. (If these tools are used, the MIDI inside the track can freely be assigned to any channel, and channels can be employed as 16 all-purpose groups that can be independently edited, similar to FL Studio's "color groups".)
The JSFX (as a take FX) can be added/opened by a toolbar button in the MIDI editor, so that it looks and feels like a native part of the editor. Simply use the following script (replace "midi_routing_matrix.js" with whatever filename you saved the JSFX as):
Code:
take = reaper.MIDIEditor_GetTake(reaper.MIDIEditor_GetActive())
FXindex = reaper.TakeFX_AddByName(take, "midi_routing_matrix.js", 1)
reaper.TakeFX_Show(take, FXindex, 3)
(Save the standard diagonal routing as default preset for the FX.)
Quote:
Originally Posted by zediiiii
Presently, editing a particular CC midi channel requires using the "filter" button in the bottom right of the midi editor to only display events on that instrument on that channel.
|
It is not actually necessary to filter out and hide other channels. When the channel dropdown is set to a specific channel, most of the mouse modifier editing actions (such as marquee select) will only affect the selected channel, even though the other channels are still visible. For all other cases, use the script
js_Deselect all MIDI except in active channel of active take to quickly limit selection and subsequent editing to only the active channel. (Link the script to a shortcut such as "D".)
Quote:
Originally Posted by zediiiii
A simple "global" midi channel selector that forces all note and CC entry to a certain channel, perhaps in the main ui near the filter settings in the bottom right of the midi editor.
|
This is indeed what the channel dropdown at the bottom right of the MIDI editor does.
Quote:
Originally Posted by zediiiii
Newly entered midi CC events (and notes) usually default to midi channel 1. Though Reaper sometimes tries to intelligently determine which channel surrounding notes are, this doesn't work reliably, especially when multiple channels are being used on the same midi object.
|
There are several other scripts that can make multi-channel editing more powerful, as discussed in:
MIDI editor: Channel dropdown menu, and Option: Selecting note sets new channel [DONE]
Multi-channel CCs disappear and/or display with incorrect channel color (FIXED)
MIDI editor: Option to limit selection/editing to active channel [DONE in script]
Some descriptions from another thread:
Quote:
Originally Posted by juliansader
Inserting new events in the wrong channel in the MIDI editor is an all-too-easy mistake to make, particularly after switching the active track. I have therefore uploaded three new scripts to ReaPack that will hopefully make it easier to set the appropriate MIDI channels for new events (and for track sends):
js_Option - Selecting single note or CC in active take sets channel for new events:
With this new option, the user can switch to the correct channel by simply clicking a note or CC of the new track. It is intended to be similar to the built-in action "Option: Drawing or selecting a note sets the new note length" (but for channel instead of note length).
js_Option - Switching active take sets channel for new events to channel of existing events:
If this option is activated, the default MIDI channel for new events will automatically be set to the channel of existing MIDI events in the newly active track, whenever the active track is switched. (If the existing MIDI events in the track use more than one channel, the default channel will be set one of these channels, usually - but not always - the channel of the very first event in the take.) The first MIDI event written to a track therefore determines the channel of subsequent events. This option emulates having a default channel per track, with the advantage that the user can still override the default channel when necessary.
js_Set MIDI send channel of selected tracks to channel of existing MIDI events in track:
Similar to the older js_Autoincrement MIDI send channels of selected tracks script, the new script is particularly useful when opening large MIDI files, to ensure that each track's MIDI is sent to a single, unique channel.
|
P.S. There is a lingering
bug in the channel indicator, which always shows channel 1 being used.