Logic Pro 9 merge multiple midi channel inputs


My bass to midi interface delivers midi for each string (C-string=channel 1, G-string=channel 2, and so on). When I'm playing a software instrument there's only sound from the c-string (channel 1). How can I merge all channels to channel one in logic or make the software instrument accept multiple midi channels?
You can do this in the Event List amongst other place. I like the Event list because it's visual. Open up your MIDI region in the Event List. Select all. While holding down the Option and Shift keys, click/drag mouse over any note in the Channel column to change value - all other note channel info will go to that value.


Hmmm, re-reading your post this is't what you want. You want this to happen before you record, so you can hear the sound......

Your MIDI interface should have a setting to send out all info on one channel as opposed to a channel per string. Your SI channel strip track parameter has a setting for MIDI channels that says ALL. Make sure it's set for that. Your SI should have settings as well. You can also create an transformer object in the environment to merge channels.
Upvote 0
Easy answer: in your track inspector, where you see your midi object (the sound you are playing) set the channel to whatever midi channel you want you multichannel data stream to go to.

It is normally set to "All".
Upvote 0
Ah, just checked: the Software Instrument MIDI settings are set to "all" but the instrument plugins like Trilian or Kontakt have no setting to merge all channels, they receive the channels seperately sending it to up to 16 instruments, so I have to merge the channels before they go out to an AU instrument.

I will try the Transformer obect "trick", though I'm not sure how to do it exactly, but I will try...
Upvote 0
Uh, what exactly are you trying to do again?

Trillian can receive on whatever channels you want, go into Multi mode and set whatever midi receive channels you want.

Since you can see the midi channels select is set to "all", set it to "1" like I suggested, and all you midi data will be sent to track 1 only... that is unless you really want to do things the hard way by going and working with transformer objects, etc..
Upvote 0
Yes, each player (or string) should be sending in its own midi channel, and yes (in your case) the track/channel should be set to "All" (otherwise Logic re-channelizes the incoming note events) so that all your strings get recorded into a single track. BUT -- There's one important step not mentioned here: You have to tell Logic to operate in "Multi-player" midi recording mode, not in "layer" recording mode (see p. 460 in the Logic 9 pdf manual).:

to quote:

Recording Multiple MIDI Tracks Simultaneously
You may occasionally want to record multiple MIDI tracks at the same time. Often this will be data recorded from an external sequencer, or played from a keyboard that is split across multiple MIDI channels.
You can also simply play the same MIDI channel information from your keyboard, but record it to multiple tracks. One reason you would do this is to create layered instrument parts.

There are two operating modes available for simultaneous recording of multiple MIDI tracks: layer recording and multiplayer recording.
• When layer recording: Incoming MIDI events are sent to all record-enabled MIDI tracks. You can listen to all selected instruments before, and during, recording.
• A MIDI region is created on the selected track after recording.
• Aliases of the MIDI region on the selected track are recorded on the other tracks.
The advantage of this approach is that any subsequent edits to the "parent" MIDI region will affect all aliases, ensuring that all layered tracks remain identical.
• When multiplayer recording: Incoming MIDI events are distributed to the various record-enabled tracks, in accordance with transmitted MIDI channel numbers.
• The channel of the incoming event must correspond to the channel of a record-enabled track for this functionality to work.
• If no track with a corresponding channel number is found, the event will be routed, and recorded, onto the selected track.
You should ensure that each of your MIDI controllers transmit on different channels. If this is not possible, simply use different inputs on your MIDI interface and change the MIDI channel of each input, using a transformer object between the Physical Input and Sequencer Input (see "Physical Input Objects" and "Sequencer Input Objects").
To switch from the Layer recording mode (default) to the Multiplayer recording mode
Choose File > Project Settings > Recording, and select the "Auto demix by channel if multitrack recording" option.
Upvote 0
Actually, George's suggestion of setting the channel strip instrument parameter to the receive channel of your software instrument is the fastest - if you want to just hear the a software instrument play back MIDI in and recorded information from all strings. It will record all the strings AND maintain their unique MIDI channel assignments.

My MIDI guitar test on one instance of Trillain with the default receive channel of 1 proved this. I set the SI parameter to MIDI 1. All worked well.
Upvote 0