Skip to content

Instantly share code, notes, and snippets.

@milnak
Last active June 18, 2024 06:24
Show Gist options
  • Save milnak/c3b4148e574fa7828cc7d24e46d6dbe9 to your computer and use it in GitHub Desktop.
Save milnak/c3b4148e574fa7828cc7d24e46d6dbe9 to your computer and use it in GitHub Desktop.
[Foobar 2000 DSD and SACD support] Guide to setting up Foobar2000 player for hi-res audio (DSF, DFF, SACD, ISO)

Foobar2000 DSD and SACD support

I've successfully followed these steps to get DSD (.dsf filetype) and SACD (.iso filetype) playing at high bit rate using foobar2000 on my S.M.S.L M500 DAC.

This has been adapted from "SECTION II" of this page, thanks to "sirblew" for the tip!

Introduction

DSD stands for Direct Stream Digital and it is a high-definition lossless audio format with a twist. PCM signal solutions (like FLAC, TTA or APE) measure a set of bits multiple times per second to capture the audio data, hence the 16/24-bit parameter. On the other hand, DSD uses only one bit but samples it 2.8 million times a second to capture the audio signal.

ASIO Output (Required)

Download and extract foo_out_asio - ASIO Output

Install the asio component:

  • File > Preferences > Components
  • Click Install.
  • Select "foo_out_asio.fb2k-component".
  • Click OK, then OK again to restart Foobar2000.

Set the asio component as the output device:

  • File > Preferences > Playback > Output
  • Device: "ASIO : USB DAC ASIO" (or name of your device)

Optionally, disable all other devices:

  • File > Preferences > Playback > Output > Devices
  • (uncheck all but "ASIO : USB DAC ASIO", for example)

SACD (ISO) Playback

Download and extract foo_input_sacd - Super Audio CD Decoder. This decoder is capable of playing back Super Audio CD ISO images, DSDIFF, DSF and DSD WavPack files.

Install DSD SACD component:

  • File > Preferences > Components
  • Click Install.
  • Select only "foo_input_sacd.fb2k-component".
  • Click OK, then OK again to restart Foobar2000.

Set plugin for "PCM" as output mode:

  • File > Preferences >Tools > SACD
  • Output (per device)
    • Type: "DSD+PCM" (was PCM). Note: DSD+PCM will send a converted to PCM stream to Foobar so graphic add-ons like VU-meters, spectrographs and so on will work as they do when playing regular PCM files.
    • Samplerate: 384000 (was 44100)
  • Converter
    • DSD2PCM Mode: "Direct (64fp, 30kHz lowpass)" (was "Multistage (32fp)"). 30KHz low pass filtered means all DSD noise above that frequency is removed and does not reach the amp.
  • Input
    • Preferable Area: "Stereo" (was "None"). Only stereo tracks are displayed.
    • Editable Tags (was unchecked).
    • Store Tags With ISO (was unchecked). Stores tag info in the plugin folder.
    • Linked 2CH/MCH Tags (was unchecked). Tags added to a SACD ISO will be shared between stereo and multichannel tracks.
  • Click OK
@milnak
Copy link
Author

milnak commented Jun 6, 2024

@sirblew got a link to instructions?

@sirblew
Copy link

sirblew commented Jun 6, 2024

@milnak the configuration is described under "SECTION II" of this page:
https://diyaudioheaven.wordpress.com/digital/pc-software/foobar-2000-for-dummies-part-3-new-experimental-sacd-plugin-v-0-9-x/
"Using this configuration, all DSD formats will be sent as PCM to the DAC."

This is what my config looks like:
image

@milnak
Copy link
Author

milnak commented Jun 6, 2024

@sirblew I've updated the instructions. Hopefully I got it right!

@sirblew
Copy link

sirblew commented Jun 17, 2024

@milnak I'd suggest setting output to "PCM" rather than "DSD+PCM" to eliminate the possibility that the DAC will use the DSD stream over the PCM.

@MarcoRavich
Copy link

I personally prefer the Mode 2 (Bitperfect outputting native DSD through DSDTranscoder) for my Topping E50 instead.

@milnak
Copy link
Author

milnak commented Jun 17, 2024

@milnak I'd suggest setting output to "PCM" rather than "DSD+PCM" to eliminate the possibility that the DAC will use the DSD stream over the PCM.

On my SMSL M500, setting "PCM" shows "PCM 384 kHz". Using "DSD+PCM" shows "DSD 2.8224 MHz". Seems like "DSD+PCM" is preferable?

@sirblew
Copy link

sirblew commented Jun 18, 2024

On my SMSL M500, setting "PCM" shows "PCM 384 kHz". Using "DSD+PCM" shows "DSD 2.8224 MHz". Seems like "DSD+PCM" is preferable?

No, because DSD limits your options with DSP and output API, and the M500 will convert to PCM anyway and it probably won't do as good a job as the DSD2PCM plugin does.

@MarcoRavich
Copy link

MarcoRavich commented Jun 18, 2024

@sirblew ...can you provide more infos about this "internal DSD to PCM" conversion ?

For what i've understood ESS ES9038Pro relies on DoP (which is a different thing) instead: https://dcs.community/t/interesting-piece-on-dsd-and-dop/5376

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment