HDMI Sound not set right after upgrade to 12.2?

Upgraded to 12.2 today and now the sound through my HDMI to my TV is broken. The system and applications don’t want to use it, and I see a recurring pop-up in the lower right that says the audio channel failed and it is falling back to “default”.

Executing this works no problem:

aplay -D hw:1,7 /usr/share/sounds/alsa/test.wav

So I know where the audio address is and it seems to be working. But the GUI (system and XBMC) are not using it. I have this set:

asload-module module-alsa-sink device=hw:1,7 

in /etc/pulse/default.pa, but still no luck. I followed the directions in this pretty useful thread: http://forums.opensuse.org/english/get-technical-help-here/multimedia/476503-suse-12-1-no-sound-through-hdmi-need-links-good-guide.html

But after re-installing my nvidia drivers from the community repository as explained, and then trying it via the hard way (which is how I had it before the upgrade), the sound has made no difference. I then also saw this thread: http://forums.opensuse.org/english/get-technical-help-here/hardware/477966-no-sound-12-2-kde.html and thought I had my issue identified as well… but no matter what, I can’t get any sound to come through the UI via the root or doing the audio tests via the GUI as described in the thread.

I’m getting pretty lost now, given that I’ve uninstalled and re-installed alsa, pulseaudio, and my nvidia drivers several times in difference permutations. I’ve also tried to get it to work via phonon, but it also complains that the resource fails.

What’s left? I feel like I’m missing something small given the aplay command works just fine…

Thanks for the help in advance.

I’m not sure what I did, but I finally got pavucontrol to show up (it has always complained that it could not access pulseaudio)… when I go to output devices, there is only the “Dummy Output” listed, and no Hardware outputs. And yet there are several in Phonon. Default YAST → Sound is set to nVidia output, which seems like it would be correct.

Still no sound though…

I’ve tried reloading the alsa and pulse audio packages several times now… I then got to the point where I got this:


~> cat /proc/asound/cards
 0 [PCH            ]: HDA-Intel - HDA Intel PCH
                      HDA Intel PCH at 0xfb620000 irq 61
 1 [NVidia         ]: HDA-Intel - HDA NVidia
                      HDA NVidia at 0xfb080000 irq 17
~> aplay -l
aplay: device_list:256: no soundcards found...

So it seems to detect the card, but aplay finds nothing. Alsamixer also shows nothing other than master, no detected devices. Then I noticed that this changes when you su to root:


# cat /proc/asound/cards
 0 [PCH            ]: HDA-Intel - HDA Intel PCH
                      HDA Intel PCH at 0xfb620000 irq 61
 1 [NVidia         ]: HDA-Intel - HDA NVidia
                      HDA NVidia at 0xfb080000 irq 17
# aplay -l
**** 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 1: ALC892 Digital [ALC892 Digital]
  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 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 8: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 9: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

So, after doing the reinstall, I then had the same issue as outlined in this thread, except of course root is unable to play sound either: http://forums.opensuse.org/english/get-technical-help-here/hardware/477966-no-sound-12-2-kde-3.html

After adding my user to the audio group, aplay -l then showed the appropriate devices including the HDMI devices. So now applications can see a whole suite of interfaces… none of which still give me any sound. Also, pavucontrol still shows only the “Dummy Output”… do I need to have pulseaudio installed? Do these conflict? I have very little knowledge on why there’s two of these systems. I’m obviously missing something here as alsa sees the devices, but pulse still does not.

Verifying the Alsa setting as according to the nvidia troubleshooting guide: ftp://download.nvidia.com/XFree86/gpu-hdmi-audio-document/gpu-hdmi-audio.html
Everything looks good here:


# lspci
00:00.0 Host bridge: Intel Corporation 2nd Generation Core Processor Family DRAM Controller (rev 09)
00:01.0 PCI bridge: Intel Corporation Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port (rev 09)
00:16.0 Communication controller: Intel Corporation 6 Series/C200 Series Chipset Family MEI Controller #1 (rev 04)
00:19.0 Ethernet controller: Intel Corporation 82579V Gigabit Network Connection (rev 05)
00:1a.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 (rev 05)
00:1b.0 Audio device: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller (rev 05)
00:1c.0 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 1 (rev b5)
00:1c.1 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 2 (rev b5)
00:1c.2 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 3 (rev b5)
00:1c.3 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 4 (rev b5)
00:1c.4 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 5 (rev b5)
00:1c.6 PCI bridge: Intel Corporation 82801 PCI Bridge (rev b5)
00:1c.7 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 8 (rev b5)
00:1d.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 (rev 05)
00:1f.0 ISA bridge: Intel Corporation P67 Express Chipset Family LPC Controller (rev 05)
00:1f.2 SATA controller: Intel Corporation 6 Series/C200 Series Chipset Family SATA AHCI Controller (rev 05)
00:1f.3 SMBus: Intel Corporation 6 Series/C200 Series Chipset Family SMBus Controller (rev 05)
01:00.0 VGA compatible controller: NVIDIA Corporation GT218 [GeForce 210] (rev a2)
01:00.1 Audio device: NVIDIA Corporation High Definition Audio Controller (rev a1)
03:00.0 USB controller: NEC Corporation uPD720200 USB 3.0 Host Controller (rev 04)
05:00.0 SATA controller: JMicron Technology Corp. JMB362 SATA Controller (rev 10)
06:00.0 USB controller: NEC Corporation uPD720200 USB 3.0 Host Controller (rev 04)
07:00.0 PCI bridge: ASMedia Technology Inc. ASM1083/1085 PCIe to PCI Bridge (rev 01)
08:02.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8110SC/8169SC Gigabit Ethernet (rev 10)
08:03.0 FireWire (IEEE 1394): VIA Technologies, Inc. VT6306/7/8 [Fire II(M)] IEEE 1394 OHCI Controller (rev c0)
09:00.0 SATA controller: Marvell Technology Group Ltd. 88SE9172 SATA 6Gb/s Controller (rev 11)

