Windows Audio vs. DirectSound vs. ASIO in Standalone? Did something change in the past 3 years?

I paused work on a relatively complex synth (high CPU intensity physical modeling) back in summer 2021. I have returned to that project on the same CPU/RAM/soundcard/everything now and I am finding I can’t play things back with the same efficiency.

I even still have some of the old EXE’s from previous standalone builds and they are struggling same as the new builds. I suspect this suggests a system issue but I don’t know what.

Perhaps a Windows upgrade (still on Win 10) triggered it? I remember after one upgrade in particular in ~2022 a lot of audio programs no longer worked, then these now do again after subsequent upgrades. So who knows what Microsoft is doing.

My old builds (EXE’s) only have “DirectSound” and “Windows Audio” as options. Same as my new builds. I presume this means I never installed ASIO support for standalone. I think this is what that means (or the old builds would have ASIO as option in dropdown, right?).

Current performance:

Windows Audio - Even with max latency 2048 samples it stutters and distorts and can’t keep up. Used to do just fine as I recall.

DirectSound - Can play back smoothly but adds an entire 1 second delay in addition to the latency samples (bizarre).

I don’t recall what I was using in terms of Windows/DirectSound back in 2021. I think Windows Audio. I will try adding ASIO next following these instructions:

https://forum.juce.com/t/enable-asio-solved/38493

https://forum.juce.com/t/basic-asio-setup-producing-error-cannot-open-include-file-iasiodrv-h/32888/4

I am just wondering if this might be a likely fix or if anyone would know any other reason for this.

Interestingly, my old VST versions in old Cubase 10 projects seem to playback normally as they previously did (ASIO soundcard setting in DAW). It is the standalone that is suffering. So perhaps WIndows/Directsound was working better before and now just isn’t? Thus need ASIO whereas before was managing without?

Thanks for any thoughts or ideas.

Well, I installed ASIO using the following three steps:

  1. Download ASIO SDK zip from Steinberg and save “common” folder from it in local folder on disk
  2. Turn on ASIO in Projucer settings with module settings for juce_audio_devices enabling JUCE_ASIO
  3. Click gear above file explorer in Projucer and add to “Header Search Paths” the path to the “common” folder from #1

As per:

This seems to have solved it. Using ASIO delivers good performance again. I presume something changed in how Windows was handling the “Windows Audio” (previously good, now shit) but either way ASIO still delivers.

So all good. Leaving this here for anyone else. :slight_smile:

1 Like