Dorico 2 unreliable playback initialization

I do not have that folder although I did run the regedit script needed to create crash dumps on Windows.

9:22 AM California. I had 3 projects open. One small test project that wouldn’t play back, another test project that would, and my main project that also would. Closed test project 2, brought main project to front, busy cursor then ‘not responding’. Closed window, reporting to MS appears. Restarted dorico (no project) saw Audio Engine died error message. Closed that window, restarted hub. Created diag report. Diag report was too big to attach here, so I uploaded it to dropbox. Dropbox - Dorico Diagnostics.zip - Simplify your life

There is a crash dump of the audio engine in there; I will take a look at it on Monday when I’m back to the office.

Paul and I looked at the log files and the crash dump. From your description and the logs we reconstructed:

  • On 7:39 you launched Dorico (and with it the audio engine)
  • Until 9:20 you worked with several projects.
  • At around 9:20 something severe must have happened to Dorico. The Dorico log for that run is missing, so we can only speculate what exactly happened. Either Dorico crashed or just went down silently (there is no crash dump for it), however, the audio engine continued running.
  • You then restarted Dorico and that instance then tried to connect to the still running audio engine.
  • During re-connection the audio engine got into a bad state and crashed (we have a crash dump for this). The crash of the audio engine was in a very low level function when trying to establish interprocess communication.
  • At 9:23:31 you then restarted Dorico and everything was fine again.

So far with the reconstruction. The audio engine crash is just a subsequent error. We need to find out more of why Dorico went down before that.

Does the problem only occur when you have a particular project open?
Also, have you ever tried using the Generic Low Latency driver (under Edit > Device Setup). Is it maybe more stable with that driver?

Thanks for investigating. I am using an Universal Audio Twin USB and their driver. I doubt I can use any other driver.

I’m not suggesting to always use the other driver. Just for finding out where your problem might come from.

It’s pretty difficult to debug your system via the forum, so any additional help or finding from your side is greatly appreciated.

I have the same problem but on Mac. I have created a small, light project, put a few notes, saved it, next day opened and no playback. The instruments are active because in play mode when I connect an external keyboard I can play them, but first hitting playback brings a beachball. The app remains reactive as hitting stop gives back access to it, however the second hitting the playback renders it unresponsive and closing it demands force quitting. Dorico is 2.2.
I had it before but wanted to investigate a bit. The real drawback is that Dorico does not crash, it hangs, so there is no useful crash reports. Any help here will be appreciated.
Witold

Would you be able to share the project with me? Could you please send to ‘u dot stoermer at steinberg dot de’?
Also, please choose from the Dorico main menu Help > Create Diagnostic Report. That will create a zip file on your desktop. Please also send me that one.

Could you possibly have created a MIDI feedback loop? Make sure that you don’t have the same MIDI devices active for playback (in the MIDI Instruments section of the right-hand panel in Play mode) and for input (in the MIDI Input Devices dialog on the Play page of the Preferences dialog).

Thank you both for the reaction.
I have to quote here one of post-Murphy’s laws: everything works better in the presence of the maintenance specialist. I opened the project today and all worked. I went in the direction Daniel suggested to check if there is no looping, and actually, there might be something like it, but not harming. I use Komplete Kontrol S61 as one of the inputs and Komplete 12 as one of libraries. Daniel’s suggestion may have a deeper merit, because inside Komplete Kontrol app there are numerous possibilities of interlinking physical MIDI devices (and I have more than a few) and some of them were actually connected. That might have created the hidden looping Dorico reacted to. Yesterday I removed most ot these interconnections, but not with Dorico in mind, just doing a cleanup, and Dorico works. This may be a coincidence so I will continue working on the project and if anything interesting comes out of it I will get back to you immediately.
For the moment, again, thanks to both of you.
Witold

Hello Daniel and Ulf,
The playback problem is back, this time rather paralyzing my work. I have created flute, clarinet and oboe on one instance of Play, french horns and trumpets on the second, one instance of the synth on Komplete Kontrol and v1, v2, violas, celli and db on individual instances of Kontakt. Put 4 notes on v1 staff and never succeeded to make Dorico play a single sound. I followed Daniel’s recommendations, checked all possible MIDI loops to the extent of removing all MIDI input devices, I even removed Komplete Kontrol from VST instruments and the result was always the same: push Play, nothing happens, push Stop, Dorico hangs and that is mostly it.
Do you happen to have developed a remedy for such situations?
Witold

But other projects do play back for you? It is only that new project that is not doing?
If that is the case, then it would be good if we could get hands on that project file.
Also, could you please choose from Dorico’s main menu ‘Help > Create Diagnostic Report’ and send me the corresponding zip file?

Honestly, since my last problem with Dorico’s playback I decided to return to Sibelius and eventually wait for an update. Did not have time for experiments. The new project creating the problem is then a second in the row, nothing in between. Diagnostics file is attached. As for the project file, even if zipped, it is refused as too large. The project file is in fact empty, just four notes and 11 empty staves.
Witold
Dorico Diagnostics.zip (1.32 MB)

You need to set your playback template to Silence. Play mode, Playback template. Save and close, and the file should be much smaller.

Added, but I suspect that saving it in silent mode removes all trails of the problem. Waiting for your response I did a few experiments that suggest that the problem is rooted in communication with and management of VST plugins. My every VST plugin was a single instrument instance with only two Play instances that were multi-instrument and I suspected them as the source, so I left only one instrument per instance and disconnected other staves from each Play instance. And Dorico began playing. Then I gradually added back the same instruments to both Play instances, checking after each addition if Dorico still plays until I got back to the original configuration, this time with with Dorico playing back.
But I leave the detective’s job to specialists.
Witold
Against the Mirror (Silence).dorico.zip (350 KB)

Thanks for the data, but as you alreaday suspected, I need the original project file. Could you please send via mail to ‘u dot stoermer at steinberg dot de’?

I did have a look at the diagnostic logs, and the only suspicious thing I could find in there was, that you use a quite massive setup.
You have 2 Play, 1 Kontrol and 5 Kontakt instances loaded at the same time. Not only that just these already put a heavy load on the audio engine,
but each of the instances has - since they are multitimbral - plenty of audio output ports. For each of these outputs the audio engine
creates internally an own return channel, so you end up with really hundreds of channels, that the audio engine has to deal with.
This alltogether unnecessarily eats up memory and cpu power.
I dare say that your usage of VST Instruments is here the problem, but it needs to be confirmed. Please send the original project.

I will send the file soon, but now a few corrections. In case of Kontakt instances only one Midi channel is used (16) and only one audio is used (ch1). I may check if internal channel setup for these instances can be simplified, but it does not seem to be the source, at least not direct, because, as I explained in the previous message, I got back to the original config and Dorico played it. During all these experiments the 5 instances of Kontakt remained untouched. Also, for Sibelius it does not seem to be a heavy load, I have put much heavier loads on it, not to mention Cubase, which takes way, way heavier loads without even a blink. My machine is a double quad core Mac with 32GB of RAM and all disks SSD.
Witold

Witold, thanks for the new project file, but I can’t figure out what is wrong with it, because I do not have the corresponding VSTi plug-ins. The project loads fine and starts playing with me, but no wonder, because there are no instruments loaded, so all the MIDI data is sent into void.

You said you went back to the “original config” and Dorico played it back. What does the original config look like and what did you change?

Just for confirmation, could you please try something. When your project is not playing, go to Edit > Device Setup and change the sample rate from 44.1 to 48kHz, wait a few seconds and then switch back. After closing the Device Setup dialog, try again. Does it then play back?
Also, most instrument plug-ins have in the editor window at the bottom of the screen a virtual keyboard, where you can play with the mouse cursor. If you do that, does sound come out?

For the Kontakt (and other VSTi setup), yes, I do see that you only use 1 MIDI channel, resp. 1 audio channel per instance, but that is exactly the inefficiency I was talking about. Just one Kontakt instance could serve all your needs in that particular project. Also, each instance has many virtual outputs and for each output the audio engine creates a return channel. So your virtual mixing console has 256 channels of which you effectively only use a dozen. So even if your machine can easily deal with it, it’s a waste of cpu cycles => energy. For that reason I recommend that you review your setup.

