ASIO/WASAPI Question
Aug 25, 2018 at 8:59 AM Thread Starter Post #1 of 15

RadioHamster

New Head-Fier
Joined
Aug 18, 2018
Posts
28
Likes
3
Location
Canada
Hello,

I'm getting into bit-perfect audio after recently purchasing Schiit stack. I've done some research to figure out how to set up ASIO in foobar, and I'm enjoying it right now.

But the question is can I somehow make bit-perfect audio work for other applications (youtube, games, etc.) ? I'm not a 100% sure, but I'm getting the impression that some soundcards that support ASIO/WASAPI can output bit-perfect audio regardless of the application. Is this true, and is there another way?

Thank you :)
 
Aug 25, 2018 at 12:18 PM Post #2 of 15
Try using WASAPI (instead of ASIO) with Foobar.
I'm guessing(?) ASIO/WASAPI would not be a feature that would come with as sound card, as I would believe ASIO/WASAPI (if it came with a sound card) would bypass the sound card features, defeating the purpose of buying the sound card in the first place.
 
Aug 25, 2018 at 12:49 PM Post #3 of 15
If you're using Foobar, its WASAPI option does not output bit-perfect to the DAC as all of your samples will be converted to the bit depth that you specify in Foobar. The sample rate is of course outputted to its native rate without issues. I set mine to 16 bit since my DAC is only 16 bits so even if I play 24 bit files, it will downsampled to 16 bits, but the sample rate is native to the file.

