Dorico and Cubase Syncronisation

I realise this has been covered a little before but i would like put my 2 cents in regarding Dorico/Cubase sync.

I generally prefer putting ideas together in Cubase because of numerous reasons, the most obvious being the ease of recording, comprehensive transport controls, markers and just general flow. I will often have Cubase and Dorico open at the same time though, Dorico muted, but sketching more complex ideas (eg harmony/lines across numerous instruments) that are better worked through with notation, then physically play that back into Cubase. In this way I build up the notation and DAW arrangement together, which saves time in the end when i have to hand the notated parts out + have a reasonable representation of all the parts sound etc.
Lately Iā€™ve been looking at syncing Dorico and Cubase so they play at the same time, that way i could divide up what I prefer to do in each program, press play and both programs start. I use Windows and have been experimenting with a program called TXL Timecode program and a midi Loopback program to facilitate this.
So far I sorta have it working in one direction, with Cubase as slave- but at this point, as far as i know, there is no way for Dorico (5) to receive Midi Time Code? Right?

I would far prefer to be using Cubase as the MTC master, controlling Dorico start/stop, bar number etc - I was wondering how many out there who use Cubase and Dorico together would be interested in utilising that workflow?

Or maybe there are some other workarounds to acheive this, I havenā€™t heard about?

Thereā€™s a video by Music Chef showing his use of TXL to sync the two, but i havenā€™t found too much else out there.

cheers.

3 Likes

Yup. Been asking for this for a while now. Iā€™m hoping the delay is due to Steinberg working on a deeper level of integration between the two platforms such as real-time synchronization of MIDI events between the two apps for a given instrument (track) and not just playback sync. TBH, Iā€™d be happy with simple sync like what you described butā€¦

We shall see.

3 Likes

Bumping this topic to keep it on the radar. Iā€™m in the middle of a hybrid project (full orch plus synth/modular) and this would be REALLY useful about now. Hoping we can get in D6! :slight_smile: :grinning:

Bumping a topic on the forum doesnā€™t do anything to change its priority in our development plans. We know many users are looking for features like this.

Building synchronization features between Dorico and Cubase is complicated because it requires changes not only to Dorico but also to the shared audio engine (which requires us to compete for the limited development time of some of the senior developers who are working on many other projects within Steinberg), and if we want to go further than MTC, which we may well in future, it would also require deeper changes within Cubase itself. So it is a complex area of development and requires us to align our product and development plans carefully.

6 Likes

Appreciate the quick response, Daniel! I get it. Itā€™s complicated with a lot of people on both sides involved and needs to be done with care and all of that takes time. That absolutely makes sense. Itā€™s just (for me) the one thing about Dorico that can sometimes keep me up at night wondering what the best workflow to be in these kinds of situations.

That being said, MTC is a GREAT starting point and would be immediately useful! I definitely appreciate the insight in to the processes and challenges that the Steinberg dev team has to work through.

1 Like

Daniel, I just want to say thank you (once again!) for providing context and background, itā€™s helpful and very reassuring.

In another post, someone mentioned Doricoā€™s possible support for ARA. Would it be possible for you to shed some light on whether itā€™s actually sensible or even possible on a technical level at all? I understand that ARA involves processing of an audio stream that is then returned to Cubase. On the other hand, since it is an audio extension for VST3, it might not be necessary as VST3 already supports MIDI exchange natively? Confused and grateful for any clarification. Thanks!

Iā€™m not an expert on the finer points of ARA, but my understanding is that ARA doesnā€™t make much sense for Dorico because Dorico is not fundamentally an audio editor, which is really what ARA is all about.

ARA does allow the exchange of things like the tempo map between the host and the plug-in, but Dorico and the audio engine can already do that to a limited extent anyway, and we will continue to build that out rather than relying on ARA to complete the support for that.

1 Like

Here are some ideas for playback syncing:

  1. Set the same time signatures in Cubase and Dorico (including any time signature changes)
  2. Set the same constant tempo in Cubase and Dorico or make a tempo map in Cubase, export it and import it into Dorico or vice versa
  3. Create position marker(s) in Cubase in those points youā€™d like to sync (like specific bars, sections, whatever)
  4. Create a MIDI Controller Surface in Cubase that uses a virtual MIDI port (e.g. IAC on macOS). IAC can cause a MIDI feedback loop, so deactivate that input in Dorico.
  5. MIDI-learn navigating to markers created in step 3 and MIDI-learn Play and Stop commands in Cubase
  6. Create a player (or conductor? :smiley:) in Dorico that outputs to the MIDI instrument using the same virtual MIDI port used by the control surface created in step 4
  7. Send MIDI messages from Dorico at the beginning of each sync point to navigate to the appropriate Cubase marker and start Playing and send MIDI messages to stop playing when the synced section finishes

This is just a basic idea with many additional possibilities including advanced MIDI remote scripting in Cubase.

Dorico also has a remote API, but I think it has too much latency before clicking play and actually starting playing, so itā€™s better to use Dorico as master anyway. But I think itā€™s possible to use both remote APIs together for some advanced workflows that go beyond playback syncing.

Iā€™ve tested the above idea and it turns out that Cubase also has significant latency between receiving Start command and actually starting playing. So the above method is not really reliable. But for academic purposes, I will explain the experiment. It may inspire some further ideas.

This is the Cubase side:

There is a piano track with MIDI region containing simple 4-bar C F/C G/B C progression and I placed a marker at the beginning of the region. MIDI input for this track must be either disabled or set to anything other than IAC as we donā€™t want the track to receive events sent out from Dorico through the IAC port.

I created a simple control surface with IAC input port containing 3 buttons, that maps notes C4, D4 and E4 to navigating to marker 1, starting playing and stopping playing respectively.

On the Dorico side, there is a piano track with 4 bars of C F G C bass notes and another track that sends MIDI through IAC :

The idea is to sync playback between the 4 bars in Dorico and the 4-bar MIDI region in Cubase by sending C4 (go to marker 1) and D4 (start playing) just before Doricoā€™s first bar with notes. So I set the input grid to the smallest possible value (1/32) and tried something like this:

However, Cubase was playing behind Dorico. So I experiment with moving the C4 D4 ā€œcontrol chordā€ to the left until I almost got them in sync:

This is of course completely unreliable as the delay between Cubase receiving the start command and actually starting playing is not deterministic. It was an interesting experiment anyway. :slight_smile:

Rather than synchronization, giving Cubase/Nuendo the ability to read binary XYZ.dorico files would do the trick nicely and be all thatā€™s needed. Just a new Import option on the DAWs. Now that the Dorico score reader has been integrated (and into Nuendo too eventually presumably) I donā€™t see a need for synchronization. My ideal use case

  1. Do all the work in Dorico
  2. Save the binary file - now all the ā€˜heavy liftingā€™ on the MIDI drudge has been done
  3. Import into Nuendo (Cubase)
  4. Score editor is populated - ideally including score items not in MIDI like comments and text - and the corrosponding MIDI is the same as from Dorico
  5. Edit and mix away ā€¦

Itā€™s a one way street but thatā€™s fine, it should help relieve the developer burden, but I donā€™t see a need to export DAW edits back to Dorico, itā€™s a downstream process ā€¦