“Release Driver when Application is in Background” does not work reliably — an idea for a solution!

The Cubase developers have provided this very useful feature: “Release Driver when Application is in Background.” I suspect that not all that many Cubase users make use of it, but under certain circumstances it is absolutely essential. And that makes it all the more frustrating when you discover that it does not work reliably. Let me explain.

We use an ASIO driver to handle the output signal and send it to the audio hardware we are using. In my particular case, this is a Mackie Big Knob Studio+, so in Studio > Studio Setup > Audio System I select the Mackie ASIO Driver. From the Mackie, the signal is then sent to my Neumann monitors.

However, only one application at a time can use the ASIO driver. Normally, this means that you first have to release it in Cubase — for instance by selecting another driver — and then activate it in the other application. And vice versa. This is obviously rather cumbersome.

This is where “Release Driver when Application is in Background” comes to the rescue. By automatically releasing the driver when the application is moved to the background, another application can take control of the driver.

And it works — or rather, it works a few times.

After switching two or three times, a problem occurs. The driver is no longer found and there is no audio. The only way I have found to restore the situation is to close the applications and, in my case, also switch off the Mackie. After that, I can restart everything and continue working.

Let me explain my particular use case.

I am currently re-orchestrating a piece for a completely different type of ensemble. To do this, I want to copy/paste events from the existing project into the new project. In other words, I am assigning each melodic line to different instruments.

Before doing so, however, I very much want to listen to each melodic line in isolation, so that I can work out how to create an equivalent sound and expressive character using instruments from the new orchestra.

Ideally, therefore, I want to have two projects open at the same time: the old one and the new one.

Within one instance of Cubase, however, only one project can be active at a time. So in order to listen back and forth, I would constantly have to activate the other project. These are fairly large projects, and activating one takes several minutes — even on a computer with a 16-core processor and 128 GB of RAM. When frequent switching is required, this results in an enormous waste of time.

My solution is to open the old project in Cubase Pro 14 and the new one in Cubase Pro 15. Both projects then remain active, and all I need to do is switch between Cubase 14 and Cubase 15. With the Release Driver function enabled, the ASIO driver should always be used by only one application at a time.

But, as I said, this does not work reliably.

And I think it is fair to say that this use case — or a similar one — is exactly what this function is intended for. It does not necessarily have to involve two versions of Cubase; any other application running alongside Cubase that uses the same ASIO driver can create the same problem.

My suspicion was that, when switching directly between two applications that both use the driver, there may be a brief moment during which both applications try to access it at the same time.

So I tried the following.

I opened an empty document in Microsoft Word. I chose Word simply because I can be certain that it does not use the ASIO driver.

Now, whenever I want to switch applications, I briefly click on the Word document first, and only then switch to the other audio application.

And this works.

The intermediate step via Word only has to last about one second. Apparently, that is enough time for the first application to release the driver completely, allowing the other application to take control of it safely.

Using this method, I can switch back and forth indefinitely.

But there is one problem: we are all human and therefore imperfect. I certainly am! In the heat of the moment, I regularly forget to click on Word in between. And then I have to close everything down and start all over again…

Grrmm.

Which brings me to an idea — a suggestion for the Cubase developers, and perhaps also for developers of other audio applications:

PLEASE PROGRAM A SHORT DELAY BEFORE AN APPLICATION TRIES TO ACCESS THE ASIO DRIVER WHEN IT BECOMES ACTIVE.

Wouldn’t that be great?

We could simply switch directly from one application to another, without eventually being “thrown out” and losing access to the driver.

I sincerely hope you will consider this suggestion, so that the excellent “Release Driver when Application is in Background” function can truly do what it is intended to do.

With compliments from the house. :smiling_face:

I wonder if the driver would function again when clicking the Reset button here:

Maybe that can spare you the need to restart everything.

I wouldn’t think so. This functionality came to life in the mid 1990’s when ASIO was first released. Back then I think nobody was trying to run two different instances of Cubase on the same computer. There were not even two different versions of Cubase with ASIO support. It was rather for the people who used Soundblaster cards with Cubase and needed their card to switch between ASIO and MME.
That’s not intended to take anything away from your feature request, of course.

