Finally a solution for ASIO output from within Spotify
Jan 12, 2019 at 4:51 PM Thread Starter Post #1 of 16

Gorling

New Head-Fier
Joined
Jan 24, 2012
Posts
1
Likes
0
In my experience the Windows software mixer adds a distinct and very audible coloration of sound that to my knowledge can only be bypassed by using either ASIO or WASAPI. For the longest time there has been numeral request on the official Spotify forums for implementation of either ASIO or WASAPI as a way to bypass the Windows software mixer but status has been "Not right now" since forever (2012).

For many years the unofficial 3rd party client Fidelify sorted this issue by allowing either WASAPI or ASIO using libspotify. However, official support for libspotify has been depreciated since 2015 and sometime during this fall (2018) Fidelify finally stopped working. For the past few months I have been on the lookout for alternatives to Fidelify without much success. I've spotted a few threads on Reddit where people have been discribing a problem similar to mine. Today I finally found a solution and I wanted to share. Credits to this post (Swedish) from back in 2016.

Presenting VB-Audio Hi-Fi Cable & ASIO-Bridge:
https://www.vb-audio.com/Cable/index.htm#DownloadASIOBridge

* HIFI-CABLE driver is a virtual audio device appearing in the audio device list
* With ASIO-Bridge Application, HI-FI CABLE's Input can be routed to any ASIO Device Output
* For soundcards without native ASIO support (most soundcards) you also need ASIO4ALL

