If the stuff you want to separate out uses different voices, or MIDI channels, then I think the tool you are looking for Is called “Dissolve”.
You should find it under the MIDI menu at the top of your main project window.
First you’ll select all the parts you want to dissolve. I.E. Hold ctrl as you click all the parts on a track that should be dissolved. If you know you want everything on the track to be dissolved, then just select the track you want to dissolve, then right click some area around the track controls that’s not a clickable hot-spot/icon, and choose, “Select all events”.
Once you’ve all the parts selected…go to the MIDI Menu and choose “Dissolve”.
You’ll get a pop up dialogue with some options along the lines of, “Dissolve to new tracks, use lanes, etc.” There may be some other options as well.
Dissolve works based on MIDI channel numbers. I.E. Separate a MIDI type 0 track (with many channels on the same track) into Type I (where each channel gets its own track).
If you’re wanting to pull out various notes with specific attributes, such as voices in a chord, a specific note, a particular rhythmic arrangement, etc…then you could use the MIDI Logic Editor to build some logic and ‘extract’ the desired data to a new track. There are some example presets already in the Logic Editors for doing some of these things, and you can always build your own if you need something special.
I.E. With the Logic Editor…let’s imagine you have a high hat part that’s all on the F#2 MIDI note, and you want to pull that into a track of its own.
First you need to select all the events on the track (or you can build into the script things like all events between locators, etc.) For me it’s easy to just do as I described above…right click a track and choose 'Select all Events".
You could also use CTRL-A to select everything in part(s) activated in one of the Editors (Key Editor, Diamond Drum Map, etc.)
You next would open the Logic Editor (MIDI/Logic Editor), and in the top half set booleen values like so.
if event = note and value 1 = F#2
Here I’m telling Logic Editor that I want to do something to any selected MIDI event that is type NOTE, and F#2.
You can get way more specific if you like…simply click the various fields in the Logic Editor to become familiar with the many event types and parameters it can use in your booleen logic. I.E. I could make it only extract F#2 events within 100 milliseconds of beats 2 and 4, and so on.
In the bottom half…in this case you would not need any fancy script, but you’d set the action tab to ‘extract’.
Logic editor would then extract all F#2 events and put them on a new track for you.
In short…that Logic Editor is your best friend when it comes to automating repetitive MIDI edits. Read up on it, study the example presets, and practice making your own.
When I get a chance, I’ll track down some threads I’ve done in the past (with screen shots) showing some examples of things one can do with the Logic Editor and come back and post the links here.
Hope this is helpful…