Kein HDMI-Ton unter Lubuntu 26.04 trotz funktionierendem Bild

Bei meinem Rechner rhea, einem alten HP EliteDesk 800 G1, läuft Lubuntu 26.04 und ist über DisplayPort mit einem HDMI-Kabel mit einem Samsung-LCD-TV verbunden. Das Bild wurde problemlos übertragen, der Ton allerdings zunächst nicht: Im Audiomixer war ausschließlich der interne Lautsprecher als Ausgabegerät verfügbar.

Interessanterweise trat das Problem bei zwei Benutzern jeweils separat auf. Nachdem HDMI-Audio für den Hauptbenutzer aktiviert war, musste dies auch für den zweiten Benutzer einmal eingestellt werden.

Das Problem eingrenzen

Zunächst sollte man prüfen, ob Linux den HDMI-Audioausgang überhaupt erkennt:

aplay -l

Auf rhea zeigte sich:

Karte 0: PCH [HDA Intel PCH], Gerät 0: CX20632 Analog [CX20632 Analog]Karte 0: PCH [HDA Intel PCH], Gerät 3: HDMI 0 [SAMSUNG]Karte 0: PCH [HDA Intel PCH], Gerät 7: HDMI 1 [HDMI 1]Karte 0: PCH [HDA Intel PCH], Gerät 8: HDMI 2 [HDMI 2]

Damit war klar: Der HDMI-Audioausgang wird bereits vom Kernel bzw. ALSA erkannt.

Auch die Grafikhardware selbst war korrekt eingebunden:

00:02.0 VGA compatible controller: Intel Corporation Kaby Lake-S GT2 [HD Graphics 630]        Kernel driver in use: i915

Das Problem lag also nicht am Intel-Grafiktreiber und auch nicht am HDMI-Kabel.

PipeWire hatte das falsche Profil aktiviert

Lubuntu 26.04 verwendet PipeWire als Audiosystem. Mit

pactl list cards

ließ sich das aktive Profil überprüfen.

Entscheidend war:

Profile:        output:analog-stereo+input:analog-stereo        output:hdmi-stereo+input:analog-stereo        output:hdmi-stereo        ...Aktives Profil: output:analog-stereo+input:analog-stereo

Noch interessanter war der Eintrag für den HDMI-Port:

hdmi-output-0: HDMI / DisplayPort        verfügbar        device.product.name = "SAMSUNG"

Der Fernseher wurde also von PipeWire eindeutig erkannt. Lediglich das analoge Audio-Profil war aktiviert, weshalb der HDMI-Ausgang im Audiomixer nicht als Ausgabegerät erschien.

Auch wpctl status bestätigte das:

Audio ├─ Devices: │      Internes Audio │ ├─ Sinks: │  *   Internes Audio Analoges Stereo

HDMI-Profil aktivieren

Das Profil lässt sich mit pactl direkt umschalten.

Beim Hauptbenutzer war die Karte beispielsweise Karte 54:

pactl set-card-profile 54 output:hdmi-stereo

Beim Zweitbenutzer hatte die Karte eine andere ID:

48  alsa_card.pci-0000_00_1f.3  alsa

Daher dort:

pactl set-card-profile 48 output:hdmi-stereo

Anschließend zeigte wpctl status den neuen Ausgang:

Sinks:  *  Internes Audio Digitales Stereo (HDMI)

Der Ton kam nun über den Samsung-TV.

Wichtig: Die Karten-ID ist nicht unbedingt gleich

Die Nummer 54 bzw. 48 sollte nicht als feste ID betrachtet werden. Sie kann sich zwischen Benutzersitzungen unterscheiden.

Mit

pactl list short cards

lässt sich die aktuell gültige ID ermitteln.

Funktioniert das auch nach dem Abmelden?

Ja. Genau das war bei diesem Problem der erfreuliche Teil.

Nach dem Umschalten auf

output:hdmi-stereo

wird die Auswahl von PipeWire/WirePlumber benutzerspezifisch gespeichert.

Ein Abmelden und erneutes Anmelden mit jeweils beiden Benutzern änderte daran nichts. Eine dauerhafte Änderung von ALSA-Konfigurationen, Kernelparametern oder Gruppenmitgliedschaften war deshalb nicht erforderlich.

Fazit

Wenn unter Lubuntu 26.04 bei einer Verbindung über DisplayPort → HDMI zwar das Bild funktioniert, HDMI-Audio aber nicht im Audiomixer auftaucht, lohnt sich zunächst ein Blick auf die einzelnen Ebenen:

  1. Wird HDMI von ALSA erkannt? aplay -l
  2. Wird der Fernseher von PipeWire erkannt? pactl list cards
  3. Welches Profil ist aktiv? pactl list cards | grep'Aktives Profil'

Wenn der HDMI-Ausgang dort als verfügbar erscheint, aber beispielsweise

Aktives Profil: output:analog-stereo+input:analog-stereo

aktiv ist, genügt in meinem Fall:

pactl set-card-profile <Karten-ID> output:hdmi-stereo

Danach steht der HDMI-Ausgang auch im grafischen Audiomixer zur Verfügung und die Einstellung bleibt über einen erneuten Login hinweg erhalten.

Der entscheidende Punkt: Wenn aplay -l den Samsung bereits als HDMI 0 [SAMSUNG] erkennt, muss man nicht gleich am Grafiktreiber, Kernel oder HDMI-Kabel suchen. In diesem Fall kann das Problem schlicht darin bestehen, dass PipeWire das falsche Audio-Profil ausgewählt hat.

Schreibe einen Kommentar


PHPCo.de
Datenschutz-Übersicht

Diese Website verwendet Cookies, damit wir dir die bestmögliche Benutzererfahrung bieten können. Cookie-Informationen werden in deinem Browser gespeichert und führen Funktionen aus, wie das Wiedererkennen von dir, wenn du auf unsere Website zurückkehrst, und hilft unserem Team zu verstehen, welche Abschnitte der Website für dich am interessantesten und nützlichsten sind.