Jump to content
John Vere

Why ASIO is Important

Recommended Posts

very nice work!  couple of thoughts:

1) ASIO4ALL - maybe tweak this video or add an appendix video to showing how ASIO4ALL isn't really ASIO so it's fixed in peoples minds...

2) WASAPI is "was-A.P.I." or "W.A.S.A.P.I" not "was-sappy" 🙂 like ASIO is not "ah-see-oh" 😉 

  • Like 1
  • Haha 1

Share this post


Link to post
Share on other sites

@John VereJust to clarify there is something that may have thrown off your loopback test making it look worse than it was for other driver modes.
Only ASIO allows the DAW to know the roundtrip latency by querying the driver itself. (the ASIO reported latencies setting in driver settings)
This latency offset is used to place recorded audio precisely on the timeline after you record audio. Cakewalk cannot automatically determine the adjustment value for other driver modes, however you can manually compute and enter this value yourself here by entering a manual offset. 

Also in theory there is nothing that prevents WDM (or WASAPI exclusive for that matter) from being one equivalent in performance to ASIO. The only difference being driver vendors don't put in the effort to make it work properly. On Mac OS ASIO is almost non existent because vendors just write a core audio driver. Not so on PC.

PS: WASAPI is pronounced like he spoke it. Most developers don't spell it out. Same with ASIO.

 

latency adjustment.PNG

  • Like 2
  • Thanks 1
  • Haha 1

Share this post


Link to post
Share on other sites

You didn’t get the humor when I tossed the jug of wasabi in there.  
 

Thanks for the clarification. But my point is that if you use ASIO you don’t need to mess around with the offset. That’s what I said at the end. 
I think  there people blindly using the other modes and oblivious to the timing offset function. There’s also a lot who don’t understand why you need to use direct monitoring on most systems. 

  • Like 1

Share this post


Link to post
Share on other sites

Fun fact: Back in 2000 Ron Kuper from Cakewalk had a proposal for a next generation audio driver specification for windows that was being worked on called WASABI. WASABI ultimately turned into the WDM KS spec that Microsoft released in 2000 finally allowing low latency access to audio.

WASABI = WDM Advanced Streaming And Buffering Interface. 

I still have the archived messages from the mailing list! Its interesting that Microsoft called theirs WASAPI. Maybe someone there remembered the thread. We also had a heavily discussed plugin spec called GMPI (generalized music plugin interface). Its too bad it didn't get adopted since it was deeper than VST.

  • Like 3
  • Haha 1

Share this post


Link to post
Share on other sites
3 hours ago, Glenn Stanton said:

very nice work!  couple of thoughts:

1) ASIO4ALL - maybe tweak this video or add an appendix video to showing how ASIO4ALL isn't really ASIO so it's fixed in peoples minds...

2) WASAPI is "was-A.P.I." or "W.A.S.A.P.I" not "was-sappy" 🙂 like ASIO is not "ah-see-oh" 😉 

I actually tried to test asio4all and had set everything up. But on the 2 computers I used ( no way it was going on my DAW ). I could not get an input from my on board. I tried everything and gave up because why should I bother. I don’t see the point in it anymore as my testing shows WASAPI exclusive will be just fine without having the invasive stuff that comes with asio4all.
Another one I tried was this viocemeeter app. It was also invasive. It also did nothing my on board doesn’t already do.  There was also a huge noise floor with it. So that’s not on my list of on board options. 
I’m thinking of making a tutorial on optimized on board sound for recording. I actually have a new respect for it’s limited but free uses. 

  • Like 1
  • Great Idea 1

Share this post


Link to post
Share on other sites

i did some testing on my "away" system - laptop, Q802USB (16bit 48K), and using ASIO4ALL (only ASIO for this older device), MME, WASAPI Exclusive/ Shared, and WDM/KS. not surprising that the MME and ASIO4ALL are only about 32 samples apart (same as the ASIO control panel latency settings of 32 samples). on my system the WDM was closest with WASAPI (either mode) showing the worst.

image.thumb.png.2f593c40980300989837583e547dc36d.png

note - PDC was engaged (no plugins anywhere), ASIO reported 1568 samples. RTL reported 1968 with the loopback test on ASIO, 2231 for Windows Sound Exclusive, 7000+ for Direct Sound and Windows Sound Shared.

  • Like 1

Share this post


Link to post
Share on other sites
2 hours ago, paulo said:

My set up works better in WDM mode.

I used WDM mode with my two DS2416 cards for nearly 20 years. It worked perfectly.... actually it still does work perfectly on my Win 7 32 bit boot.

