Jump to content
IGNORED

Bit Perfect Windows Audio for Tidal etc


vladimirb0b
 Share

Recommended Posts

OK I haven't tested this well but you can download Virtual Audio Cable from here Virtual Audio Cable Home Page

 

Note that this *isn't* the VB-Audio one.

 

Open up the VAC Kernel Streaming config tool and set Wave in to Virtual Cable 1 and out to your soundcard which should show up. Mine is an E-MU 0404 USB so it says "E-MU Audio"

 

Change your output in windows sound mixer to Line 1/Virtual Audio Cable.

 

Hit "start" in the Virtual Audio Cable config and listen to music.

Link to comment
Share on other sites

It dawned on me that using the Virtual Audio Cable as a playback device might mean that the audio goes through the Windows (using 10 at the moment) audio stack. Which is not a "good thing" Any ideas? I have emailed the author of the Virtual Audio Cable and will report back.

Link to comment
Share on other sites

I am streaming Pandora at the moment, using the Audio Repeater (Kernel Streaming) of Virtual Audio Cable. I have Line 1 - Virtual Audio Cable as the default Windows 10 sound device. When I go to change the volume in the taskbar, nothing changes. I think it is actually using Kernel Streaming!

Link to comment
Share on other sites

So, normally when you play audio from a browser on Windows it goes through the Windows audio stack (DirectSound or MME, not sure which) and it does Bad Things to your audio. I have checked it out on loopback and it is not good at all.

 

This allows you to bypass Windows audio so you can have bit perfect playback from a browser (or app that doesn't produce bit perfect audio) running Pandora, Spotify, Tidal, or whatever music app you choose. You can see the signal graph above, which is from Foobar using DirectSound to Virtual Audio Cable, and you can see none of the nasties that Windows Audio gives.

Link to comment
Share on other sites

Here is the 44.1kHz digital only loopback. To get results you might have to turn exclusive mode off and make sure all devices are at the correct sampling rate and bit depth.44k1 loopback.jpg

 

32 bit gives lower noise floor (-200dB)and some harmonics and noise around -160dB and a bit narrower peak

Link to comment
Share on other sites

  • 3 weeks later...

I got the idea to get things yet more complicated and to reach yet more! :)

 

I found a way to get DSD128 output from any Windows application (DSD128 is max. DSD sample rate my DAC is capable of). I reached it by passing default output audio device to foo_dsd_asio ASIO proxy.

 

Used SW:

- Virtual Audio Cable as vladimirb0b suggested in OP

- VB Audio HiFi cable and ASIO bridge from VB-Audio Virtual Apps

- foo_dsd_asio proxy https://sourceforge.net/projects/sacddecoder/files/foo_dsd_asio/

 

I configured things as on the picture:

VirtualCables_ASIOProxy.png

[default output audio device] <Virtual Cable 1> <VB Audio HiFi Cable> <ASIO Bridge> [foo_dsd_asio]

 

I know, it seems crazy complicated but ... Now I am playing video with 44.1k audio in Windows Media Player, my DAC control panel app shows 352800 (that's DoP sample rate corresponding to DSD128) and my DAC display shows DSD128.

 

It means it is possible to pass bitperfect Windows audio from any Windows application to any ASIO device, including special ASIO proxies. I used foo_dsd_asio from Maxim Anisiutkin, but also JRiver Media Center ASIO device could be used. These ASIO proxies allow to perform some digital signal processing before audio is sent to DAC.

Link to comment
Share on other sites

Any reason not to just use VB Audio Hifi Cable from Windows Mixer out to foo_dsd_asio or Asio4All for that matter?

 

Since I posted I tried VB Audio Hifi Cable and got it to act so the Windows mixer audio volume control has no effect, leading me to believe that VB Aufio Hifi Cable bypasses the Windows audio stack. Can you see if you still get DSD without Virtual Audio Cable?

Link to comment
Share on other sites

Any reason not to just use VB Audio Hifi Cable from Windows Mixer out to foo_dsd_asio or Asio4All for that matter?

 

Since I posted I tried VB Audio Hifi Cable and got it to act so the Windows mixer audio volume control has no effect, leading me to believe that VB Aufio Hifi Cable bypasses the Windows audio stack. Can you see if you still get DSD without Virtual Audio Cable?

 

Yes I tried to set VB HiFi Cable as default output device and it functions with ASIO Bridge. You are right that device volume setting has no influence. But I found some differences against adding Virtual Audio Cable (Kernel Streaming) at front.

 

1) When Virtual Audio Cable was not used and VB Hifi Cable was set as default audio device, I found that sample rate setting in device properties Advanced tab (you call it Windows Mixer) has influence. When I set multiples of 44.1k, DSD128 is shown on my DAC and when I set multiples of 48k, PCM sample rate is shown - no PCM to DSD conversion is done by foo_dsd_asio ASIO proxy. It seems that foo_dsd_asio is capable of doing PCM to DSD conversion only for multiples of 44.1k. I had also some dropouts on higher sample rate settings. So it is clear the sound went through Windows Mixer - despite the fact that volume setting has no effect.

 