Procedure for Windows 7 (because that's what I use)
1. Download and install ASIO4ALL
2. Download and install HIFI-CABLE & ASIO-Bridge. Reboot your computer.
3. Open Sound settings in Windows Control Panel. You should now have a new device named Hi-Fi Cable Input visible. Select it as default device
4. Open Spotify and play any track like you would normally
5. If you don't get any sound find ASIO4ALL in the bottom right of the task bar. Icon should look like a Play or Pause-button. Click to open ASIO4ALL settings. Make sure your soundcard is enabled in the list (click the button to make it blue)

Please leave feedback if you experience any gains or losses in sound quality from this method.

Enjoy! / Anders
 
Feb 4, 2019 at 12:57 PM Post #2 of 16
I second this software/audio interface as an amazing tool to improve all sound quality from your Windows machine.

I believe there are some additional things you may or may not want to do to route all Windows sound through the ASIO Bridge software.
1. Set the Hi-Fi Cable Input Properties - Advanced Tab to 16bit, 44100 Hz (or whatever your source file format is)
2. Set the Hi-Fi Cable Output Properties - Advanced Tab to 16bit, 44100 Hz (or whatever your source file format is)
3. Set your DAC/Soundcard Properties - Advanced Tab to 16bit, 44100 Hz (or whatever your source file format is)
4. Set the Hi-Fi Cable Output Properties - Listen Tab to Listen to this device checked, Playback through this device: (Your DAC or soundcard selected)
5. Open VB-Audio ASIO Bridge, select ASIO Device: ASIO for (Your DAC or soundcard), make sure you click the button so it says ASIO ON.
NOTE: If it says (stopped) it is not working and you may need to toggle the ASIO button or restart your machine.
NOTE 2: You can experiment with the latency, but I found the default 8192 smp to work fine.

Let me know if you have any questions or additions.
 
Feb 7, 2019 at 9:26 AM Post #3 of 16
I used HiFi cable and ASIO Bridge some time ago, without ASIO4ALL since the DAC has it's own ASIO driver. (and also ASIO4ALL is crap).

Now, about improving sound quality...really? I noticed no difference. I imagine something like this would have been useful a few years ago or if you have problems with your computer/drivers/software. But in a modern PC with win 10 (which also has USB Audio gen 2 drivers since the creators update, if you need it) without some issues, i don't think this will make any difference. I am also pretty sure it does not bypass windows mixer completely like ASIO or wasapi in foobar. And even if it did, there should not be a sound quality improvement, foobar with ASIO included. Audio recording is a completely different subject.

100% it was working, windows volume slider was disabled and ASIO was displayed an ON in the DAC software (dacmagic 100). No difference in sound whatsoever.

But maybe i did something wrong, so please let me know if there's a way to test the difference beyond a purely subjective listening test. (also, HiFi cable does not sound better than other VB cables, right? :p )
 
Feb 13, 2019 at 11:10 AM Post #4 of 16
I think my thought was to get all sounds to play bitperfect through ASIO with a low latency on my machine. It does not necessarily change how it sounds, but makes a better path for the sound with less garbage added as I feel happens with Direct Sound.

I have since stopped using ASIO Bridge for a better option with a noticeable improvement to sound for all of my headphones I use: HeSuVi. It has equalizer profiles for over a thousand popular headphones to make them sound more neutral. This improves the sound significantly allowing you to hear more bass, mids, and highs. I can't take credit for this find, but I want to lead people to the next level in audio nirvana by mentioning it here in case you weren't already aware. This is where I found about this fantastic software: https://www.reddit.com/r/headphones/comments/92b08s/eq_settings_for_700_headphones/

I hope it helps everyone that uses it to hear the best from every headphone they own. I actually pulled out an old pair of Klipsch Image S4i I had and applied the eq setting on it to transform it into a very enjoyable IEM to use. I still prefer my T2 Pro when on the go of course. One additional feature of this software is the ability to export any of the eq profiles to an impulse response file so you can load it to your phone and use as a convolver with Viper4Android. Now all your headphones can sound great on your phone! I couldn't be happier right now.
 
Aug 3, 2019 at 6:13 PM Post #5 of 16
Here's a method that's working fine. I'm using a MOTU828MK2 FW interface, although you can likely use this method with any decent pro audio interface. This 828 is a 14 year old interface, and can be purchased very cheaply, I looked at previously sold 828z on Ebay and they unbelievably can be had for $50 to $100. Not to mention the headphone amplifier on the interface is likely excellent and your mix from spotify can be fed to the phones jack. It's dificult to get the MOTU setup in Windows 10, and as far as I can tell from exhaustive searching, I may be one of the few who have solved the installation, message me for fix if you like. The 828MK2 is still an excellent interface. The method is windows output from MOTU main out to any of the many inputs and using Reaper to route everything. I have 2 stereo channels in Reaper, one for the speakers the other for a KRK sub. It's working fine and the sound is excellent. Here is a video... https://www.reddit.com/r/spotify/co...put_method/?utm_source=share&utm_medium=web2x

Here is a review of the MOTU828MK2
https://www.soundonsound.com/reviews/motu-828-mkii
 
Last edited:
Aug 4, 2019 at 1:57 AM Post #6 of 16
... The method is windows output from MOTU main out to any of the many inputs and using Reaper to route everything. I have 2 stereo channels in Reaper, one for the speakers the other for a KRK sub. It's working fine and the sound is excellent. ...

If there's no other mean for Reaper in your playback chain than routing (meaning effect other than EQ processing), you could alternatively do routings and EQ by switching to Voicemeeter BANANA which can be set run automatically in startup and records as well.
 
Sep 28, 2019 at 10:05 PM Post #7 of 16
Thanks a bunch for this, it's a real gem. It also works on Amazon Music, which just released Lossless audio for 12.99 a month (prime members). Windows 10
 
Sep 28, 2019 at 10:27 PM Post #9 of 16
what is "Audio Service Mixer" it sounds like you know another way to get bit perfect out of amazon music that I don't. Do tell.

Edit: I think your saying im not bypassing the windows mixer either way. Re-reading your post. System wide volume does not work when ran though Asio brdige. I assumed this meant I was bypassing the mixer.

So frusterating, just trying to bypass the mixer with spotify and or amazon music. Don't know why it's got to be so hard.
 
Last edited:
Sep 29, 2019 at 2:38 AM Post #10 of 16
what is "Audio Service Mixer" it sounds like you know another way to get bit perfect out of amazon music that I don't. Do tell.

Edit: I think your saying im not bypassing the windows mixer either way. Re-reading your post. System wide volume does not work when ran though Asio brdige. I assumed this meant I was bypassing the mixer.

So frusterating, just trying to bypass the mixer with spotify and or amazon music. Don't know why it's got to be so hard.
Your sample rate on the receiving end will always match sample rate set in control panel, i.e. matching shared mode resampler. Sorry, there is no way around it. JRiver has WDM driver that can bridge to other driver, VoiceMeeter has the same thing, but they all take control of the audio stream AFTER mixer.
Check the diagram. You need exclusive mode to bypass that.
DiagramWinAudio.jpg


Hope amazon will implement it after all.
 
Sep 29, 2019 at 11:59 AM Post #11 of 16
Thanks for the explanation, Im surprised there is not more open discussion on this topic. Im also really surprised that companies pushing lossless audio to an enthusiast market don't implement such a simple thing as exlcusive wasapi. Spotify and Amazon music, and half a dozen others. It's strange that they don't focus on quality and features such as high end EQ capabilities. I finally got sick of the poor level of EQ available in software and bought the ADI-2. I do understand there are some decent paid options now like Jriver and others.

Were does ASIO fit into all this mess? I swear i've heard "exclusive" ASIO also play back windows sounds and other audio. Im going to test it again, I think with my ADI-2, which has it's own ASIO software, you can use Foobar in ASIO mode and still hear system sounds and other apps on top of the music. I was also frusterated with Tidal and this setup as I could only get that to function in "Shared WASAPI" no matter how i tried to force it. This might be a limitation/bug with the particular combo of Tidal + RME ADI-2 Dac. I know there are issues with automatic sample rate switching on this combo. The developer had a long forum post discussing about how they are doing it the right way etc. (RME)

Sure would be nice if there was an option in windows that would "Force" exclusive mode on certain software. Or if MS would choose a more transparent way of mixing at higher performance cost. That was toggle.

I can definitely hear the effects of the mixer, it's more obvious to me than 320KBPS vs Lossless.

Are there any Paid software solutions that can snatch audio stream pre-windows****ed and output it via exclusive wasapi?
 
Last edited:
Sep 29, 2019 at 12:07 PM Post #12 of 16
ASIO was relevant in pre WASAPI days at least for audio listening, mixing could be different as might require super low latency it can provide. Or so is my understanding, still I religiously use ASIO driver when available. :)
 
