How to fix an Audioengine D3's volume control on (Ubuntu) Linux
The Audioengine D3 is a great USB DAC. It features a nice build quality with a metal outer shell, and most importantly it sounds good. However, if you are using it on Linux you might run into some volume control issues. In my case there was a large jump in volume i.e. no sound until a certain threshold and than suddenly a very loud sound. These are the tweaks I used to get its volume control working nicely on (Ubuntu) Linux.
There are a large number of pages that suggest setting ignore_dB=1 in /etc/pulse/default.pa as a fix, i.e.:
### Automatically load driver modules depending on the hardware available
.ifexists module-udev-detect.so
load-module module-udev-detect ignore_dB=1
#load-module module-udev-detect
.else
### Use the static hardware detection module (for systems that lack udev support)
load-module module-detect ignore_dB=1
#load-module module-detect
.endif
That worked. However, that didn’t fix the whole problem for me. Now the threshold in the volume control was gone, but starting from 0 the volume rose very quickly (above 10% was way too loud). There was another hint I stumbled upon: changing the default PulseAudio profile. After changing it to iec958-stereo everything smoothed out and the DAC became usable and enjoyable.
The only thing to do is to make the change permanent by adding (in my case) the following to /etc/pulse/default.pa:
.ifexists alsa_card.usb-Audioengine_Audioengine_D3_Audioengine-00
pactl set-card-profile alsa_card.usb-Audioengine_Audioengine_D3_Audioengine-00 output:iec958-stereo
.endif
Hope this helps someone out.
More tk
Sources
These were the most useful pages in sorting this issue out:
https://unix.stackexchange.com/questions/462670/set-default-profile-for-pulseaudio