Ulf,
The “original” playback that did not play and created this whole conversation was:

  1. Play: flute solo, oboe solo, clarinet solo. Every instrument on individual midi channel but all sending audio through the same MAIN audio output
  2. Play: 6 French horns section (as one instrument), solo trumpet. Every instrument on individual midi channel but all sending audio through the same MAIN audio output
  3. Komplete Kontrol: one single synth
  4. Kontakt 5: LASS 1st violins. All 16 slots filled with articulations grouped by 3 to one midi channel (i.e. violin sus A, B and C connected to the same MIDI channel) being controlled through internal LASS script called ARC. MIDI channel 16 used for transmitting notes and key switches used by ARC, audio channel 1 used to output sound from any of articulations
    5.Kontakt 5: LASS 2nd violins. Configuration as for 1st violins
    6.Kontakt 5: LASS violas. Configuration as for 1st violins
    7.Kontakt 5: LASS celli. Configuration as for 1st violins
    8.Kontakt 5: LASS double basses. Configuration as for 1st violins

As the above setup did not play and made Dorico hang I removed both Play instances and Dorico began playing. So next I added one instance of Play and loaded solo flute, Dorico still plays. Next was the second instance of Play with 6FH section loaded, Dorico played. Checking after every addition if Dorico plays I added oboe and clarinet to first Play instance and solo trumpet to the second, so I was back to exactly where all that began, but this time Dorico played. Finally I connected back two MIDI keyboards, and again, all worked. Actually, when writing this text I opened this project again to be sure nothing unseen happened in the meantime (I use my studio all the time), and it works.
As for changing the sample rate, now it would give no indication because the project plays, but if anything like that happens again I will definitely check this trick. Also, I will immediately try to get the diagnostics report.
Now, about using Kontakt I completely disagree with “…just one Kontakt instance could serve all your needs”. Theoretically speaking, yes, but practically Kontakt begins to choke if you load more than 3 sample-heavy instruments. First I found it on my own, but later, when searching on different fora I have discovered the recommendations about using multiple instances of Kontakt vs one heavily loaded. My next step was checking how the load distribution looked like in both cases and I easily found the answer. When Kontakt is heavily loaded and it is a single instance, the processor load distribution is managed mostly by Kontakt, which is not very efficient (Kontakt internal load indicators were almost all the time on red, out of my 8 cores one was fully charged, second maybe in half, remaining 6 were idling). When I use several instances of Kontakt loaded with limited number of instruments its internal load distribution inefficiency has a smaller impact as there still is the main control done either by a host application (f.e. Cubase) or by the OS itself. And my 8 cores are charged way more evenly. To conclude, I will check what can be done to reduce the internal complexity of Kontakt instances I use, but the processing efficiency losses that come as a cost with it are much lighter than using only few but heavily loaded instances od Kontakt. Also, we probably should take into account the differences between working on Windows and on macOS.
If you find reasons for the whole problem, and the remedy, be it in work process or as the update, I will be first to immediately move to Dorico. Its design is very promising.
Witold

Witold, to be honest, I have no explanation why the same setup did not work before and now suddenly does. And what is worse, it is extremely difficult to find out the cause. I either need to reproduce the issue here, but then I’d need a similar setup, with all the instruments and sound libraries installed, which I simply don’t have. Everything else would require your heavy involvement and endless e-mail communication between us. You seem to be a busy person and this does not sound like an option.

For the trick with the changing of sample rate, I have hope, that this is really the issue behind it. There is a known bug (unfortunately the fix is not released, yet) where Dorico does not play back, when the sample rate of the audio interface got changed. E.g you work with Dorico in 44.1kHz, close it and start another audio app that sets the audio interface to let’s say 48kHz. Then you close that app and start Dorico again, which will then set the sample rate to 44.1kHz again. Under this circumstance Dorico’s audio engine gets a little confused and therefore playback does not do anymore. Flipping the sample rate then brings the audio engine back into a normal state. The fix will come with the next update.

Regarding Kontakt, well, if that is your experience and if it works for you, then that is the way to go. Also, I did not see that you actually fill the slots with different articulations. So with that you certainly need the many Kontakt instances. What you could still consider, using “Kontakt 5 16out” instead of “Kontakt 5”. The latter one creates about double the amount of aux outputs, thus increasing the number of return channels the audio engine will need to allocate for them. Check and see if “Kontakt 5 16out” could already fit your requirements.