The Challenge:
In my final semester of grad school, our Scoring class re-scored a feature-length film that our instructor had been the original composer for. Me being me, a man who loves Dorico and hates piano rolls, I decided to battle-test Dorico to meet the following demands:
- ~4-6 minutes of composed and fully mocked-up lightly hybrid orchestral music delivered weekly before midnight
- Delivery involved 14 BWF Stems (i.e. High Winds, Low Winds, Perc, Synths) all with the correct timecode embedded and named according to specific filename guidelines
- Among the stems must be a printed click track that follows the tempo map
The Problem:
While Dorico can export individual instruments, it does so in serial (i.e. flute 1 beginning to end, then flute 2 beginning to end etc.) This becomes a problem when, like me, youâre using a VEPro server on another machine it has to do so in real-time. A three-minute cue with 60 individual instruments/sections would take 3 hours to bounce and then would still have to be combined into stems in Pro Tools. With multiple classes during the week, all with their own writing assignments, this was time I did not have especially with a midnight delivery deadline.
Options I considered were:
- Soloing and bouncing returns from VEPro that had been organized to follow my stemming scheme and then renaming after every bounce (too time-consuming, a lot of margin for error in losing track of which stem was which)
- Creating custom layouts in Dorico corresponding to stems and exporting (still too time-consuming, custom layouts could not be selected from audio export menu and would still require bouncing and renaming)
Ultimately, what I really needed was to find a way to print audio directly from Dorico into a DAW (in this case Pro Tools). More on that later.
Existing Setup:
By this point, I had a pretty solid Dorico and VEPro setup going using CSSeries as my core orchestral library with expression maps I had made and refined over time to best suit my needs with per articulation delays and everything. My VEPro template did all the heavy lifting of processing, routing reverb, doing buss effects etc and my returns in Dorico were just my standard stems. I use a Wacom graphic design tablet for drawing in my CC information and make full use of a lot of Doricoâs awesome tools for batch inputting CC values for multiple instruments and nudging things around. My classmates were frequently impressed with my mock-ups especially considering they were done in a notation program and I tend to write in a way that strains what samples can convincingly pull off.
By futzing with the ânumber of audio outputs in the mixerâ function in the endpoint setup in Dorico my returns in the mixer menu look like this:
This is what my destination Pro Tools session looked like:
Extra Tools:
In order to accomplish my goal of printing directly to Pro Tools I needed a few extra tools. First, I needed Dorico to generate SMPTE that Pro Tools could follow using MTC. I used a tool thatâs been brought up in this forum quite often which is TXL Timecode.
Next, I needed something that could pull audio from each return in Dorico and send it to a corresponding track in Pro Tools. Since Dorico does not have multi-out capabilities as of time of writing, I needed to route at the insert level. Unfortunately, at the time at least, I could not find any free software that could do what I needed it to do so I used the following tools from Audiomovers.
Inject $50 USD- A plugin insert that allows you to route to i/o in a variety of different playback engines
Omnibus $200 USD- I probably couldâve gotten away with just using Pro Tools Audio Bridge, but I wanted to use this for other stuff as well. Basically this allows you a lot of flexibility in how signals are routed from various playback engines.
How did it go?
Iâm not going to get into detail about the nitty-gritty of all the trial and error to get this to do basically what I wanted it to except to shout out Serge at Audiomovers. I had an inital issue that Inject was not remembering the output assignments when I would close and re-open Dorico. Serge got back to me really quickly with a previous version of Inject that did remember the output assignments and basically saved this whole thing.
The results were mixed but ultimately saved me A LOT of time and got me through the project.
One of the things that ended up being a âtime suckâ was that the inject plugin basically needs to be âwoken upâ by having audio pass through it while the plugin window is open. Before I printed I had to open each plugin and play some audio otherwise nothing would end up in Pro Tools. Something that made this harder is the fact that Dorico does not augment the plugin header name based on track name:
Another problem is that very quickly, the sync between Dorico, TXL and Pro Tools became unusable. I had structured all of my Dorico and Pro Tools sessions to correspond to each reel of the film, using Flows to be each cue in the reel. Things started to get wonky with multiple flows at different timecode offsets, TXL would no longer match the timecode that was synced between Dorico and the embedded timecode of the video file. In addition, aligning the tempo track MIDI export that was imported into Pro Tools became dicey because the lag time between when I would start playback in Dorico and Pro Tools would âcatch onâ to start recording meant that it was hart to align the tempo track which always contained a 2 empty measures. Ultimately, I ended up having to abandon printing and syncing at the same time. I placed a transient snare in beat 1 of measure 1, gave Pro Tools a running start and hit play on Dorico. I could go back to Pro Tools, tab to transient, splice, and then using Spot move the transient to the exact timecode position, delete it, and then reconsolidate the clip region. Ultimately, that process didnât take that much time but it wouldâve been nice to have it just print in place and not have to worry about it.
What could have helped? (the low-hanging fruit)
CAVEAT I say low-hanging fruit from my perspective as a user and not a developer of this software. Ultimately, I donât really know how relatively easy or hard these things are to implement but this is just from my best educated guess as a user with some tech savvy.
- Native MTC i/o support: I feel like Dorico should DEFINITELY have a way to send and receive MTC directly tied to its own clock not relying on any 3rd party software, I think this would open a lot of doors for DAW integration, especially when working with recorded audio, sound design, phrase libraries etc in the DAW (things that donât make sense to notate). Iâm currently working on a project right now where Iâm only using Dorico to work out horn section parts and the rest is just guitar, bass, drums etc. that Iâm recording into Pro Tools and this is hard to deal with using buffer sizes and whatnot and the stop/start of the play-head tends to be very frustrating to deal with
- More Bouncing Options: It would definitely go a long way to be able to create custom bounce groups that could correspond to your stems. Even just allowing custom score layouts to be selected in the audio export window that could be uniquely named and exported all at once. A three-minute cue exporting real-time 14 stems would take 40 min as opposed to 3 hours.
- Multi-Out: This would be the holy grail and would cut down on stacking buffer sizes. If the user could just output their returns directly into a DAW this would open up a lot of doors for use of Dorico in the film music world. In addition, more routing options in the mixer would be incredibly beneficial
What could have helped? (Pie in the sky)
- Articulation Override: In the Key-Editor, it would be really helpful to be able to override the playing technique/articulation triggered without affecting the score. Often I am using a different articulation in my samples than I would write on the score for a player, for example, if the fast legato isnât cutting it, I may use the Marcato patch. This would save a lot of time when working on a project that needs to be fully mocked up for client approval and will eventually be engraved for a recording session.
- MIDI âclonesâ: This is two-fold
- An aX system similar to NPPE whereby the if/then statement is something like âif 4 French Horns are playing a unison line this will route to the a4 patch of your sample libraryâ
- Something that allows you to blend in different libraries for the same instrument without cluttering up the score. Basically using a master MIDI reference that will output the same notes and maybe CC information using independent routing and exp maps. In my mind it looks something like this, but perhaps this could be best offloaded to Cubase with some sort of synchronization or âMIDI streamâ:
I understand this may create some tension between the people who want more playback features and the purely engraver crowd who are frustrated with what they perceive as software bloat. But perhaps having two modes, sort of like how Logic Pro X had a kind of âGarage Band Modeâ with simplified vs. complex play sections could be a solution?
I look forward to hearing everyoneâs thoughts and if anyone thought there might have been a better way to do this for future projects! I really believe Dorico can be a fully capable notation and mock-up software that can meet the high demands of the media music world!