2) When Virtual Audio Cable (KS) appeared at front of the chain as default audio device I observed better sound (better trebles, more air ...). I also found that setting sample rate in device properties had no effect on sound and I always got DSD128 no matter which sample rate was set. So I mean Windows mixer was completely bypassed from the path.

Link to comment
Share on other sites

Doubt it would make a difference, but did you try different bit depth in Advanced tab without Virtual Audio Cable?

 

And are you using Exclusive mode or not? I would ask you to try everything on Exclusive mode and make sure all volumes are at 100 under Levels.

 

Your comments are very helpful

Link to comment
Share on other sites

Also, my USB DAC has options for "Supported formats" and I would pick them all and let applications take exclusive control. My DAC doesn't go below 88.2kHz in "supported formats" but in practice it does... so there is sometimes weirdness there.

 

Sorry if you have already done this.

 

Also: I am getting some strange behavior with ASIO Bridge putting out different sample rate than go in. Not sure how to fix it.

Link to comment
Share on other sites

Yes, exclusive (both checboxes marked) and 100% - in both cases 1) and 2).

 

I got the same behavior without Virtual Audio Cable no matter on 16 or 24bit depth: DSD128 on multiples of 44.1k and the exact PCM rate for multiples of 48k.

Link to comment
Share on other sites

Also, my USB DAC has options for "Supported formats" and I would pick them all and let applications take exclusive control. My DAC doesn't go below 88.2kHz in "supported formats" but in practice it does... so there is sometimes weirdness there.

 

Sorry if you have already done this.

 

Also: I am getting some strange behavior with ASIO Bridge putting out different sample rate than go in. Not sure how to fix it.

 

I have set exclusive access for my DAC and it is so for all supported sample rates. The advanced tab doesn't show more than 192k despite that my DAC is 384k capable. But it has no influence on using ASIO or WASAPI or Kernel streaming - I can use all sample rate my DAC supports. I am avoiding Windows Mixer - it distorts sound.

Link to comment
Share on other sites

I am getting this (input any rate and output 44100Hz 16 bit). Not sure how to fix

 

The same in my case - always 44.1k and 16bit is shown as output - no matter on input settings.

Link to comment
Share on other sites

OK. Had some weirdness (VAC says not enough resources) but after reboot it works. The "output" sample rate is correct when enabling "VB-Audio Hi-Fi cable" in ASIO4ALL. I guess the wrong sampling rate is not to be worried about? The manual says explicitly that there is no SRC in the software, so if it makes noise on pitch I think it is just passing whatever sample rate you input to the ASIO software.

Link to comment
Share on other sites

I guess the wrong sampling rate is not to be worried about?

 

I think so. When input shows for example 96k and my DAC shows it too, then it seems to be impossible that ASIO bridge output could be 44.1k. So I am ignoring that output info.

Link to comment
Share on other sites

I think we misunderstood the meaning of ASIO bridge output.

 

See the pictuire

 

VBAudioASIOBridgeConnectionDiagram.jpg

 

Output means direction from ASIO device to application. We use no ADC or other device which would send digital audio data from device to computer. So we are not using this half of ASIO Bridge and therefore it always displays the same predefined value.

 

Only input part of ASIO bridge is relevant for us, when we are using DAC. Input means from aplication to ASIO device.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share



×
×
  • Create New...