Sep 29, 2019 at 12:25 PM Post #13 of 16
So ASIO does not go around or escape the graph you posted? And what is the mechanism that allows ASIO to bypass the mixer and still allow system sounds and multiple streams/apps? Is it really still somehow going though the windows mixer? I've noticed this non-wasapi exclusive like behavior anytime ASIO is used. Typically the System level volume has no effect on the ASIO stream, however it does effect everything else. This is the behavior i've noticed:

VB-ASIO Bridge Software (Set 1)
ASIO Stream > Foobar > music playing
Chrome You Tube Video playing >

System volume has no effect on ASIO stream (Mute does kill everything)
System volume controls You tube video
App specific volume for Foobar in the windows mixer control panel DOES effect ASIO stream.
Sample rate matches whatever is set in ASIO bridge software, resampling occurs somewhere, but where? windows driver or hardware driver, or at the hardware level? Changing the sample rate in ASIO bridge software automatically changes the sample rate in the ASIO driver. (MadiFace USB in the case of RME)

Foobar With Asio drivers for dac, no asio bridge software (Set 2)
System volume has no effect on ASIO Stream
System Volume does effect everything else
Multiple streams are supported
System volume Mute has no effect on asio stream, mutes everything else
App specific volume in windows mixer has no effect on ASIO stream
Foobar automatically matches sample rate and it's not resampled (checked at the hardware level)

I believe the second set is the way things are supposed to work. Getting this functionality in streaming software is way to frustrating and often not possible. Even Tidal does not function properly in my setup, the only thing that does is Qubuz via ASIO.
 
Last edited:
Sep 29, 2019 at 12:50 PM Post #14 of 16
So ASIO does not go around or escape the graph you posted? And what is the mechanism that allows ASIO to bypass the mixer and still allow system sounds and multiple streams/apps? Is it really still somehow going though the windows mixer? I've noticed this non-wasapi exclusive like behavior anytime ASIO is used. Typically the System level volume has no effect on the ASIO stream, however it does effect everything else. This is the behavior i've noticed:

VB-ASIO Bridge Software (Set 1)
ASIO Stream > Foobar > music playing
Chrome You Tube Video playing >

System volume has no effect on ASIO stream (Mute does kill everything)
System volume controls You tube video
App specific volume for Foobar in the windows mixer control panel DOES effect ASIO stream.
Sample rate matches whatever is set in ASIO bridge software, resampling occurs somewhere, but where? windows driver or hardware driver, or at the hardware level? Changing the sample rate in ASIO bridge software automatically changes the sample rate in the ASIO driver. (MadiFace USB in the case of RME)

Foobar With Asio drivers for dac, no asio bridge software (Set 2)
System volume has no effect on ASIO Stream
System Volume does effect everything else
Multiple streams are supported
System volume Mute has no effect on asio stream, mutes everything else
App specific volume in windows mixer has no effect on ASIO stream
Foobar automatically matches sample rate and it's not resampled (checked at the hardware level)

I believe the second set is the way things are supposed to work. Getting this functionality in streaming software is way to frustrating and often not possible. Even Tidal does not function properly in my setup, the only thing that does is Qubuz via ASIO.
It does, it's just another audio driver, you need to be in exclusive mode to hand over processing to it directly.
 
Sep 29, 2019 at 12:53 PM Post #15 of 16
So what im hearing is basically Use Qubuz or Foobar if you want to bypass the mixer cause there aint no other way. I think one of the paid software media player solutions has a mechanism to pull spotify at least

I did a little bit more experimenting for those that my find it useful

Foobar Music Stream was used.
3 Output methods were used in foobar

ASIO > Native ADI-2 driver
DS > Audio Bridge > Native asio driver
WASAPI > Audio Bridge > native asio driver

in the two examples above ASIO > Native adi-2 driver, and WASAPI > Audio Bridge > Native driver
the expected bit-perfect, automatic sample rate detection, and no system wide mute or volume functionality was observed.

In the example of DS > Audio Bridge > Native asio driver, a confusing mixture of things happens.
Everything is resampled to whatever sample rate is set in driver
System wide volume does not function, but mute does
App specific volume functions.

I believe that when you try to "Force" an app like Amazon music or Spotify, it follows the DS > Audio bridge > native driver route, as you said in your first response. This does not produce the desired result.

Looks like you already got all this figured out Andrew, just putting this here for anyone else wondering what's going on.

The only Mechanism that is left that is eluding my understanding is that of ASIO vs Wasapi Exclusive. In this regard we seem to get all of the things we want either way. However, ASIO mode allows multiple streams, were wasapi exclusive does not. This is confusing if you expect exclusive mode as a requirement for bit-perfect and continue to hear system sounds when ASIO is used. The graph above does not provide an explanation for this mode of operation. Im assuming, it's simply multiple streams, one that is direct, and one that is mixed.
 
Last edited:

Users who are viewing this thread

Back
Top