Remote delay seconds apply to external HW synths on playback?

Hello,

we are using VST Connect Pro since a short time and we have most of it running very well in a project that only uses VSTi and Audio Tracks.
We can record audio from Performer into the project without sync issues, can configure a VSTi on the performer side and record the Midi Track and Audio Track perfectly, and so on.

But there is one major problem we could not solve so far:
mixed projects with VSTi, Audio Tracks and Midi Tracks to external synths with corresponding Audio Return Tracks that are switched to the “live” signal of the external devices (using the loudspeaker symbol).
The problem is that the external audio return is always exactly delayed by the “Remote Delay Seconds” latency, but the VSTi and the recorded Audio Tracks are not. So they are obviously not in sync (as soon as we are connected).
This makes it impossible for us to keep the live signal of external devices during VST Connect pro sessions.

My question is:

  • is this by design, and cannot be avoided?
  • if yes, why do external devices behave differently from internal VSTis, that need to be calculated ahead (e.g. one second) before their audio output reaches the performer? This should be possible with external devices just the same, shouldn’t it?
  • are we configuring something wrong and just cannot find the root cause?

Workarounds are possible, but all are not very practical to us: recording external devices after each midi track change again, using the track delay in the inspector for all VSTi and Audio tracks (but not for the external midi tracks), etc.

Looking forward to an answer or even better a solution, hoping this problem is not related to not having found the right place in the documentation!
Thank you.

BTW: VST Connect Pro is really good software, big thanks to Steinberg for developing it! Even with the outlined problem it is of great value.

For completeness, there was an almost similar discussion here:

Proposed solution : rendering the external gear audio before using vst connect. This will work without a doubt, as soon as tracks stabilized enough.

While I understand that VST Connect is not a jamming tool, the point is that FMPOV midi tracks to external gear and the audio returns with the loudspeaker symbol switched on could be prebuffered by Cubase just as it is done for VSTi instruments, couldn‘t it?

I have been successful in the meantime by delaying all VSTi tracks by e.g. 500 msecs (if this is the configured remote delay time of vst connect) to have everything in perfect sync, but I have to switch it off again when not being connected anymore.
And this workaround has additional drawbacks, e.g. when cycling the first 500 msecs the delayed tracks are not playing anymore, same applies for the end of the cycle.

This is a general problem of latency compensation (note that this is Cubase/Nuendo, not VST Connect).
With any plugin that has an inherent delay such as lookahead-compressors and of course, VST Connect, the strategy is to feed these plugs with the outcome of “internal” playback before the system starts “external” playback. This way, audio is in sync despite different plugin “inertia”.

Problems arise with realtime input. This is the reason why we can’t use track monitor with VST Connect. It could be done, but requires a change in Cubase/Nuendo which we hope to get somewhen.

Now as for MIDI, this usually goes to a plugin (VST Instrument). In order for the plugin to output audio aligned to all other audio with delay compensation, MIDI is delayed as well. That is still fine, because external devices get their MIDI “in time”. However it is with the returned audio signal where things go wrong. Essentially, the same problem that VST Connect is facing: the audio realtime input signal gets delayed by the delay compensation (which equals the largest delay of all plugins with internal latency). You can try this yourself: create a track (not Performer tracks) with your mic as input, engage track monitor and there you have the delay. For VST Connect, you need to be connected, but take any other plug with delay compensation. You will hear yourself delayed by VST Connect Remote Latency, or with other plugs, their internal delay.

We will try to discuss this with our colleagues once more. There should be an option to switch behaviour of delay compensation for realtime audio input. However, delay compensation is quite a complex beast to tame, so it must be done with great care and that may last a while…

So basically, this is not a problem with VST Connect, you will have that very issue with any other plugins featuring internal latency (see plugin info).

Thanks for your quick and well answered reply, musicullum - this is very good support!

I understand that this is a Cubase/Nuendo topic instead of a VST connect problem.

To the details:

There should be an option to switch behaviour of delay compensation for realtime audio input.
This would be perfect and solving the problem, highly appreciated proposal.

However, delay compensation is quite a complex beast to tame, so it must be done with great care and that may last a while…
I fully believe that and will be patient :slight_smile: Thanks a lot that you are taking care of this topic (again, as it seems!).

One thing to add, though :

talking about “live signals” (like singing into the mic during playback at the studio side) sounds like a harder requirement than we have so far, since we currently talk only about prerecorded midi tracks routed to external gear (and never playing midi live at the same time). So in contrast to live input, the playback engine already knows which midi needs to be sent to the external gear. This at least should ease the requirement for instruments that produce their sound only from the received midi (vocoders with real time mic input might be a counter example IMHO).

So for us it would work to:

  • either make delay compensation for live audio inputs toggeable (audio track related)


  • or just sending the midi to external gear earlier than to internal plugs, again by making this behaviour toggeable (midi track related)

Just if the second option should be much easier to realize. Your proposal sounds more attractive, though.

I tried to do exactly this by using a negative midi track delay in the inspector, but this resulted in chaos (the external instrument always played different note pitches then, not understood why, but 100% reproducible). In contrast to delaying the VSTi plugs, this time with the positive track delay, which worked well (but had the outlined drawbacks, being just a workaround).

Your idea seems valid at a first glance, but it only makes things more complicated for development, because the system then needs to send MIDI ahead of time. The other problem is that it will fail if your MIDI device is connected to an audio output externally, it would then play way ahead :slight_smile: So the other solution is more ‘generic’ and serves VST Connect and other plugs as well.
Had a chat with a colleague today (yes we work on Sunday) and we may get there sooner than expected, fingers crossed.

Great news, musicullum, I am impressed by the quick support from your side (even on Sundays, this is real passion :slight_smile:)

Getting a solution sooner than expected sounds very promising - I guess it might be of value to other users as well, since the topic is not only an exotic edge case.
I will watch the news closely here, if you come back to this conversation in the future, if there are news on the topic, it would be perfect.

Until then I will live with the workaround, and enjoy all that is running already (which is a lot).

Thanks again to Steinberg to continue pushing the limits of what is possible with DAWs, great work!

Cheers, sysexcontrol (having started with 24 on Atari back in the eighties, what a difference…)