Jump to content

Question on Ubuntu + DAC + Spotify Bit Perfect Audio

Recommended Posts

I have an Ubuntu desktop with an external Modi DAC that outputs into my headphone amplifier. It works and plays music. My question is: If the computer is outputting music before amplification to the external DAC, why does the volume slider on the Spotify client change the volume? Similarly, the Linux volume slider also changes the volume. I would expect only my headphone amplifier to be able to adjust the volume.

Is this expected behavior? It suggests to me that I'm not outputting 'bit-perfect' audio to my DAC.

I've gone over (and over and over) this thread:


and when I play music from gmusicbrowser, it sounds fantastic, a noticeable upgrade. So how can I get the same bit perfect output when listening to Spotify?

Any help from someone knowledgeable about these things would be GREATLY appreciated. Thank you so much ahead of time.


ps. here are a few details in case it helps:

aplay -l

**** List of PLAYBACK Hardware Devices ****

card 0: PCH [HDA Intel PCH], device 0: 92HD73E1X5 Analog [92HD73E1X5 Analog]

Subdevices: 1/1

Subdevice #0: subdevice #0

card 0: PCH [HDA Intel PCH], device 1: 92HD73E1X5 Digital [92HD73E1X5 Digital]

Subdevices: 1/1

Subdevice #0: subdevice #0

card 1: HDMI [HDA ATI HDMI], device 3: HDMI 0 [HDMI 0]

Subdevices: 1/1

Subdevice #0: subdevice #0

card 2: Device [schiit USB Audio Device], device 0: USB Audio [uSB Audio]

Subdevices: 0/1

Subdevice #0: subdevice #0

and I can select the device in the Ubuntu Sound Output menu and it plays. I'm not sure what else needs to be done to ensure bit-perfect audio output to the DAC. I have configured gmusicbrowser to use ALSA as my output device, as instructed in the thread mentioned above. Of course, Spotify has no such output selection in its settings.

Link to comment

"If the computer is outputting music before amplification to the external DAC, why does the volume slider on the Spotify client change the volume?"


I'm not sure get what you're saying here. The amplification should take place in the analog portion of your dac. Its also possible to go analog out on the computer to a dac that has an adc, but very few dac's do this, so I assume you're digital. Either way, all of the volume controls should work in both situations unless you have a way of disabling them. When you have more than 1 volume control, its usually best to use only one of them, and set the others to full volume. In your situation, I would put the OS and music player volumes to max and use the volume control on your headphone amp.

Link to comment

Thank you for the reply, I really appreciate it. Let me clarify a bit: I'm worried that the computer is not outputting the signal to the external DAC in the optimal way due to some sort of software setting.


The device chain goes: computer -->USB out-->External DAC-->Analog out--->Headphone amp--->Headphones. I don't think any amplification should occur inside a DAC, right? That is simply for Digital to Analog Conversion (DAC), at least, as far as I understand.


If the computer is outputting the signal, un-amplified, to the DAC, then I would expect the volume controls on the computer to be useless. Shouldn't these computer volume controls simply control whatever terrible built-in amplifier comes with a desktop? I would expect there to be no signal at all fed into the built-in amplifier in the computer, thus they shouldn't have any effect. Is my view of the problem inaccurate?

Link to comment

Okay, I figured out what the problem is: Spotify is still using PulseAudio instead of ALSA. If anyone knows how to listen Spotify via ALSA instead of PulseAudio, then that should fix my problem. I've poked around and tried setting up a modipy server, and using GMPC as the front end, but it seemed really hacky and crashed a few times.


Anyone out there have experience trying to use Spotify with ALSA instead of PulseAudio?

Link to comment

"I don't think any amplification should occur inside a DAC, right? That is simply for Digital to Analog Conversion (DAC), at least, as far as I understand. "


The DAC does amplify the signal. It has to. In the analog section of the DAC is a small power amp. Its commonly referred to as a line amp or line level amp. Its just like a big one you use to power speakers, but instead of speakers, the line amp only needs to produce enough power to get the signal to the next component in your system. You may be confusing amplifying with volume control. Its not necessary to amplify to control volume. The volume controls in your OS and music player are digital. With digital volume controls, resolution varies as you adjust it. Anything less than 100%, or full volume, lowers the resolution of your music. That's why its recommended to keep all of your digital volume controls at max, and use an analog volume control (if you have one).


"I was able to run the windows version of Spotify in Wine, and select ALSA as the audio output of the wine configuration. Does anyone know how to get the native Linux Spotify client to use ALSA instead of PulseAudio?"


You may be better off using a different distro. Unity is so watered down and simplified, its hard to use. Try Ubuntu Studio, or maybe a KDE or MATE distro. Those type of DE's give you much greater control over your settings.

Link to comment

Thank you very much for clarifying. It makes sense that a DAC must have at least a line level amplification.


So if my OS and Spotify client controls are digital, and should be set to a 100%, am I not getting the "full" signal if they aren't set at 100%? Is there a way to get around that part? I would think the ideal solution would be to send the full signal to the DAC in such a way that there is no opportunity for the OS or Spotify client to interfere with the volume.


Unfortunately, its an enormous undertaking for me to switch to Ubuntu Studio, so I'm hoping to resolve this without changing the OS.


One potential solution I was thinking about: purging PulseAudio from the entire computer. Then only ALSA should remain. If I get any sound, I'll know its coming from ALSA, which I believe delivers a proper bit-perfect output to the external DAC. Does that sound reasonable? Thank you very much for helping me understand.

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Create New...