The downside was plugin latency (esp. VSTi's), but then with dynamics/eq on every channel, plus 4 fx processors, I hardly used plugins at all in those days.

Share this post


Link to post
Share on other sites

@Glenn Stanton

Thanks for testing ASIO4ALL 

This verified the 2 possibilities. Either it would behave like ASIO and be right on time or it would behave like WDM and be late. 
So as reported by others is that Asio4all is really just WDM in a wrapper. 
Looking at your results they seem worse than what I got using my Realtek sound card without going through asio4all   
is it you RTL is less with Asio4all? The timing offset is one thing. But RTL is another. Not that I think you could ever get it low enough to be used with on board sound. 

Share this post


Link to post
Share on other sites

yes, the loopback testing with RTL showed up as longer (1968) than the reported amount to CbB (1568) by ASIO4ALL. i noticed that the ASIO4ALL and MME were pretty close in terms latency, only off by the 32 samples shown in the ASIO4ALL control panel.

image.png.4bd0071fa4a53d69aa19cb103d137be9.png

image.png.69749a5b951fdd15f60a813816e3bf7b.png

image.png.b4ded9996e01ef2a9106da2611a80692.png

image.png.501f27a2a667d6e9fec42ace3ca9c0b5.png

Share this post


Link to post
Share on other sites

@Noel Borthwick RTL for the WASAPI (Exclusive) was 2384. manual offsets didn't change the offsets in the recordings. if i changed it via the slider, then there was a small change - see pics.

image.png.24e4c4b8f1ddc65b46228f4ac6ff4520.png

it's interesting that the RTL see 480 samples but the driver appears to be set using the previous 512 samples of the ASIO driver. when trying this using the RTL 512 sample setting it glitches out saying too short, increase samples, but going back to 480 then works fine... may be a bug there...

Clipboard03.jpg.ba6b6cf6646db3e99e559244d91c0d4a.jpg

no difference setting the manual offset

move slider (bottom track):

Clipboard05.jpg.2bf3de63822e3e280e04971fc1476f1e.jpgClipboard04.jpg.76fcfa0c654910aa089a3c98d4e2c31c.jpg

Edited by Glenn Stanton

Share this post


Link to post
Share on other sites
15 hours ago, Glenn Stanton said:

it's interesting that the RTL see 480 samples but the driver appears to be set using the previous 512 samples of the ASIO driver. when trying this using the RTL 512 sample setting it glitches out saying too short, increase samples, but going back to 480 then works fine... may be a bug there...

I don’t follow. Which ASIO driver are you referring to? You are using two different USB audio devices in your test so there couldn’t have been an ASIO driver.

Share this post


Link to post
Share on other sites

hey @Noel Borthwick here's the exact testing setup. note i'm using the laptop rig shown in my sig and profile.

the device is a Behringer Q802USB mixer - limited to 16-bit and running at 48Khz. the only changes are the drivers selected:

ASIO4ALL (there is no specific ASIO driver for this device)
WASAPI Exclusive (WASAPI E)
WASAPI Shared (WASAPI S)
MME (32-bit)
WDM/KS

the "defaults" provided by each selection (ASIO = 512 samples, WASAPI 480, etc) all roughly 10-12ms
loopback USB Codec (the default clever name...) Ctrl Out Left -> Ch4 Left In

note: the second ASIO is the MAGIX Low Latency (ha ha) driver which is the (same as the?) ASIO4ALL driver under another name, and i chose not to use that one since in testing earlier it was identical to the ASIO4ALL results.

as my previous note, when i select the 512 samples in the RTL under the Windows Audio Exclusive it glitches, but works fine on the 480 - hence my suggestion there is a bug in the RTL (still a beta product...)

CbB does not glitch until i set the slider (on any of the drivers) to 32 or less samples 🙂 (that's good and it's working well). however, there is definitely some delay compensation need with this setup.

i'll be home in a week or two and i'll try to get my home rig up and running enough to test (although i'm in the porocess of moving so it may take longer). the home rig is the UMC1820 with ASIO drivers (and generally has always worked as expected).

 

Share this post


Link to post
Share on other sites

Realtek does offer ASIO drivers for their motherboard audio devices.  https://www.realtek.com/en/component/zoo/advanced-search/433?Itemid=276

You do need to know which device is on your motherboard and if your device supports AC97 (old) or HD audio in order to download and install the correct driver.

I know Dell will provide the correct Realtek driver for the devices used on Dell motherboards through their support website. I assume other computer manufacturers do also.

Share this post


Link to post
Share on other sites
5 hours ago, Jim Fogle said:

Realtek does offer ASIO drivers for their motherboard audio devices.  https://www.realtek.com/en/component/zoo/advanced-search/433?Itemid=276

You do need to know which device is on your motherboard and if your device supports AC97 (old) or HD audio in order to download and install the correct driver.

I know Dell will provide the correct Realtek driver for the devices used on Dell motherboards through their support website. I assume other computer manufacturers do also.

FWIW I really wouldn't recommend the Realtek ASIO drivers (unless they've been updated/overhauled recently).

I had no end of problems with sluggish UI and hangs using it on one of my laptops (it's a pretty high end i9 laptop too). Switching to WASAPI solved all my issues.

  • Like 1
  • Thanks 1

Share this post


Link to post
Share on other sites

So what I see in  @Glenn Stanton tests is on board audio outperforming ASIO4all. Is this correct.  Glen do you get a warning when you run the RTL utility with asio4all. With my on board it warns me the information might be out by 50% because of the driver reporting incorrectly to the utility. 

I'm seeing at the same buffer setting

asio4all is 32 ms RTL 

On board is 10 ms RTL  

So one again? why use asio4all? I don't see any benefits at all??   

Won't your mixer work with WASAPI?  

In the loopback WDM was the best results. 

I'm getting 10 to 12 ms  late  offset with my on board audio on 3 different systems in WASAPI exclusive mode. That is not great but seems way better than the same setting when using any of my audio interfaces where the very lowest was around 58 ms.   

I will have to test the offset setting and see if I can get them to line up.  

This is getting interesting.  

I would still like to know if @paulo   has tried a loopback to correct his  offset and if it is stable.   

Edited by John Vere

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×
×
  • Create New...