Problems with Alsa (I think) (14.1 x64, kernel 3.13.0)
So I've been battling to get a functional XBMC server working, and I've hit my second roadblock with sound.
My sound doesn't work through HDMI by default. So I compiled kernel 3.13.0 to get that working and now my (minor) problem is that it's muted when my system starts. It seems that the ATI HDMI device lists a S/PDIF device, which can only either be muted (by default) or set to [00] (at which point sounds work). However, when I try to use programs to listen to music, they usually work but throw errors. Furthermore, on XBMC, I can watch certian movies, but others will cause my TV to pop up a message about incompatible PCM signals and then none of my sound will work again until I reboot. I've been pulling my hair out, going through docs.slackware.org stuff and other things (mostly help stuff from Arch Linux, limited help from XBMC sources but nothing concrete) without success. Anyone have any tips for me? Thanks. EDIT: I dug up a pdf of the manual for my TV... turns out it basically supports nothing but PCM, so I fixed that in XBMC. How, errors I get while trying to play music (which doesn't play as of now) throw errors like ALSA error: : No suitable mixer element found, ALSA error: snd_mixer_find_selem failed, and ALSA error: snd_pcm_open failed: No such file or directory |
Can you run:
Code:
cat /proc/asound/cards |
Quote:
It looks to me that you forgot to compile the sound modules for that card. Please post the relivent portion of lspci -vv and cat /usr/src/linux/.config |
@ReaperX7: As requested
cat /proc/asound/cards Code:
0 [HDMI ]: HDA-Intel - HDA ATI HDMI (Hopefully) Relevant portions of lspci -vv Code:
00:01.1 Audio device: AMD/ATI [Advanced Micro Devices, Inc.] Trinity HDMI Audio Controller Code:
CONFIG_SND_HDA_INTEL=m |
Every time I need sound in the HDMI interface I have to activate a switch in xfce-mixer (IEC958).
After that I can redirect the sound through the HDMI interface. Hope it helps. |
You may also want to setup an alsa module.conf file and a user .asoundrc profile to default the audio to your HDA codec and not the HDMI.
|
By any chance does this HTPC you are building have a integrated sound card? if so find the module it is using and black list it.
|
If he Blacklists it, since he's using HDMI, it would Blacklist the snd-intel-hda module which would diable both sound cards. He needs to setup his device controls actually since he's using this method.
Correction on my last reply regarding which audio device to default to. As far as a mixer issue. Alsa uses dmix, so you may need to check the alsa utilities packages that handle dmix. |
Blacklisting the module definitely doesn't work, I've already tried that.
I haven't fooled around with it much since I got XBMC working correctly, but here's a couple more pieces of info that may be of use: (1) At one point I tried editing /usr/share/alsa/alsa.conf, and I changed the line Code:
defaults.pcm.device 0 Code:
defaults.pcm.device 3 (2) I have tried defining a default device in /etc/asound.conf but then I cannot use alsamixer at all (but the sound does work), I'll confirm tonight with music players still give me error messages with this setting. (3) When I boot my computer or restart ALSA, sometimes I get the following message: Code:
/usr/sbin/alsactl: set_control:1452: control.7.value.2 is not specified Hopefully this info may be able to lead you guys in the right direction. |
This just popped up in the changelog for kernel 3.13.1, which is just out:
Quote:
|
Quote:
|
Greetings
It is my understanding and experience that blacklisting is only good if you never want to use a secondary card for a secondary purpose. I can't tell you exactly how you should do this on your system but I can give you an example of how I do it on mine. I have 3 sound devices - an onboard Realtek ACL898 Codec, an Intel-hda-hdmi, and a discrete Esi Juli@ semi-pro recording quality card based on Ice1724. Since at this time I have no plans to use the HDMI output, it is blacklisted. BUT I prefer to use the onboard capture for network/speech usage, such as Skype, TeamSpeak, etc but never use it for music recording. To accomplish this I had to make a $HOME/.asoundrc shown here Code:
pcm.!default { # declare the default PCM device Hope this helps you find yours. |
Wow, that situation is far more complicated than mine is. However, I will play around with some of the things you've presented here. Does they ipc_key have to be any particular number or is it just a random, made-up number? And I'm assuming you are able to adjust the volume on multiple audio channels via alsamixer with that configuration?
|
Quote:
I have some issues with AMD audio too. When I run "aplay -l", I get : Code:
bash-4.2$ aplay -l I've put the following in /etc/asound.conf : Code:
defaults.ctl.card 1 Kmix is also not displaying the proper mixing channels, but that seems to be a bug in current kmix as the HDMI and Analog audio have the same name. alsamixer works fine though. This is really quite a mess. |
First off, sorry to revive a dead thread (and sorry for leaving you all hanging).
I had it somewhat working, as in I could hear audio but I had no volume control or no individual channel control in alsamixer. But it was working well enough for what I needed it for, so I gave up in trying to make it better because I was frustrated. Fast forward to today: the power was cut to my machine and when I booted it back up audio was again not working. I can't remember my somewhat solution and I've tried lots of asound.conf stuff but nothing is working for me. So currently, I have a S/PDIF channel that defaults to mute and only goes to 00 if it's not muted. When I unmute and test with aplay -D, I get a static sound. So (since I never had it working quite right to begin with anyways), please try to help me once again. Thanks. |
All times are GMT -5. The time now is 12:34 AM. |