…and here:


~> cat /proc/asound/card1/codec#1
Codec: Nvidia GPU 0b HDMI/DP
Address: 1
AFG Function Id: 0x1 (unsol 0)
Vendor Id: 0x10de000b
Subsystem Id: 0x10de0101
Revision Id: 0x100200
No Modem Function Group found
Default PCM:
    rates [0x0]:
    bits [0x0]:
    formats [0x0]:
Default Amp-In caps: N/A
Default Amp-Out caps: N/A
GPIO: io=0, o=0, i=0, unsolicited=0, wake=0
Node 0x04 [Audio Output] wcaps 0x72b1: 8-Channels Digital Stripe CP
  Converter: stream=5, channel=0
  Digital: Enabled
  Digital category: 0x0
  PCM:
    rates [0x7f0]: 32000 44100 48000 88200 96000 176400 192000
    bits [0xe]: 16 20 24
    formats [0x5]: PCM AC3
  Unsolicited: tag=00, enabled=0
Node 0x05 [Pin Complex] wcaps 0x407381: 8-Channels Digital CP
  Control: name="HDMI/DP,pcm=7 Jack", index=0, device=0
  Control: name="IEC958 Playback Con Mask", index=1, device=0
  Control: name="IEC958 Playback Pro Mask", index=1, device=0
  Control: name="IEC958 Playback Default", index=1, device=0
  Control: name="IEC958 Playback Switch", index=1, device=0
  Control: name="ELD", index=0, device=7
  Pincap 0x09000094: OUT Detect HBR HDMI DP
  Pin Default 0x18560010: [Jack] Digital Out at Int HDMI
    Conn = Digital, Color = Unknown
    DefAssociation = 0x1, Sequence = 0x0
  Pin-ctls: 0x00:
  Unsolicited: tag=01, enabled=1
  Connection: 1
     0x04

…and here as well:


~> cat /proc/asound/card1/eld#1.0
monitor_present         1
eld_valid               1
monitor_name            SAMSUNG

connection_type         HDMI
eld_version             [0x2] CEA-861D or below
edid_version            [0x3] CEA-861-B, C or D
manufacture_id          0x2d4c
product_id              0x32e
port_id                 0x20000
support_hdcp            0
support_ai              0
audio_sync_delay        0
speakers                [0x1] FL/FR
sad_count               1
sad0_coding_type        [0x1] LPCM
sad0_channels           2
sad0_rates              [0xe0] 32000 44100 48000
sad0_bits               [0xe0000] 16 20 24

However, when I got to the next step of checking the dmesg for HDMI recognition, I didn’t see anything. According to the writeup, this seems to be critical that something shows up here:

These messages are triggered when the NVIDIA binary X driver starts driving a signal to an attached HDMI monitor, which includes writing PD/ELD information into the audio hardware. The writes trigger the audio controller to generate a UR message. When the ALSA driver processes the UR message, it prints the messages to the kernel log.

I did verify that the interface is unmuted. So again I’m at a bit of a loss… if dmesg doesn’t detect it, I’d take a guess that something isn’t right with the compiled kernel or some other handler… thoughts?

GOT IT!!! Going through the nvidia troubleshooting guide was helpful to verify all of the Alsa settings, but then I came across one piece of advice that mentioned that the alsa-plugins-pulse-32bit package had to be installed for 64 bit systems as well (not just the alsa-plugins-pulse package). So I installed that, and then a bunch of the audio interfaces finally showed up in pavucontrol and phonon. I found via the test audio function which interface in phonon was the correct sound output, and made it the highest priority interface on all systems. This finally fixed it and now I get sound again out of my TV on the HDMI!

Hopefully somebody finds all these troubleshooting steps helpful some day. I’m going to make note of it. :slight_smile:

Interesting! Thanks for sharing your solution, and well done in sticking with this to solve it.

Out of curiousity, what video driver are you using ? Sometimes the HDMI functionality is related to the video driver (ie either nouveau or proprietary nvidia).

No problem! Glad to help. I started off using the proprietary nVidia drivers, installed the easy way, had no luck so installed them the hard way… then once I got it all to work, I went back to the easy way. Now everything is still good. The video drivers I’m sure played some part in all this… but sorted themselves out at some point, and the nVidia troubleshooting steps I did above did help me figure things out and confirm that Alsa was installed correctly.

One this that has been on my mind though, is I find it interesting that the 32 bit package also needs to be installed if you have the 64 bit package… why isn’t it a dependency of the 64 bit package then and make everyone’s lives a little easier? Just a thought…