Dorico Pro 3.1 & 3.5 and VE Pro 7 Issue

Hello Dorico team,
I’d noticed the following issue when combining Dorico Pro 3.1 and Vienna Ensemble Pro 7 (check the screenshot):

As you can see the Buffer size in VE Pro 7 Server (512) doesn’t match the one of the RME UFX interface (128). The Buffer size of the VEP VST3 plugin is 1024.
When using VE Pro 7 (the same settings) with Cubase Pro (VST Guard turned off for VEP), Overture 5 or Studio One everything is fine.
The buffer sizes of both the Audio interface and the VE Pro server are the same, and for the VST 3 plugin is 256.

Is there any way to fix this latency issue? It seriously affects the real-time recording.

The workstation I have is able to handle normally large orchestral projects at Buffer size not higher than 256. Even when mix and mastering plugins
are involved, too.

Thank you in advance! :slight_smile:

Best regards,

You’ll have to excuse my ignorance, since I’m not an expert in this area, but as far as I know the buffer size settings are under your control. You can specify the buffer size in your Fireface, in Dorico’s Device Setup dialog, and in VE Pro. So I believe you can set them all to the same value, can you not?

Hello Daniel,
Thank you for your reply! :slight_smile:
Yes, I know that the buffer size should be controlled by the Fireface, but something in Dorico has influence on VE Pro.
Generally it’s enough to set the audio driver to the desired buffer size. And with all other apps I have on my workstation works correctly.
The problem appears only with Dorico.
I’ve just noticed that when using Dorico and VEP it’s not possible lower the buffer size for VEP below 512. Even if you set the Fireface’s buffer size to 256, or 128.
I don’t have such issue with the other apps mentioned in my previous comment. So, I suppose it’s something Dorico related.

Probably the Audio Engine dev team would have any idea about what may cause this issue?!

Thank you once again! :slight_smile:

Best regards,

Dorico, resp. it’s audio engine has nothing to do or care about the buffer size. The buffer size is purely a setting of the audio driver.
See, if you go in Dorico to ‘Edit > Device Setup’, there is no setting for buffer size, only if you push the ‘Device Control Panel’ button a new window opens, where you can specify the buffer size of the audio interface, but this window gets only invoked by Dorico, but is actually independent and comes from the driver (one can even call this window separately, when Dorico or any other audio app is not running). So Dorico does nothing about the buffer size or restricts the setting of it.
I hardly know VEPro, so can’t tell anything on that behalf, but I suggest you also ask in their forum.

Also Dorico’s setting for midi input latency compensation isn’t set automatically. The idea of it is that it’s for compensating for the end to end latency, including the user. We did an experiment with three people recording in real time on the same machine and there was a difference of up to 50ms between us. There any many factors that contribute to the perceptual latency, including how you anticipate the beat and the attack time of the current instrument, as well as playing style.

If you find that you aren’t getting good notation after recording then create a new piano project, set the preference to preserve note positions from midi (sorry, I can’t remember the exact name) and record 4 beats as accurately as possible and then switch to play mode. At 120bpm, each 16th note lasts 125ms so you can see roughly how much before or after the beat to set the latency. The number can be negative too, so try a couple of values until the notes are more aligned with the beat. On my system a value of 50ms worked well, but that’s representative of my hardware and playing style.

Ulf and Paul hello,
Thank you for your reply! :slight_smile:
Ulf, exactly this is the way how I’m invoking the Audio Interface Settings window, via “Device Setup” in Dorico, I already explained that. :slight_smile:
I have this latency issue only with Dorico, everything works as expected with Cubase, Studio One and Overutre.
I will ask VSL if they can help somehow, but I’m still thinking that the problem is probably in the audio engine of Dorico. Since there is no issues with the other apps…
VE Pro is widely used external VI Host, so probably you could do some tests with it. :slight_smile:

Editing the Dorico’s MIDI input latency compensation doesn’t help. It doesn’t reduce the latency of transfer between Dorico <-> VE Pro.
Surely some tests should be conducted by the dev team.

Thank you in advance! :slight_smile:

