Home > Computer (HW and SW) > foobar Configuration for DSD (With Amanero Interface & Buffalo DAC)

foobar Configuration for DSD (With Amanero Interface & Buffalo DAC)

November 17, 2012 Leave a comment Go to comments

See updated information here: https://hifiduino.wordpress.com/2013/04/06/amanero-pcm-and-dsd-update/

(Update 11/21/12) DRIVER 1.0.56

  • Driver identification to ASUI4ALL is correct. Testing shows that there is no “resampling” to 48KHz.
  • Channel mapping is correct for Direct Sound output, WASAPI output and foo_dso_asio for both PCM and DSD
  • Use the setup instructions here but skip the custom channel mapping step

Note: previously I thought with this version of the driver the DSD channels were still inverted, but they are not.

(Update 11/19/12) WHICH DRIVER FOR AMANERO?

For now, stick to driver 1.0.5 and use the procedure outlined here. The latest drivers (1.0.54 and 1.0.55) resample 44.1K to 48K if using foo_dso_asio in order to support DSD. If you don’t use foo_dso_asio as output and use for example WASAPI, then there is no resample.

The reason is because the latest driver identifies the Amanero board (at least to ASIO4ALL) as not supporting 44.1K. Below the comparison between the 1.0.5 driver and the 1.0.55 driver:

In the meantime, the 1.0.5 driver works well for both PCM and DSD. I will update this post once a more stable driver is released.

PCM AND DSD CHANNEL ORDER

foobar is able to play both PCM and DSD files through a USB interface such as Amanero or ExaDevices. When connected with a Buffalo DAC, the same wiring can be used (for both PCM and DSD), resulting in a seamless operation without requiring source switching.

However the channel order for PCM and DSD is swapped. When playing DSD with the same wiring as PCM, the right channel will appear on the left and the left channel on the right. This can be fixed by swapping the wiring manually or by using a relay, but defeats the seamless mode of operation that could be achieved. Further, adding a switching mechanism may introduce unwanted noise or other disturbances to the signal, and takes away the “straight wire” configuration that audiophiles long for :-).

CONFIGURING FOOBAR FOR PCM AND DSD PLAYBACK

Fortunately, there is a solution which is based on swapping the channels in the SACD plug-in for foobar. Summarized here are the steps in configuring foobar for correct playback of both PCM files and DSD files.

After installing foobar2000,

From the foobar2000 website, download:

  • WASAPI output support 3.0 or newer (optional)
  • ASIO support 2.1.2 or newer

From the Super Audio CD Decoder website, download:

  • foo_input_sacd-0.6.1.zip or newer. Gives you “foo_input_sacd” (SACD decoding plug-in) and “ASIOProxyInstall-0.6.0.exe” which gives you “foo_dsd_asio” (DSD asio output plug-in)

From the ASIO4ALL website, downloadg

  • ASIO4ALL 2.10 or newer

Note: there is a DSDIFF Decoder 1.4 plug-in in the foobar website which is not used in this configuration.

In foobar -> preferences you will see the following (I also downloaded the HDCD decoder, but it is not necessary for DSD):

Double click on ASIO4ALL to launch the control panel. If you don’t see the control panel it is minimized on your task bar. Configure ASIO4ALL by selecting the Amanero board. ASIO4All will work with all the output devices in Windows 7 since they all conform to the WDM driver architecture. Click on the little icon to highlight it.

Now configure foo_dsd_asio by selecting ASIO4ALL as the ASIO driver (if the Amanero board supported ASIO, it would show up here). This is the kludgy part: output to Asio4All which outputs to the actual device.

Note the DSD Playback Method settings: DoP Marker 0x05/0xFA. “DoP” means DSD over PCM. Marker 0x05/0xFA means use the marker (for DSD) as specified in the proposed “USB Link for DSD Audio via PCM Frames” open standard [link][link]

