Playing DSD Audio Files in Linux

đź“… September 6, 2016
dsd“Can I play DSD files in Linux?”

Yes. However, the process is not exactly user-friendly due to DSD being a rather obscure audio format compared to FLAC and MP3. If you want to play .dsf or .dff files in Linux, you must first install players that will support DSD or convert DSD into PCM.



DSD, the acronym for Direct Stream Digital, is the audio encoding format

used in Super Audio CDs (SACD). Remember those? They were often hybrid CDs that contained standard CD audio for playback on regular CD players in addition to high resolution audio that offered improved fidelity and more audio channels to accommodate surround sound.

Introduced in 1999, the SACD technology never caught on, but the underlying encoding mechanism, DSD, is still around today. Some online music stores offer high-resolution music as a DSD download in order to offer the best sound quality possible that are as close to the original recordings as possible. These music files are often encoded as .dsf (DSD Storage Facility)  or .dff (DSD Interchange File Format/DSDIFF) audio files.


“Will Linux play DSD music files?”

Yes, but this is where the controversy lies. DSD is a 1-bit pulse-density modulation technique while Linux (as well as other operating systems, so this is not a Linux issue) is glued to the PCM (pulse-code modulation) technique utilizing 8/16/24/32 bits to represent audio. If you convert DSD to PCM, can it still be called DSD?

The differences over “which is better” can lead into some advanced acoustics theory and mathematics (in addition to heated audiophile debates), so we will leave those topics alone. The point is that these are two different techniques, and to play DSD on Linux, some form of conversion into PCM is required — at least given the common consumer-grade computer hardware that I had available.

No special audio hardware was used even though DSD integrated circuits on studio-grade recording hardware do exist. I played DSD files through the standard analog stereo audio output jack found on the motherboard.


“What do I need to play DSD?”

You need the right software. The existing audio players bundled with Linux and those found in the repository, such as VLC, Audacious, and Totem, do not play DSD natively.

The following players all worked well with DSD.



DeaDBeef 0.7.2 playing a .dff file. Information about the .dff file is shown in the status bar on the bottom.  Audio is playing through the 3.5mm analog line output located on the motherboard. No special DSD hardware required.

My favorite. DeaDBeef (Yes, it’s spelled that way) is a simple audio player that plays .dsf files natively. You can skip to other sections of the track as it plays. Download for your version of Linux (32-bit or 64-bit). There is no installation.

As far as I know, no additional codecs were required with DeadBeef on my test system (unless they were already installed). Extract and go. The few DSD test files I had (some DSD files are in the public domain) played perfectly in Linux Mint 18. Both .dsf (DSD64) and .dff (DSD128) played.

The only drawback appears to be interpreting the file information. In the screenshot above, we see DSD128 stats, but the file was tested on real DSD playback hardware in addition to source material verification. This is indeed a DSD64 2822 kHz file, not a DSD128 as being reported. It seems DeaDBeef does not interpret file information playback properly for .dff in this case. However, this could be the result of conversion needed in order to play the file back, and this is what is being reported in the status bar. Nonetheless, the file played perfectly and it sounded as good as it can get using motherboard stereo analog output.




HQPlayer 3.13.3 playing a .dff music file.

Unlike DeaDBeef, HQPlayer is not free. There is a free 30-day, 30-minute per use free trial.


The trial version of HQPlayer limits playback to 30 minutes at a time for 30 days.

HQPlayer plays DSD files (.dsf and .dff). It offers a fancy GUI that we are accustomed to seeing in media players. However, I could not skip through a track when playing DSD files. It was all from the beginning or nothing at all even though we see a progress bar.

Download the .deb for your version of Linux and install. HQPlayer is selectable from the Linux Mint menu. HQPlayer offers a number of advanced features beyond DSD playback, so it is worth looking into. I used the Ubuntu 14.04 version in Linux Mint 18. Runs well.



For those who enjoy the command line, dsf2flac converts a DSD file into FLAC (Free Lossless Audio Codec). You then play the FLAC file.

A simple example:

dsf2flac -i music.dff

dsf2flac (revision 51) converting a DSD64 .dff file into an 88 kHz 2443 kbps .flac for playback.

dsf2flac does not play a DSD file, it only converts to FLAC. Both .dsf and .dff files will convert.


Audacious playing the .dff file just converted to FLAC.

After conversion to FLAC, you can play the file in any common player that supports FLAC.

You can get fancy with dsf2flac, as in this article piping to ffmpeg, so explore and enjoy!

Other DSD Playback

These are not the only three DSD playback methods. Here are two more in case you are interested in dedicated music servers:

  • Daphile is a headless music server for networks that support DSD playback. This is an ISO server download, not a music player.
  • Voyage MPD is similar in concept to Daphile. It is also a Linux ISO download for producing a computer audio source.


“What is DoP?”

When discussing DSD playback, DSD over PCM (DoP or DOP) is encountered. This means the DSD stream is converted into PCM before or during playback. It is practically a necessity for playing back DSD files since most hardware people have is PCM hardware. You need true DSD hardware (expensive hardware by comparison to existing consumer hardware) in order to play back DSD files without the conversion. DoP is the name for this process.


“Does the music still sound good if converted from DSD to PCM?”

