Recognized but no sound with Asus Xonar SE in Ubuntu 19.04
Recently I have bought the Asus Xonar SE in order to use S/PDIF devices for playback. It was the newest and best I could find for the price, and people on Amazon commented it worked in Ubuntu for them (read about 12.04 & 14.04 being OK). Now, I don't know how they did it, but I can't get it to work. I have tried many things told about for troubleshooting and solving audio-related problems similair to mine on Ubuntu/Linux, but nothing so far.
I would like to use the S/PDIF output, but also by trying with the analog output on the card had no luck: I have seen no playback.
The card itself is a bit weird. It uses a USB (yes, even though it's PCIe) audio processor from C-Media (the CM6620A), a host controller for USB from AsMedia (ASM1042A) and the S1220A from Realtek as a DAC.
Asus their soundcard works perfectly in Windows 10 (my PC is dualbooted with REFInd), after having installed the software from the CD Asus provided (so there's no hardware problem there)
Now software (steps):
I have set the output device correctly in the Ubuntu settings panel for sound (it looks like this: https://imgur.com/a/AfJN7ls ). I have also tried changing to different digital profiles in a PulseAudio tool, but no luck with that either.
I already worked with Alsamixer in the terminal and tried solving the issue with f.e. muted volume, but no luck there. This is what it looks like now: https://imgur.com/a/fLIotEY To me it mainly looks odd that none of the outputs are correctly labelled, as they are with working (normal) cards in Alsamixer. It's all "PCM ..."
Another thing I tried was doing a search on the codecs on the machine, and there it returned this:
==> /proc/asound/card0/codec#0 <==
Codec: Realtek ALC892
==> /proc/asound/card0/codec#2 <==
Codec: Intel Kabylake HDMI
From the return of aplay -l
I can see that the Xonar SE is card#1
, but for that there are no codecs available via the command I ran like above (= head -n 1 /proc/asound/card*/codec#*
).
aplay-l
output:
**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC892 Analog [ALC892 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 7: HDMI 1 [HDMI 1]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 8: HDMI 2 [HDMI 2]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 9: HDMI 3 [HDMI 3]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 10: HDMI 4 [HDMI 4]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: SoundCard [Xonar SoundCard], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: SoundCard [Xonar SoundCard], device 1: USB Audio [USB Audio #1]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: SoundCard [Xonar SoundCard], device 2: USB Audio [USB Audio #2]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: SoundCard [Xonar SoundCard], device 3: USB Audio [USB Audio #3]
Subdevices: 1/1
Subdevice #0: subdevice #0
The full Alsa information output it produced seems fairly complicated to me. I find it difficult to get information from there, but I have the output here: http://alsa-project.org/db/?f=2a945544a53708b95cd185596fd636a60f1c1e62
Btw: I also tried it with a different Ubuntu version (18.04 LTS from USB) and also Mint 19.2. No luck with that either, same result like all of the above information.
Is there anyone who knows what steps I can take to make this work? Or how to diagnose a problem?
Thanks already
Solution 1:
Solving the problem is Step 3
- /etc/asound.conf is default
-
Add
"CardName" X
to the/usr/share/alsa/cards/USB-Audio.conf
file.'
CardName
' is 'Xonar SoundCard
' and I found out it withaplay -l
.I found out '
X
' withaplay -D plughw:CARD=SoundCard,DEV=X something.wav
. The S/PDIF interface of the Xonar SE card with the CM6620A chip is the third (DEV=2
)
Solution 2:
I have managed to get it working. As @CL. pointed out, by using aplay -D plughw:1,x something.wav
you can check if your device will output any sound. I have replaced the x
with 2, which is for the digital output and with a sample.wav
file I got playback.
So now it was a matter of getting all Ubuntu playback for card 1
with device 2
. I'm sure that (also with PulseAudio etc.) there are many ways to get it done, but I just added this to a newly made config file (/etc/asound.conf
):
defaults.pcm.card 1
defaults.pcm.device 2
Now it will always use card 1
with device 2
. This would differ per user, but by using aplay-l
(as seen in my question) you can find more info about the card and device.
More info regarding this config change can be found on this Unix StackExchange question.