You are not logged in.
I installed Arch on another laptop and I am unable to get sound working.
# lspci | grep -i audio
00:01.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Device 9840
00:14.2 Audio device: Advanced Micro Devices, Inc. [AMD] FCH Azalia Controller (rev 02)
Two devices show up in alsamixer. The first (the default, I assume) shows up only an S/PDIF button that I can toggle. If I select the other sound card, I can change volume normally.
I followed this solution in the wiki with no success.
How can I make the second sound card the default one?
Last edited by Gradient (2014-09-09 18:17:14)
Offline
$ cat /etc/modprobe.d/50-alsa.conf
options snd-hda-intel index=1,0
Your HDMI is the default sound card, which is the reason it shows only digital output.
Edit: In the future post 'lspci -vnn | grep -A 1 -i audio'.
Last edited by emeres (2014-09-04 09:21:55)
Offline
Try using 'pavucontrol' . It has a GUI to manage sound devices and levels.
pacman -S pavucontrol
Offline
This is not recommended since it applies to PA only, should OP actually use PA. Setting the default sound card using modprobe is universal in that matter.
Offline
$ cat /etc/modprobe.d/50-alsa.conf options snd-hda-intel index=1,0
Your HDMI is the default sound card, which is the reason it shows only digital output.
I tried that and it kind of works. The second card (the one I want to use) is the only one displayed by alsamixer. However, I did the following and it works:
options snd_hda_intel enable=1 index=0
options snd_hda_intel index=1
Both are now displayed by alsamixer, with the second card being the first.
I think I understand what happens with these options. I would have liked to find some kind of official documentation explaining how to use those options. A search for 'snd_hda_intel options' did not lead to good results, unfortunatly.
Offline
Post those using what I suggested and what you came up with.
aplay -lL;
for i in /proc/asound/card[0-9]*; do echo "--- $i ---";amixer -c $(cat $i/id); done;
Also post this please:
lspci -vnn | grep -A 1 -i audio
That first line is redundant, simply using this should be sufficient:
options snd-hda-intel index=1
But I recommend using both values. Read this alsa documentation and 'man modprobe'.
What do you mean 'is visible in alsamixer'? F6 does not list it? Did you use index or enable?
Edit: man not mad modprobe.
Last edited by emeres (2014-09-04 23:58:46)
Offline
Here is the requested info with the cards in the corrected order:
$ aplay -lL;
null
Discard all samples (playback) or generate zero samples (capture)
default:CARD=Generic_1
HD-Audio Generic, ALC3227 Analog
Default Audio Device
sysdefault:CARD=Generic_1
HD-Audio Generic, ALC3227 Analog
Default Audio Device
front:CARD=Generic_1,DEV=0
HD-Audio Generic, ALC3227 Analog
Front speakers
surround21:CARD=Generic_1,DEV=0
HD-Audio Generic, ALC3227 Analog
2.1 Surround output to Front and Subwoofer speakers
surround40:CARD=Generic_1,DEV=0
HD-Audio Generic, ALC3227 Analog
4.0 Surround output to Front and Rear speakers
surround41:CARD=Generic_1,DEV=0
HD-Audio Generic, ALC3227 Analog
4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=Generic_1,DEV=0
HD-Audio Generic, ALC3227 Analog
5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=Generic_1,DEV=0
HD-Audio Generic, ALC3227 Analog
5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=Generic_1,DEV=0
HD-Audio Generic, ALC3227 Analog
7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
hdmi:CARD=Generic,DEV=0
HD-Audio Generic, HDMI 0
HDMI Audio Output
**** List of PLAYBACK Hardware Devices ****
card 0: Generic_1 [HD-Audio Generic], device 0: ALC3227 Analog [ALC3227 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: Generic [HD-Audio Generic], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
$ for i in /proc/asound/card[0-9]*; do echo "--- $i ---";amixer -c $(cat $i/id); done;
--- /proc/asound/card0 ---
Simple mixer control 'Master',0
Capabilities: pvolume pvolume-joined pswitch pswitch-joined
Playback channels: Mono
Limits: Playback 0 - 87
Mono: Playback 87 [100%] [0.00dB] [on]
Simple mixer control 'Headphone',0
Capabilities: pvolume pswitch
Playback channels: Front Left - Front Right
Limits: Playback 0 - 87
Mono:
Front Left: Playback 87 [100%] [0.00dB] [on]
Front Right: Playback 87 [100%] [0.00dB] [on]
Simple mixer control 'Speaker',0
Capabilities: pvolume pswitch
Playback channels: Front Left - Front Right
Limits: Playback 0 - 87
Mono:
Front Left: Playback 87 [100%] [0.00dB] [on]
Front Right: Playback 87 [100%] [0.00dB] [on]
Simple mixer control 'Mic',0
Capabilities: pvolume pswitch
Playback channels: Front Left - Front Right
Limits: Playback 0 - 31
Mono:
Front Left: Playback 31 [100%] [12.00dB] [off]
Front Right: Playback 31 [100%] [12.00dB] [off]
Simple mixer control 'Mic Boost',0
Capabilities: volume
Playback channels: Front Left - Front Right
Capture channels: Front Left - Front Right
Limits: 0 - 3
Front Left: 3 [100%] [36.00dB]
Front Right: 3 [100%] [36.00dB]
Simple mixer control 'Capture',0
Capabilities: cvolume cswitch
Capture channels: Front Left - Front Right
Limits: Capture 0 - 63
Front Left: Capture 39 [62%] [12.00dB] [on]
Front Right: Capture 39 [62%] [12.00dB] [on]
Simple mixer control 'Auto-Mute Mode',0
Capabilities: enum
Items: 'Disabled' 'Enabled'
Item0: 'Enabled'
Simple mixer control 'Internal Mic Boost',0
Capabilities: volume
Playback channels: Front Left - Front Right
Capture channels: Front Left - Front Right
Limits: 0 - 3
Front Left: 3 [100%] [36.00dB]
Front Right: 3 [100%] [36.00dB]
Simple mixer control 'Mute-LED Mode',0
Capabilities: enum
Items: 'On' 'Off' 'Follow Master'
Item0: 'Follow Master'
--- /proc/asound/card1 ---
Simple mixer control 'IEC958',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
$ lspci -vnn | grep -A 1 -i audio
00:01.1 Audio device [0403]: Advanced Micro Devices, Inc. [AMD/ATI] Device [1002:9840]
Subsystem: Hewlett-Packard Company Device [103c:22cd]
--
00:14.2 Audio device [0403]: Advanced Micro Devices, Inc. [AMD] FCH Azalia Controller [1022:780d] (rev 02)
Subsystem: Hewlett-Packard Company Device [103c:22cd]
What do you mean 'is visible in alsamixer'? F6 does not list it? Did you use index or enable?
Yes, that is what I meant; F6 did not list them both when I use your options. I must have done something wrong the first time, because now it does.
Read this alsa documentation and 'mad modprobe'.
Thanks for the link. That was what I was looking for.
Offline
options snd_hda_intel enable=1 index=0 options snd_hda_intel index=1
From the experience I gathered so far: The first line enables the first device, which according to lspci is the hdmi/gpu card and then sets its index to 0, ergo this line changes nothing, which is the reason I said it is redundant. The second line sets the first card according to hardware order, which again is the gpu/hdmi to the second slot, ergo index is set to 1. This pushes the next available card to index 0 and since there only is one other sound card, it is set as default.
You must reboot, after changing modprobe options or reload the modules correctly, ergo with no alsa sound active. Simply using only the second line is discouraged, since with multiple sound card the other card might get the index 0. Snd-hda-intel accepts multiple values, up to 31 it seems, so what I proposed seems to be the most appropriate approach irrelevant of the setup used, since the second parameter addresses the second sound card on the bus, which is the FCH Azalia/ALC3227 in this case and sets it to index 0 making it default.
$ cat /etc/modprobe.d/50-alsa.conf
options snd-hda-intel index=1,0
Should you consider this issue solved, then please mark the thread as such.
Edit: Added the solution for further clarification.
Edit2: I would like to know what this is if you do not mind:
Simple mixer control 'Mute-LED Mode',0
Capabilities: enum
Items: 'On' 'Off' 'Follow Master'
Item0: 'Follow Master'
What is its purpose?
Last edited by emeres (2014-09-04 23:56:49)
Offline
Sorry for the late response.
Gradient wrote:options snd_hda_intel enable=1 index=0 options snd_hda_intel index=1
From the experience I gathered so far: The first line enables the first device, which according to lspci is the hdmi/gpu card and then sets its index to 0, ergo this line changes nothing, which is the reason I said it is redundant. The second line sets the first card according to hardware order, which again is the gpu/hdmi to the second slot, ergo index is set to 1. This pushes the next available card to index 0 and since there only is one other sound card, it is set as default.
...
Thanks for the explanation.
Should you consider this issue solved, then please mark the thread as such.
Done! Thanks for your help.
Edit2: I would like to know what this is if you do not mind:
Simple mixer control 'Mute-LED Mode',0 Capabilities: enum Items: 'On' 'Off' 'Follow Master' Item0: 'Follow Master'
What is its purpose?
I'm sorry. I have no idea either.
Offline
You are welcome. The thread is still not marked as solved however. Prepend [SOLVED] to the topic by editing the first post. https://wiki.archlinux.org/index.php/Fo … ow_to_Post
Offline
options snd_hda_intel enable=1 index=0 options snd_hda_intel index=1
.
Sorry for posting here but i have a question - why you put order on the same card? What is the purpose of settiing it for the same card? What's more - if he has hdmi sound trough hdmi chip from AMD and onboard audio from onboard sound card, there should be different names, right? I have something similar,
card 0: XFi [Creative X-Fi], device 4: ctxfi [IEC958 Non-audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 7: HDMI 1 [HDMI 1]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 8: HDMI 2 [HDMI 2]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 9: HDMI 3 [HDMI 3]
Subdevices: 1/1
Subdevice #0: subdevice #0
[firekage@arch_desktop ~]$
and above these lines thare are many of something like that:
card 0: XFi [Creative X-Fi], device 3: ctxfi [Side]
Subdevices: 256/256
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
I can set order here by setting index =0 for reative xfi, but hdmi output is being done by nvidia hdmi on my graphic card...so?
Offline
@firekage Start your own thread, then link to this one. I elaborated this configuration in this thread, reread it. And take your time writing it, this is very hard to understand.
Offline
Ok, letf forget about my example, but one thing still remains - why give order 1/0 to the same sound card?
options snd_hda_intel enable=1 index=0
options snd_hda_intel index=1
For what purpose there is order here for the same card, driver, output?
Offline
Both cards use the same module. https://git.kernel.org/cgit/linux/kerne … n.txt#n851
The first line enables the first device, which according to lspci is the hdmi/gpu card and then sets its index to 0, ergo this line changes nothing, which is the reason I said it is redundant. The second line sets the first card according to hardware order, which again is the gpu/hdmi to the second slot, ergo index is set to 1. This pushes the next available card to index 0 and since there only is one other sound card, it is set as default.
Edit: The example you are quoting is incorrect firekage, reread the whole thread.
options snd-hda-intel index=1,0 # Correct way
Last edited by emeres (2014-09-09 16:59:02)
Offline