Note also that the SACD plug-in can also convert from PCM to DSD. There is a discussion here about that feature: [link] and also at the code repository [link]. You can convert PCM material to DSD64 or DSD128 on the fly. In my aging ThinkPad T60, the conversion on the fly takes 20% or processor load. Below it is set for no PCM to DSD conversion.

DSD Channel Swap

(Only needed if your DSD channels are swapped. This happens if you use driver 1.0.5 or earlier)

Now you need to create a custom channel map for  f00_dsd_asio. This is done in order to swap the channel. Click “Add New” in the Custom channel mappings interface

Configure the new channel mapping as shown:

  1. Choose the foo_dsd_asio driver from the select list
  2. Assign “Technology Streaming 1” to Right and “Technology Streaming 2” to Left. (The default is 1 to Left and 2 to Right)
  3. Give it a proper name (e.g.: “foo_dsd_asio – RL”)

Click OK and you will see the new custom channel map in the list

Select the output device for DSD (the custom channel map that you just created). Note that If you select “foo_dsd_asio”, then you will have the channels swaped:

Note: with driver 1.0.56 or later which fixes the channel swap, just use foo_dsd_asio

Configure the SACD plug-in for DSD. If you configure for PCM it will convert DSD to PCM:

TESTING

In order to test your configuration, you can download any Stereo test file from the internet. I downloaded 3 simple mp3 files that would test “Left Channel”, “Right Channel” and “Both Channels” [link]. I then converted the files into DSD files by using the free AudioGate application.

