|
Running the USB-I2S interface with ASIO4All
My Foobar configuration for the 16-chip USB DDDAC makes use of the ASIO4ALL dll (http://www.asio4all.com/), since the PCM2707 USB chip doesn't come with dedicated ASIO drivers. The idea behind using ASIO is to bypass the Windows KMixer volume control which allegedly degrades the sound quality at anything but 100% volume. One thing I noticed about ASIO4All was that it had a tendency to forget that I had selected the USB DAC from the WDM device list and used the built-in cruddy laptop sound card instead. I had to disable that card in the device manager to keep ASIO4ALL focused on the sound device I actually cared about. Inside of Foobar, one of the key settings to get this to work is to choose a non-standard output data-format. 16bit padded to 32 works great, and it gives the file extra bit depth so that volume control isn't going to mess with the quality of the actual audio data. Under the output section, choose the ASIO4ALL option. The ASIO output settings are default, I think. The buffer time is not very high, so volume control happens pretty directly. Maybe 1 second delay. Giving the thread high priority makes sense on a single CPU computer. This was running on a 3.2gHz P4, so there was plenty of speed, but doing two or three other things, I occasionally got some pops in the audio. If possible, run this on a dual CPU or dual core machine and those problems should be a thing of the past. Under the DSP settings, I am currently only using the volume control. In the future I plan to use DRC here, which is another reason for a fast computer to run this app. |