dechamps / FlexASIO

A flexible universal ASIO driver that uses the PortAudio sound I/O library. Supports WASAPI (shared and exclusive), KS, DirectSound and MME.
Other
1.29k stars 70 forks source link

Adding UAD virtual outputs #196

Closed thrakotool closed 11 months ago

thrakotool commented 11 months ago

I'm using UAD Arrow with FlexASIO and VoiceMeeter Potato. The card has two physical outputs, and two virtual output, which theoretically allows me to use a VST EQ on the monitors while keeping the headphones dry. This routing works in Cubase with the original UAD Asio drivers. However, FlexASIO only sees the channels 1-2 (physical), hence Potato cannot do similar routing system-wide.

As a proof of concept, I also installed Jack, and Jack enables outputs 1-2 (physical) and 3-4 (virtual) in Potato. But I would very much prefer to keep using FlexASIO, since in my experience it's more robust and neat.

My toml looks like this:

backend = "Windows WASAPI"
[input]
device = "Speakers (Universal Audio Thunderbolt WDM) [Loopback]" 
wasapiExclusiveMode = false
wasapiAutoConvert = true
[output]
device = "Speakers (Universal Audio Thunderbolt WDM)"
wasapiExclusiveMode = false
wasapiAutoConvert = true

Please let me know if there's already a way to use UAD virtual outs, or consider this as a possible future enhancement.

thrakotool commented 11 months ago

Apparently UAD Asio is not exclusive, and FlexASIO is not required for routing the card using Asio in Cubase and Potato simultaneously. It'd still be an interesting challenge to get FlexASIO working with virtual outputs, but definitely not a necessity.

dechamps commented 11 months ago

FlexASIO only works with Windows audio endpoint devices. Does Windows show your "virtual outputs" as an audio device that you can select in the Windows sound settings?