Dorico can't exit when using Cantai

Dorico and Cantai

I’ve recently started using Dorico with Cantai. However, the project won’t close and Dorico can’t be exited normally afterwards. The only way to close it is by using the ESC + Option + Command key combination.
My computer is a MacBook Pro with an M5 Pro, 48 GB of RAM and a 1 TB SSD.
Dorico 6.2.30 and Cantai 3.0.1

Just a guess as I don’t have Cantai, but could it be you’re trying to close Dorico whilst Cantai is busy rendering the lyrics?

No, because that happens after the songs have been rendered and played.

Can you please check in the Activity Monitor for a process called VSTAudioEngine. Because that one actually hosts the Cantai plug-in. If that process is not around, it means it crashed and therefore Dorico waits indefinitely for an answer from that process.

Please also do Help > Create Diagnostics Report and post here the corresponding zip file. I’d like to check for crash files that may be inside.

Thanks

Hi Ulf,

here comes the Report:

Dorico Diagnostics.zip (3.4 MB)

When Dorico is playing the song, the VSTAudioEngine is running. When I stop playing and want to close Dorico then the VSTAudioEngine disappears after a few seconds.

I would also enter a help ticket through Cantai’s chatbot. I had sporadic issues with that in V3.00 but not since on MacOS Tahoe (always updated).

Hi @Reinhard32 , good point also from @kasky1 .

In your diagnostics are no crash files contained and that what you describe with the VSTAudioEngine is also normal behaviour. Therefore I’d like you to do a sample of the Dorico process when it is not exiting. This is how to do that:

  • Open Activity Monitor via Spotlight or the Utilities folder.
  • Click the CPU tab.
  • Find and click the Dorico name.
  • Click the Action button (circle with 3 dots inside) in the toolbar.
  • Choose Sample Process.
  • Click Save to export the text report.

The resulting file pleast post here. Thanks

Hi Ulf,

please find attached the data file:

Analyse von „Dorico“.txt.zip (90.7 KB)

and additional a report when Dorico hangs:

Analyse von „Dorico“ hangs.txt.zip (66.1 KB)

Quick update: Turned out that Cantai crashes the audio engine and Dorico waits indefinitely for a reply.

So, will a future Dorico update address this by eliminating that loop in some reasonable way?

In the meantine I have created a ticket at cantai.

It’s difficult. First of all, a plug-in shall not crash the host (audio engine). But then, what do you do in such case? The user wants to close a project and Dorico does collect the status data of all instantiated plug-ins. If during this process the audio engine dies, what can you do? The project data is incomplete and inconsistent and even if you get out of the deadlock via some timeout or interrupt, what do you do with a half baked project file?

It’s of course difficult. But the alternative is to kill Dorico manually, which leave the user in the same situation.

The advantage though, is the user being informed about an unnatural end.

So, maybe Dorico could show a message: waiting for the audio engine to end. Do you want to wait longer …

Wasn’t something like this implemented while waiting for audio engine initialisation too, or do I misremember?

I understand that. I did not clarify. I think a timeout or interrupt that exits that loop and closes Dorico, perhaps with a warning message about the audio engine, would work but I could be wrong.

Yes, something like that could mitigate the problem a little bit, though the result is still the same…

At least if Dorico does not out-and-out quit, there can be an opportunity to export the project as XML as a safety backup, right?

That could well be, yes.

My workaround: Before I close my project, I save it. That works. Exporting audio files works too.
The only thing that doesn’t work is closing the project.

Another thought…could it be that you are closing (clicking on the red x on a Mac) the Cantai dialog boxes when finished setting up your voices?

With most VST interfaces, that’s not really an issue but since the Cantai interfaces (one per voice) is not one’s typical VST, there may be something about that “closing” that sends something to the Audio Engine that causes it to close down prematurely.

Just a harebrained thought for what it’s worth (probably not much!)

I’ve had the same issue and always have to resort to force quitting the VST audio engine.