The most logical solution is a multiclient audio driver capable device, like most devices are (RME here). But you can also install a multi client capable driver layer like this one, VB-Audio VoiceMeeter Banana

I have not tested this one and there are many, but it might solve the issue completely and no need for disable in background anymore.

I find this function (“Release Driver When Application is in Background”): confusing, and apparently inconsistent in its functionality. My main use is switching back and forth between Cubase and Youtube.

Confusing, because from the always helpful @Louis_R 's excellent post Audio Setup Guide - for Windows users - Cubase - Steinberg Forums, I have left that box unchecked, but as below, I’m not sure that is always the right thing to do nowadays (“has there been a change in how this function is applied”, I wonder?).

I find that usually allows me to hear sound in Cubase, and then in youtube, simply by switching applications … except sometimes it doesn’t work and youtube is mute!

Sometimes I need to check the box to hear youtube, sometimes I need to close down Cubase, or even reboot the computer, for things to work properly. I think sometimes none of these things work, and I just shrug my shoulders and carry on, without listening to youtube on this computer.

:see_no_evil_monkey:

Thanks for your reply, Alexis.

Louis_R writes:

“For channels to output audio from multiple programs simultaneously, the sample rate must be the same between all of those programs.”

And I think there is an important distinction here.

Louis_R’s guide is about simultaneous multi-client access: several applications using the same audio interface at the same time. For that to work reliably, a number of conditions have to be met — the driver must support multi-client operation, the sample rates must match, Windows Exclusive Mode must be configured correctly, and so on.

My feature request is actually about something different: reliable sequential handover of the ASIO driver from one application to another.

I do not need Cubase Pro 14 and Cubase Pro 15 to play simultaneously. I only need one of them to use the driver, then release it completely, after which the other application can take over.

And sometimes you simply have to work with applications or projects using different sample rates. In such a situation, simultaneous multi-client operation may not even be possible or desirable. What you need is a reliable way of switching.

That is really the point of my feature request.

What I found in my own setup is that, with Release Driver when Application is in Background enabled, I can switch repeatedly between applications using the same driver without any problem as long as I allow a very short pause between them.

I tested this by briefly switching to an application such as MS Word, which does not use the ASIO driver, before activating the other audio application. The intermediate step only needs to last about one second.

And this works.

With that short interruption between the two audio applications, I can switch back and forth indefinitely. This strongly suggests that the driver is being released correctly, but that when switching directly from one audio application to another, the second application sometimes tries to access it before the first one has completely let go of it.

My original example was switching between Cubase Pro 15 and Cubase Pro 14, but I have encountered the same problem when switching between Cubase and another application using the same audio device, such as Windows Media Player.

So the issue does not seem to be limited to running two versions of Cubase. It is about the timing of the handover between Cubase and any other application running alongside it that uses the same ASIO driver/audio device.

That is why I think a very small delay before Cubase tries to reacquire the driver when becoming active might make this function much more reliable.

So, Alexis, that brings me to the actual purpose of my post:

If you too would appreciate seamless and reliable switching between applications, without having to meet all the conditions required for simultaneous multi-client operation, please support/upvote this feature request so that it gets the developers’ attention.

Thanks, Johnny. I thought exactly the same thing after reading your reply, so before answering I tested the Reset button.

Unfortunately, it does not solve the problem.

But something interesting happened during further testing. Instead of losing the audio completely, direct switching between Cubase 14 and Cubase 15 started producing a different symptom: the playback speed became incorrect.

My Cubase 14 project runs at 44.1 kHz, while the Cubase 15 project runs at 48 kHz. When switching directly between them, Cubase 14 may play too fast and Cubase 15 too slow. The Reset button does not restore the correct situation.

So it seems that the problem is not limited to the driver occasionally becoming unavailable. The handover can apparently also leave the audio system in an incorrect sample-rate state.