Put all the six files into foobar and play them one by one…

  1. stamatis
    November 18, 2012 at 04:15

    Excellent!
    I will try this ASAP.
    I am using amanero to signal with I2S a sabre 9018 board. I succesfully installed the latest firmware using Jesper.
    Some strange things noticed though when auditioning with Foobar 2000.

    1. When in kernel streaming on 32bit channels (menaning L,R audio channels)are also inverted!! switch to 24 bit.. channels ok!

    2.When in wasapi (event or pushed mode either) the opposite applies; 32bit channels ok… 24bit channels inverted!!!

    3.Also when in Kernel Streaming (which generally speaking I prefer) after the first playback the driver option dissapears from foobar/output settings even though the device is playing as normal. Amanero KS dissapears from the selection panel to appear again only when OS is restarted!!

    Anyone else noticed something like this?

    I unistalled – reinstalled several times the device. Always the same…

    I managed to get correct channel distribution straight with absolutely no mods when using ASIO4ALL though.
    That tells me there could be a problem with Amanero win7 drivers.

    Any thoughts?

    And another question; has anyone tried to signal a 7.1 adjusted sabre using Amanero for multichannel use?

  2. Javier
    November 18, 2012 at 08:51

    Stamatis, are you using latest firmware (RevC3) and drivers(1.0.5)?

    • stamatis
      November 18, 2012 at 13:17

      Yep! all the latest stuff.

  3. stamatis
    November 18, 2012 at 15:56

    I succesfully installed all dsd stuff succesfully.
    However it occured to me that by simply using the KS (Kernel Streaming) of Amanero in foobar you have the exact same result; Any DSD file is instantly recognised, Foobar at the left bottom refers to it as DSD etc.
    Have you tried to use KS instead of ASIO4ALL?
    Could you give it a go?

    • BlgGear
      November 19, 2012 at 01:02

      Thanks for the info. I shall try it. You don’t see channel inversion with DSD?

    • BlgGear
      November 19, 2012 at 05:21

      Can’t get KS to play DSD files. (And the plug-in is 6 years old!). In addition, WASAPI 32 and 24 bit inverts the channels. I think I’ll stick with ASiP4ALL and the SACD plug-in

  4. stamatis
    November 19, 2012 at 10:05

    In my system foo KS works with DSD files as a charm! I also have the confirmation at the bottom left of foobar stating “DSD”.
    I will post logs or whatever for proof, maybe I’ve done something in my ignorance that made it possible.
    Seriously! Just KS and it works!

    There is channel inversion. I switch to 24bit and the invesrion is corrected. Then I switch it back to 32bit and is ok!
    However I contacted Domenico from Amanero during the weekend and after quite few emails we exchanged he produced two new driver versions to fix the issue.
    Hopefully they will be on Amanero driver section today!

    Pls look into KS a bit more.
    We’ll be in touch.

  5. stamatis
    November 19, 2012 at 10:15

    PS: The v1.054 driver has been produced by Domenico yesterday evening and fixes only an enumeration issue.
    Pls wait for the newer version to fix channel inversion as well
    .

  6. stamatis
    November 19, 2012 at 11:26

    Also, if you allow me, try to just install “foo input dsdiff” and remove the SCAD component for the KS to work.

    • BlgGear
      November 19, 2012 at 16:44

      OK, I’ll wait for the new driver.
      I think a better solution is for Amanero to add ASIO support to their driver, then you will not have to use ASIO4ALL.
      I don’t like to use KS with Windows 7. It is an obsolete approach for direct access to the h/w.

  7. Javier
    November 19, 2012 at 17:28

    I discussed the DoP over KS and WASAPI thing with Maxim (SACD plugin author) and he confirmed it is a Foobar problem, as output from the plugin has to go through the DSP and Volume stages which are not DoP ready and break the signal. For this to work he’ll have to code another proxy like foo_dsd_asio but for these output methods which isn’t an option.
    I then asked Peter (Foobar designer) at Hydrogenaudio.org if he could introduce the option, even if buried deep in the Advanced Options, of skipping those steps allowing straight connection from input plugin to output plugin which would make proxying redundant (either in ASIO or KS/WASAPI) and open all sort of DSD connections but for a number of reasons he didn’t like the idea and said he will not do it.

    Forget foo_input_dsdiff, it is obsolete, technically inferior to foo_sacd_input and it can only output PCM.

    • BlgGear
      November 19, 2012 at 18:54

      Thanks for info, Javier.
      I guess, there is no point trying KS. Not meant to discourage your Stamatis. It is always good to experiment. Had I tried the dsdiff plug-in, the DAC would have immediately detected whether the stream was PCM or DSD and reported back in the user interface.

  8. stamatis
    November 19, 2012 at 18:12

    So, the “DSD” at the left bottom indicates the input..
    In fact at the output over KS (via foo-input-dsdiff) its just PCM…
    Correct?

  9. stamatis
    November 19, 2012 at 18:14

    Javier, you are always steps ahead my friend!

  10. David Quayle
    March 3, 2013 at 09:37

    The Foobar Webstie has this to say about using ASIO.

    “Please note that this component is meant for systems where ASIO is the only available output method. It is highly recommended to use the default output modes instead of ASIO. Contrary to popular “audiophile” claims, there are NO benefits from using ASIO as far as music playback quality is concerned, while bugs in ASIO drivers may severely degrade the performance. ”
    ???

    • BlgGear
      March 5, 2013 at 17:22

      True. In this case you need to use ASIO to allow playback of both PCM and DSD files…

  11. Javier
    April 1, 2013 at 08:26

    Here is some homework for you BlgGear…
    What about updating this page to include Amanero’s ASIO drivers and new options it offers? :)))

    BTW, new ASIO Proxy 0.6.1 (not to be confused with foo_sacd_plugin 0.6.2) allows for PCM to DSD conversion of both complete sampling rate families (44.1 & 48k) whereas previous version 0.6.0 only upsampled 44.1K.

  12. September 14, 2016 at 16:51

    internet marketing calgary

  13. September 14, 2016 at 17:09

    tonery do lj hp

  14. September 14, 2016 at 17:28

    Legal highs

  15. September 14, 2016 at 17:45

    alviero martini on line

  16. September 14, 2016 at 19:15

    Water Heater Repair Denver

  1. November 17, 2012 at 22:14
  2. April 6, 2013 at 23:33
  3. February 17, 2014 at 14:37

Leave a comment