I was hoping someone smart knows a good solution here. (perhaps I have missed a command?) I have been meddling with macros and the Logical editor but haven’t come up with anything yet.
So, I want to be able to extract parts to different tracks from just one original track. For example a string ensemble patch playing four parts. I am not using any chord track, and this is important, just midi data in the ensemble patch (I know people have figured this out in other DAWs)
So this command/macro will extract the four parts in the ensemble patch, create four new midi channels, and copy each part of the chord in the ensemble patch so that the new tracks just have one part each.
This way I can go from sketching in an ensemble patch to individual written parts much faster.
This is something I’ve been wanting to do for a long time. There are several YT videos that walk you through the variables if your event is actually a “Chord”, but none if it is not. I started to play around with the Logical Editor and tweaked one of the solutions used for “exploding” a chord.
In the Logical Editor the “Type is Equal to a note and” Filter Target is “Context Variable”, the Condition is “Equal” to a “Highest Pitch”. At the bottom “All Events matching the Filter…” should be changed to “Extract to Track”. If you click Apply 4 times it will create a new track for each note of a 4 note chord. I have not played with creating a Macro that would run this 4 times but I’m sure this will give you a good start (hopefully)
No, unfortunately this is not the solution. Dissolve parts is really only handy for drum tracks. I don’t want a track for just one note (pitch), I want a track for the voice. If I have an arrangement with 4 voices, I just want 4 tracks with a “melody” on each track, the totality of the tracks forming the chord.
Dissolve parts creates a whole new track for each new note, and I don’t get to choose what kind of track it creates either.
I have some ideas I am playing around with. I’ll get back if I come up with something.
Oh my god, you are right.
I could swear that this used to work.
The function does not make any sense the way it is working now. So either we do something wrong or there is a serious bug!
I seem to remember that with the logical editor one could select the notes in a four voice chord by position. If this works one could then set the midi chanel of the selected notes and as a last step separate by channel instead of by pitch.
See this: Greg Ondo creates a logical editor preset to select the lowest note of all the chords. one could also change the midi channel and then separate the track by channel!
Great, thats it
Just a hint for the original poster: Please note the action “Extract to Track” - this is what will happen to the notes.
And: Be aware that whenever you have a voice missing (i.e. 3 instead of four notes) you might want to do some “cleanup” in order to make the function perform what you really intend. Also two identical notes in two separate voices will not produce the intended result, or will they?
Thank you! I am aware of this command. What I don’t like about it, is that cubase puts the track where it wants, and not where I want. For example it just adds the tracks at the end of my template and not after the track I am working with. Also, it defaults to copy the exact same instrument I am working with. Which in most cases I don’t want, and if I work with a heavy string library it takes a while and is quite taxing if it loads the same instrument 5 more times.
So, I am currently experimenting with a method that uses the above command but it doesn’t use extract nor copy, as that is the same result I mentioned above, but rather just selects the parts so I can copy it in my own manner to a midi channel with no instrument on, OR specific instrument channel. I haven’t really figured that out yet, but I have a few ideas.
One problem is that it is hard to create macros and/or actions that involve commands both in and out of the key editor.
Select a MIDI track before use. This function duplicates the selected track and places it in a folder (placement in a folder results in any newly created tracks being placed in the folder in order to avoid new tracks placed at the foot of the template). It then transforms the output for the track and extracts 4 notes from the part onto separate tracks with outputs assigned to, in this case, Halion Sonic (may of course be changed to any VST instrument).
It’s not strictly necessary to duplicate the track but might be best if you want to retain the original track untouched.
This looks great, thanks! I will experiment with it. I guess it is possible to have no action target value? (I have Halion Sonic off by default)
I have actually come up with a solution where I get the result I wanted, BUT, it is not elegant and involves a pretty large macro with quite a few editors thrown in. It basically copies all the data to 4 midi channels, then wipes the data but not the events and then copies each part to the correct midi channel. The only downside that it needs to be a specific instruments where it copies from (which in most cases is fine). I like this, but I will definitely experiment with what you have provided. It looks much smarter than mine
Yes, there’s a naming anomaly with that! You can find the function with a search using the text ‘move selected tracks’. The function is listed as ‘Move Selected Tracks to New Folder’.
Tanks a bunch! I think this is best solution so far. I really appreciate it! I will continue to experiment to see if I can have the data show up on specific channels.
Glad it helps! It was intended as a skeleton and of course you may wish to add to it, use it as part of a macro and so on to get closer to exactly what you need.
By the way, you will have noticed that to extract the notes I just entered the ‘Extract lowest note in chord to new track’ preset 4 times in the Post-Process commands. This is a somewhat lazy approach. If you wanted to free up more room for other post process functions you could nest those functions into a single macro and insert that instead, for example.
The Project Logical editor is your friend when attempting sophisticated automatic logical processes.
Take care with using the LE Presets to determine a Note’s position in a chord. It works great if all the Notes in the Chord Start at the same position for each Voice. But if they don’t it can misidentify the position. So for example if your Alto voice comes in a Quarter-Note after the other 3 Voices then your Soprano Note will get identified as being the 3rd and not the 4th lowest Note in the Chord. Similar problems also happen if Chord 1 and Chord 2 have a common Note that is sustained between them. There isn’t really anyway to automatically get around this using the LE. I always just hand edit to correct these when they occur.
Which leads to the second point. In the LE posted above there is nothing in the Transform Window and you extract the Notes to a New Track. Rather than doing that I have the Transform change the Note’s MIDI Channel - 1 for Bass, 2 for Tenor, etc. Then I Duplicate the Track so there are 4 Tracks. Then I have a set of LE Presets which Delete anything not on Channel 1, or 2, etc. The reason to add this extra step is because it makes it easy to verify that the Notes’ Voices were properly identified before you split them off onto separate Tracks. This is because you can set the Key Editor to Color the Notes based on Channel - so it’s visually obvious which Voice each Note belongs to.
I use the Channel Number for this since that played nice with the old Score Editor. But there is also a Voice parameter for each Note which can give each Note an SABT name & color it based on the Voice Name. This could also be used just like the Channel number.
The attached shows (no harmonic theory was used in this example, so no judgment please) 3 different places where the wrong Voice got assigned, and also how it is visually obvious that a mistake happened.
Yes, when I sketch in this way, I do make clear (I also have a command to help with this if necessary) block chords, as I am aware of the problem you showed. The way I work this is not a problem though as I work in the following order:
Melody (most often)
Harmony (simple block chords 1-5 voices)
Voicing, where I voice the chords appropriately, including inversions and proper orchestration.
Move to parts. (here I use the command discussed in this topic)
Then I work more deeply with the voices so that they have movement/embellishments and/or “guide tones”
I have also created a macro where I copy the original ensemble patch to an midi track where the chords get “cleaned up” so that there won’t be any confusion. Then it gets processed to the various parts, also including all CC data. AND slightly overlapping the notes ensuring proper legato.
It’s quite a macro but a serious time savior indeed.