If you want all of your audio to be ASIO enabled, use a virtual sound card program like VB Audio (that's what I use BTW). Its limitations is that the audio still goes to the Windows mixer if you're not using a program with WASAPI support.
Untitled.jpg
 
Aug 25, 2018 at 5:29 PM Post #4 of 15
I see, I was hoping to get that extra bit of accuracy and latency reduction on my daily apps too, but I guess it would be limited to those few bit-perfect audio supporting apps.

Try using WASAPI (instead of ASIO) with Foobar.
I read a comment by a Schiit guy ASIO has the least latency and it is industry standard. Is there any reason to use WASAPI over ASIO?

I'm guessing(?) ASIO/WASAPI would not be a feature that would come with as sound card, as I would believe ASIO/WASAPI (if it came with a sound card) would bypass the sound card features, defeating the purpose of buying the sound card in the first place.
I'm not too sure because I don't have a dedicated sound card, but someone said he uses his integrated sound card for general stuff and his dedicated sound card with ASIO driver for bit-perfect audio. I don't know which ones are the most used sound card features (maybe EQ and virtual surround?), but I personally don't see myself using those for now, and I'd find being able to have less latency from WASAPI/ASIO useful for anything, and especially for gaming.

If you're using Foobar, its WASAPI option does not output bit-perfect to the DAC as all of your samples will be converted to the bit depth that you specify in Foobar. The sample rate is of course outputted to its native rate without issues. I set mine to 16 bit since my DAC is only 16 bits so even if I play 24 bit files, it will downsampled to 16 bits, but the sample rate is native to the file.
Ah, I see. I was wondering why bit settings were there if it's bit-perfect, but I guess it isn't exactly.

If you want all of your audio to be ASIO enabled, use a virtual sound card program like VB Audio (that's what I use BTW). Its limitations is that the audio still goes to the Windows mixer if you're not using a program with WASAPI support.
I wanted to use ASIO/WASAPI even for programs that don't support them, but I guess it's either impossible or not easy.

edit: took out attachments from quotes
 
Last edited:
Aug 25, 2018 at 6:10 PM Post #5 of 15
You can still use it IMO. I find that there’s still no latency or delay issues when stacking Windows mixer on top of ASIO during video playback from YouTube or local video files. Even playing CS:GO doesn’t have audio sync issues. Recording music is of course different and would require exclusive ASIO mode for lowest latency
 
Aug 25, 2018 at 7:53 PM Post #6 of 15
You can still use it IMO. I find that there’s still no latency or delay issues when stacking Windows mixer on top of ASIO during video playback from YouTube or local video files. Even playing CS:GO doesn’t have audio sync issues. Recording music is of course different and would require exclusive ASIO mode for lowest latency
You're talking about DirectSound when you say "windows mixer" right? If it goes through windows mixer, wouldn't it output the bit depth/sampling rate specified in the mixer settings? I read an article somewhere saying ASIO brings down CS:GO's audio latency from 30ms to 10ms. Maybe it still reduces latency regardless of bit-perfect audio?
 
Aug 26, 2018 at 3:25 AM Post #7 of 15
Windows mixer is just part of directsound. The latter part of directsound is the delivery method after it the sound mix is completed where it uses the UAA protocol instead of IOCtl.

With ASIO bridge on non-WASAPI supported programs, the Windows mixer is still emulated, but the delivery is based on IOCtl used by ASIO. In terms of latency, a “full” ASIO support without using ASIO bridge would give the lowest latency but I haven’t seen a game that has full support to it
 
Last edited:
Aug 26, 2018 at 6:42 AM Post #8 of 15
Windows mixer is just part of directsound. The latter part of directsound is the delivery method after it the sound mix is completed where it uses the UAA protocol instead of IOCtl.

With ASIO bridge on non-WASAPI supported programs, the Windows mixer is still emulated, but the delivery is based on IOCtl used by ASIO. In terms of latency, a “full” ASIO support without using ASIO bridge would give the lowest latency but I haven’t seen a game that has full support to it
That's interesting. I thought the latency reduction was mostly from avoiding re-sampling and down/up-sizing bits, but perhaps their own kernel function implementation through IOCtl also contributes a lot as you say, since Windows is known for its inefficiencies. I'll give VB audio a try, and thanks for your insight!

edit:
Actually, I've gotten a reply from Schiit that their USB driver for DAC's has embedded ASIO driver. Then do I need to use VB audio? If it already has ASIO driver, I'd assume it still goes through the windows mixer, but uses IOCtl to output sound stream. Am I wrong?

more edit:
Ah, actually I forgot the possibility of Windows forcing to fully go through DirectSound. I'll send a ticket again to Schiit for clarification
 
Last edited:
Aug 26, 2018 at 11:12 PM Post #9 of 15
As far as I know, a WASAPI driver completely bypasses Windows Direct Sound. Further, if your music player requires a resampling because of some setting you've enabled, the WASAPI driver will simply quit and the music player will be unable to play the file. I see this with Foobar all the time, so I'm not quite sure it really re-samples. Again, AFAIK, setting Foobar to 24-bit will essentially mean that nothing is re-sampled using WASAPI.

For gaming, PurpleAngel's response is what I have understood. Using WASAPI means that the entire Windows sound system will be bypassed, so that special features in your sound card will not work. That said, two-channel stereo should be superior if the sound card can utilize a WASAPI driver.
 
Aug 26, 2018 at 11:26 PM Post #10 of 15
I'm not quite sure it really re-samples. Again, AFAIK, setting Foobar to 24-bit will essentially mean that nothing is re-sampled using WASAPI.

Nothing is resampled (I'm referring to sample rate in this case), but the bit-depth will be whatever you specified in foobar2000. See my point below
Untitled.jpg
 
Aug 26, 2018 at 11:34 PM Post #11 of 15
Actually, I've gotten a reply from Schiit that their USB driver for DAC's has embedded ASIO driver. Then do I need to use VB audio? If it already has ASIO driver, I'd assume it still goes through the windows mixer, but uses IOCtl to output sound stream. Am I wrong?

You would only need VB audio if you want to have any kind of program be ASIO enabled. I just prefer using the VB audio so that I can play videos on YouTube or anywhere while playing WASAPI exclusive on foobar2000
 
Aug 28, 2018 at 3:09 PM Post #14 of 15
As far as I know, a WASAPI driver completely bypasses Windows Direct Sound. Further, if your music player requires a resampling because of some setting you've enabled, the WASAPI driver will simply quit and the music player will be unable to play the file. I see this with Foobar all the time, so I'm not quite sure it really re-samples. Again, AFAIK, setting Foobar to 24-bit will essentially mean that nothing is re-sampled using WASAPI.

For gaming, PurpleAngel's response is what I have understood. Using WASAPI means that the entire Windows sound system will be bypassed, so that special features in your sound card will not work. That said, two-channel stereo should be superior if the sound card can utilize a WASAPI driver.
I would be surprised if a sound card came with a WASAPI drive, as it would defeat the purpose of the sound card in the first place.
(but just guessing)
 
Aug 28, 2018 at 8:30 PM Post #15 of 15
I would be surprised if a sound card came with a WASAPI drive, as it would defeat the purpose of the sound card in the first place.
(but just guessing)
There's no reason you can't use WASAPI with a sound card. Although, unless the sound card's driver is written specifically for WASAPI, it's going to bypass the special features of the sound card. Anyway, you can google about using ASIO or WASAPI with sound cards. There are professional devices and mixing software designed to use WASAPI natively, apparently.
 

Users who are viewing this thread

Back
Top