so I have got a couple of SACD rips from my Windows-PC as .dsf files on my Hard-Drive. Now I would like to eventually encode those in opus , to play them on my phone. To be able to do that, I need to first convert them into some lossless audio codec [via PCM?!], preferably flac. Unfortunately the only device available to me now runs on Ubuntu 14.04 LTS.

So far I tried foobar2000 via Wine, which couldn't even play them.

Unfortunately i was not able to compile dsf2flac either.

Any suggestions?


You can try to use already compiled binary of dsf2flac from here. Unzip it and you will find dsf2flac CLI app there. The command should look like:

./dsf2flac -i file.dsf -o output.flac

type ./dsf2flac -h to see more options.

You could also try out ffmpeg. If you don't want to build and configure it on your own you can download the latest static builds and just start to use it. Also take a look at this site if you decide to use ffmpeg.

  • 1
    I get dsf2flac: loadlocale.c:129: _nl_intern_locale_data: Assertion 'cnt < (sizeof (_nl_value_type_LC_TIME) / sizeof (_nl_value_type_LC_TIME[0]))' failed.. – axel22 Oct 8 '19 at 22:30
  • I get the same error. dsf2flac: loadlocale.c:129: _nl_intern_locale_data: Assertion `cnt < (sizeof (_nl_value_type_LC_TIME) / sizeof (_nl_value_type_LC_TIME[0]))' failed. Aborted (core dumped) – JamesIsIn Feb 15 '20 at 15:37
  • @JamesIsIn This answer might help you out with that assertion problem. However I would fist try to do it using ffmpeg. It may be faster. – Dimitri Podborski Feb 15 '20 at 16:12
  • Yeah, I did use ffmpeg. Any idea why your version won't work? Is it the bitrate? jamesisin.com/a_high-tech_blech/index.php/2020/02/… – JamesIsIn Feb 18 '20 at 6:45
  • @JamesIsIn It doesn't look like a bitrate. From the assertion you posted it looks like a problem of your locale settings. Also that compiled binary seems to be in debug mode. (usually assertions happen in debug builds.) One could try to compile the newest code itself in release build. But it is not my source code, therefore I don't know if there are further problems etc. – Dimitri Podborski Feb 18 '20 at 11:33

Have you tried DeaDBeeF?

For Ubuntu, download either the i686 (for 32 bit hosts) or amd64 (for 64 bit computers) DEB files: http://deadbeef.sourceforge.net/download.html

Once downloaded, say to ~/Downloads, open Terminal and:

sudo dpkg -i ~/Downloads/deadbeef-static_0.7.2-2_amd64.deb

You can then run DeaDBeeF.

Add your DSD files using the Add files or Add folders options on the File menu. This will import your files into the DeaDBeeF list.

Right click the files you want to convert and click... Convert:

Converting DSD files with DeaDBeeF

In the next dialog, set where you want the files saved, and choose the FLAC encoder:

enter image description here

Click OK and the FLAC files will be generated.

I wrote up a load of these (because I was always asking myself same questions for different file formats on Linux) at https://www.blisshq.com/music-library-management-blog/2017/06/20/matrix-free-audio-file-converters/

  • I get: Write error (4096 bytes written out of 16000) Failed to execute the encoder, command used: flac -o "/mnt/data/home/aprokope/Music/Dire Straits - A1.Calling Elvis.flac" -5 --ignore-chunk-sizes - – axel22 Oct 8 '19 at 22:30
  • Are your FLACs valid? Take a look at blisshq.com/music-library-management-blog/2015/03/31/… – Dan Gravell Oct 9 '19 at 12:54
  • I am going from dff source files to flac output files, and this fails when I press OK in the dialog above. I think that the dff files are valid, since deadbeef plays them correctly. Also, the dff files are 32-bit and with 192 kHz sampling rate (~500mb each) - maybe the FLAC encoder can't handle this.. – axel22 Oct 9 '19 at 14:47

Real easy with ffmpeg:

ffmpeg -i "<nameOfTrack>.dff" -c:a flac "<nameOfTrack>.flac"

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.