Your historical explanation about the original purpose of the function is interesting, by the way. Whatever its original purpose may have been, the current function is obviously still very useful whenever Cubase has to release the audio hardware to another application.

Thanks for suggesting the Reset test — even though it did not solve the problem, it actually led me to another useful observation.

Thanks, Vinark.

Yes, I can see how a multi-client solution such as VoiceMeeter could avoid the problem altogether by allowing both applications to remain connected to the same virtual audio layer at the same time.

But I think that is actually a different solution to a different problem.

What I am trying to achieve is not simultaneous multi-client operation. I deliberately want only one audio application at a time to access the Mackie ASIO driver, and then hand that driver over reliably to the next application when I switch focus.

That is also why I am reluctant to add another software layer between Cubase and the Mackie unless it is really necessary. A virtual mixer/driver layer may well work, but it also adds extra routing and potentially sample-rate conversion.

More importantly, according to the current Cubase Pro 15 manual, this is precisely what the existing Release Driver when Application is in Background function is intended to provide. Steinberg describes it as releasing the driver so that other applications can play back through the audio hardware while Cubase remains running, and states that the application that has the focus can access the audio hardware.

So while a multi-client driver or VoiceMeeter may certainly be a useful workaround, I would still expect Cubase’s own driver-release mechanism to perform this handover reliably.

My recent tests have actually made the issue more specific. When switching directly between a 44.1 kHz project in Cubase 14 and a 48 kHz project in Cubase 15, one of two things may happen:

  • the driver becomes unavailable and there is no audio, or
  • the driver remains available, but the sample-rate handover is incorrect, resulting in playback at the wrong speed.

Interestingly, if I insert a pause of about one second via an application that does not use ASIO, such as MS Word, the switching remains reliable.

So for me, the feature request remains: make the existing driver-release/reacquisition mechanism robust enough to complete the handover — including sample-rate reinitialization — before the newly active application starts using the driver.

But thanks for the VoiceMeeter suggestion. It is certainly an interesting alternative workaround.

I wonder -

I use a UR44-C. I am able to set the default output for Windows Audio to the UR44-C, and simultaneously playback Cubase audio through the ASIO driver

So for example, audio from the web browser or a media player all play through the UR44-C, even simultaneously.

Have others done this too? I ask because maybe it has to do with the ASIO driver in use.

Yes, I do this all the time. But @DirkMM described a case of two ASIO applications sharing the same audio device.

UPDATE — further testing has changed my understanding of the problem

The replies to my original post made me think further about what was actually happening, so I carried out a number of additional experiments and tests.

Those tests have changed my understanding of the problem quite considerably.

I established that the two Cubase projects I was switching between did not use the same sample rate:

  • Cubase Pro 14 project: 44.1 kHz
  • Cubase Pro 15 project: 48 kHz

I had always worked at 44.1 kHz. Apparently, one of my newer Cubase 15 projects had ended up at 48 kHz and I had simply continued working at that rate without realizing it.

To verify this, I checked several older projects. They were indeed at 44.1 kHz, including my most recent project containing recorded vocals.

During my earlier switching tests, the Mackie interface would sometimes remain at the sample rate used by the previously active Cubase instance.

This immediately explained one of the symptoms I had encountered: playback could become too fast in one Cubase version and too slow in the other.

It may also explain, at least partly, the more serious audio-driver problems I encountered. Switching between projects at 44.1 and 48 kHz apparently involved not only handing access to the audio hardware from one Cubase instance to the other, but also changing the hardware sample rate.

My earlier workaround — briefly switching to an MS Word window between the two Cubase versions — probably helped because it created a short neutral interval during that handover. For quite a long time this seemed to work reliably, although further testing eventually showed that the pause was not in itself a guaranteed solution.

I therefore changed the newer, purely instrumental Cubase 15 project (VST instruments only) from 48 kHz to 44.1 kHz.

After confirming that Cubase 14, Cubase 15 and the Mackie hardware were all running at 44.1 kHz, I tested direct switching again — without MS Word, without an additional delay and without any other workaround.

I switched rapidly between Cubase 14 and Cubase 15 more than ten times without a single error message. I then repeatedly switched while starting and stopping playback, and finally even switched while playback was still running.

So far, this has remained completely reliable. When switching during playback, the Cubase instance going into the background stopped, while the newly activated one resumed from where it had previously stopped.

Steve’s reply then made me check another part of the setup that I had overlooked: Windows Audio itself.

I use the Mackie Big Knob Studio+ as the normal Windows playback device as well, for applications such as YouTube and Windows Media Player. In the Windows Sound Control Panel I found that the Mackie playback device was also configured at 48 kHz.

I changed the Windows shared-mode format to:

24 bit / 44.1 kHz

so that Windows Audio, both Cubase projects and the Mackie hardware were all using the same sample rate.

With Release Driver when Application is in Background enabled in both Cubase versions, switching between Cubase 14, Cubase 15 and Windows Audio then worked correctly.

I also tested Cubase and YouTube during playback. YouTube could continue playing through the Mackie while Cubase was active, while Cubase itself stopped when it went into the background and resumed when it regained focus.

I then carried out one additional test by disabling Release Driver when Application is in Background.

Interestingly, Cubase Pro 14 and Cubase Pro 15 continued to work perfectly when switching between them, even with the Release Driver option disabled. This suggests that, at least when both are using the same sample rate, the Mackie ASIO driver is able to handle the two Cubase instances without difficulty.

Windows Audio behaved differently. With the Release Driver option disabled, YouTube began to stutter and even play more slowly. The same behaviour subsequently occurred in Windows Media Player with both WAV and MP3 files, and it persisted even after playback in both Cubase versions had been stopped.

This suggests that there were actually two related factors in my setup:

  1. The 44.1/48 kHz sample-rate differences appear to have been the main trigger for the problems when switching between Cubase Pro 14 and Cubase Pro 15.
  2. Release Driver when Application is in Background still appears to be important when Cubase/ASIO has to coexist reliably with Windows Audio applications.

The timing of the driver handover may still have influenced whether a sample-rate change succeeded cleanly, which would explain why my MS Word workaround helped for so long. But once Cubase 14, Cubase 15, Windows Audio and the Mackie were all set to 44.1 kHz, and Release Driver was enabled, my actual workflow became reliable.

Therefore I think it is only fair to say that my original feature request for an additional delay before Cubase reacquires the ASIO driver was probably based on an incomplete diagnosis.

At this point, using a common sample rate of 44.1 kHz together with the existing Release Driver option appears to solve my practical workflow, so I no longer have sufficient evidence that an additional delay in Cubase is actually necessary.

I will continue working this way and will report back if the problem returns.

Many thanks to Alexis, Johnny_Moneto, Vinark and Steve for thinking along with me and for the suggestions. Their replies prompted me to investigate the issue further and helped me get much closer to understanding what was actually happening.

It was but unless multiple devices are using the same protocol, or software stack then what is the point?

You can run two Cubase instances at the same time: one using your main ASIO interface, and the other using the motherboard’s built‑in audio device

In the Cubase instance that uses the built‑in interface, insert the VST2WDM utility (virtual audio) on the Stereo Out or inside Control Room

Then, in the Windows Sound settings (the classic Control Panel sound dialog), you can route or “listen to” a specific input through a specific output - in this case, your main audio interface

I’m not entirely sure how reliable this setup is regarding sample rate, but this is how I run two Cubase instances simultaneously

As I explained in my latest post, Sergey, it is indeed possible to run two Cabase instances at the same time, both using the ASIO interface. I did it using Cubase Pro 15 and 14, each with a different project. With the “Release Driver” function activated, switching to the second will interrupt the first and vice versa, and with the function not activated, both keep on running, without any problem, as long as the use the same sample rate.
The advantage of running both projects in Cubase is that I can listen two separate tracks in both projects, which is very interesting for me since I’m reorchestrating a work for a totally different orchestra…