It is not practical for us to test with a large number of plugins. Our beta testers do test with many plugins including VE Pro, and none have reported any specific problems with VE Pro, so that makes me think that it is likely to be a configuration problem. If it’s working for you in Cubase then that suggests that there’s some configuration inside the plugin that you need to do. Hopefully one of the other Dorico VE Pro users will be able to offer some advice.

The setting in Dorico does not control latency, it controls the interpretation of the MIDI timestamps in order to map events onto the notation.

I will inform VSL for this issue. I’m using it with exactly the same settings with every application.
I don’t have separate settings for Cubase, S1, Dorico, or Overture.
I do hope that someone else would be able to assist in fixing this issue! :slight_smile:

Best regards,

As an experiment, what happens when you do change the buffer settings in your RME audio driver (before launching any other apps).? Are the changes correctly reflected in Cubase/StudioOne/Overture/Dorico AND the VEP7 plugin…?

Hello Puma0382,
Thank you for the comment! :slight_smile:
Yes, if set the buffer size before launching any other apps, the changes are applied correctly for Cubase, Studio One, Overture and VEP7.
For Dorico I think, too, but since there is no any indicator which gives info about the buffer size status, I don’t know.
The only thing I can say there is difference in the latency when using virtual instruments directly in Dorico, and through VEP7 connected to Dorico.
When hosted directly in Dorico there is no audible latency while playing the keyboard.

In my opinion, in the “Device Setup” dialog, beneath the Sample Rate, should be added another menu which will give us info for the actual Buffer Size, the same way as in any other app.

Best regards,

Hello Dorico team,
I’ve got a reply from VSL team on this issue. They are also able to reproduce my problem 1:1, but unfortunately can’t understand what blocks
the direct corresponding between the Audio Interface and VEP7, when it’s used alongside with Dorico.
They conducted tests with bunch of apps like Cubase Pro 10.5, Sibelius and others, but no problem with them.

They asked to upload screenshots from other apps here, but I already explained that everything works as expected with the others Studio One, Overture, and Cubase…
In case you need screenshots I’ll make.

Please, contact them in order to investigate what may cause this problem! :slight_smile:

I’m using both Dorico and VEP7 on the same workstation. (in case this info would be helpful)

Thank you in advance! :slight_smile:

Best regards,

Dorico’s audio engine is identical to that of Cubase in terms of audio processing, so I don’t see a reason why VEP7 should behave differently in Dorico than in Cubase.
But we’ll further investigate on this, though it won’t have highest priority, so please be patient.

Ulf hallo,
Danke schön for the reply! :slight_smile:
Well, to is also an enigma what may cause the different behavior when VEP is used with Dorico, and Cubase, since the audio engine is identical?!
I only may guess that something inside the engine of Dorico blocks the direct corresponding between the Audio interface and VEP.
I’ll be patient! :slight_smile:

Best regards,

Hi, in the meantime we found that ASIO Guard is the reason behind this behaviour.
And actually, also in Cubase you experience the exact same issue, if you switch the recording button for a VEPro channel off.
Because when a channel is in record mode, ASIO Guard is switched off, simply for that reason, users don’t want to have a latency issue.
Dorico’s audio engine on the other has ASIO Guard constantly enabled, and in that case VEPro can not go below a buffer size of 512.
So we need to add some code in order Dorico can tell the audio engine to switch off ASIO Guard for particular channels.

Hi Ulf,
That’s great you found what cause the problem I have! :slight_smile: Thank you very much!
Would be great if there is an option, as in Cubase, to manually disable, or enable ASIO Guard for plugins. :slight_smile:
Generally would be great if we have as much control over the ASIO Guard, as we have in Cubase.
In the future would be really nice if VE Pro is able work with ASIO Guard enabled, but this probably depends
mainly on the team at VSL?!

Thank you once again! :slight_smile:

Best regards,

Hello Dorico team,
This issue with the ASIO Guard and VE Pro isn’t still resolved in version 3.5. I hope you could make ASIO Guard to be activated/deactivated per
plugin like in Cubase, in the near future! :slight_smile:
Thank you very much in advance! :slight_smile:

Best wishes,