AsoundRC und HDMI-Ausgabe verstehen

AsoundRC und HDMI-Ausgabe verstehen

Ich verwende Nixos auf einem Lenovo x220t. Beim Start findet es die analogen Lautsprecher und zeigt nur diese in Alsamixer (oder Pavucontrol) an. Wenn ich jedoch einen HDMI-Monitor/Fernseher anschließe, kann ich Ton über die Lautsprecher wiedergeben, z. B. per speaker-test -c 2 -D hw:0,3.

Nach einigem Suchen im Internet bin ich auf dieses Skript gestoßen.

pcm.!default{
type plug
slave.pcm "hdmivol"
}

pcm.hdmi-playback{
type hw
card 0
device 3
}

pcm.hdmivol{
type softvol
slave.pcm "hdmi-playback"
control {
    name "Master"
    card 0
 }
}

Wenn es aufgerufen wird, ~/.asoundrcwird der Ton über meinen HDMI-Fernseher/Monitor ausgegeben. Aber um das Paket auf meinen Laptop umzuschalten, muss ich das Skript umbenennen und mich abmelden und wieder anmelden.

Offensichtlich funktioniert es, aber ich verstehe nicht: 1. Warum kann ich alle Geräte direkt sehen und verwenden (z. B. mit dem Lautsprechertest), aber alsamixer und pulseaudio „sehen“ sie nicht? 2. Kann mir jemand einen Einblick in die Struktur von asoundrc geben? Ich bin mit dem Handbuch nicht weit gekommen und mir ist nicht klar, warum dieses Skript drei Versionen des Geräts hat, die aufeinander verweisen. Und ich vermute, es gibt eine Möglichkeit, einen Alias ​​für hw:0,0 und hw:0,3 anzugeben, mit dem ich sie umschalten kann, ohne mich ab- und wieder anmelden zu müssen.

Dank im Voraus.

verwandte Informationen