I cannot tell a difference. Both the DSD on real DSD hardware and DoP sound equally good to me. On a computer, the DoP and the converted FLAC using dsf2flac sound excellent. It could be that my playback hardware is too limited in its specifications to distinguish any fine differences that audiophiles on high-end hardware might hear, but the end result is excellent to me. No noise. No distortion. The converted signal sounds just as pure as the original DSD.

If the conversion is performed to FLAC with the highest quality, such as the default of dsf2flac, I cannot notice a difference.


“Which is better: MP3, FLAC, or DSD?”

Whichever you prefer. For sound quality, FLAC and DSD sound equally good to me. Both sound much, MUCH better than any 320 kbps stereo MP3. If you need the greatest compatibility with playback devices, MP3 is the most portable, but sound quality suffers because MP3 is a lossy codec.

After performing many tests involving MP3/FLAC/DSD for researching this article, MP3 — even at its highest quality setting — sounds dull and flat compared to the same recording in FLAC or DSD. Of course, if you have never heard a true high-resolution recording in FLAC or DSD and you have only heard MP3 quality, then you will miss nothing. You need to hear the same music in the different formats to tell a difference.

I tested a few public domain DSD files by downloading their FLAC and MP3 versions at their highest quality settings. Here is my opinion based upon my everyday listening:

Sound Quality Comparison:

  • DSD/FLAC – No difference. Both sound stellar.
  • MP3Yuck! After hearing DSD/FLAC and then comparing to MP3, the MP3 version always sounded duller — as if the life had been sucked out of it. The highest quality MP3 at 320 kbps could not compare to DSD or FLAC.

To help give a comparison, suppose you have a high-resolution image in its raw format and convert it into other file formats. DSD/FLAC would be comparable to PNG (lossless and better colors) while MP3 would be comparable to JPEG at 92 compression (lossy with duller colors and compression artifacts). Both PNG and JPEG can look good on their own, but until you compare them side-by-side, it is hard to appreciate the minute differences. DSD/FLAC vs. MP3 is the same way.

However, few portable music players support FLAC and even fewer support DSD. MP3 plays on almost anything, so there is a tradeoff. Besides, headphones and amplifiers are a large part of the equation. If you are playing a DSD or FLAC on low-quality “cheapie” earphones from a low-end music player, then the DSD/FLAC will sound no better than an MP3. I tried different headphones, and they do make a difference.

Answering the question “Which sounds better” depends upon a number of factors.


“If I convert my MP3/M4A/OGG/WAV/FLAC to DSD, will my music sound better?”


If you do, it will sound just like the original file. You cannot add quality that is not already present. In fact, you might make the resulting music sound slightly worse due to the conversion process.


“How large is the DSD file size?”

Larger than FLAC or MP3. Much larger. Expect a gigabyte or more for a standard CD-length album. As a comparison, here are the file sizes of the same music file in DSD, FLAC, and MP3 formats. The music is 5 minutes 7 seconds in length.

Filesize Comparison (5m7s music file)
 MP3   12.3 MB (44.1 kHz, 320 kbps)
FLAC   114.7 MB (88 kHz, 2986 kpbs)
 DSF   216.7 MB (352 kHz, 5644 kbps)

At 216 MB for about 5 minutes of music, this can add up to 2.5 GB of space for one hour of music. Of course, music file sizes vary like any other compressed content.


“Where can I find DSD music files?”

A few high-resolution online shops sell full music albums in DSD format, and there are a few public domain (free) DSD music files. Other than that, DSD downloads are almost nonexistent.

DSD is a rare format compared to MP3 or FLAC, and I can see it disappearing in favor of FLAC over time.


“Should I bother with DSD?”

In my opinion, no. Use FLAC instead. DSD offers high quality audio archives, but so does PCM. With standard computer hardware, sound editing must be performed in PCM anyway. Another problem with DSD is that it is a different technology compared to PCM, and converting to and from PCM can degrade the sound quality. Any conversion process has the potential of doing this.

Who uses DSD? Unless you have specialized hardware, playing DSD in its native format is not possible, so it must be converted into PCM first. Online, high-resolution audio is for sale, and many offer DSD downloads. Usually, retailers also offer FLAC, which is also lossless and supports specifications comparable or exceeding DSD.

FLAC is open source, non-proprietary, and far more compatible with existing software and many hardware music players. FLAC sounds incredibly good, and, just like DSD, its sound quality is superior to MP3 or any other lossy audio format (at the expense of a greater file size). In fact, depending upon the reports, some say FLAC 24-bit 96 kHz is equivalent to DSD64 2.8224 MHz. Those specs sound fantastic to my ears, and I cannot distinguish a difference between them, so why not use the more compatible FLAC?

When you delve into the realm of high-resolution audio, you need high-end audio hardware. This article focused on playing DSD files in Linux using the generic motherboard audio to demonstrate that it is possible. However, if you desire high-quality sound from your computer when playing DSD files, you need to invest in a high-end sound card with digital output and use a quality amplifier and speakers or headphones to truly appreciate the better sound that DSD and FLAC make possible.

Further Reading

DSD makes an interesting topic. For more information, here are some links to get started:



  1. Leave a comment

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: