Przekierowanie audio może w niektórych przypadkach stać się dość trudne.
Na przykład mój firefox nigdy nie lubił odtwarzać dźwięku przez HDMI, podczas gdy inne oprogramowanie to robiło. Ponieważ używam pulsacyjnego dźwięku, działa jak urok; sprawdź koniec tej odpowiedzi.
Używam Lubuntu 16.04. Może się różnić od pulpitu, ale automatyczne przełączanie nigdy nie występowało domyślnie. Zawsze musiałem kierować strumieniem audio ręcznie. Zasadniczo masz co najmniej dwa wyjścia audio: jeden analogowy audiojack i jeden cyfrowy HDMI, ogólnie na różnych kartach audio.
Trudna droga:
Najpierw musiałem zapoznać się z kartami audio zainstalowanymi na htpc (płyta główna ATI z grafiką na pokładzie i procesorem na płycie):
aplay -l
**** Lista urządzeń sprzętowych PLAYBACK ****
karta 0: ogólna [HD-Audio Generic], urządzenie 3: HDMI 0 [HDMI 0]
Urządzenia podrzędne: 1/1
Urządzenie podrzędne nr 0: Urządzenie podrzędne nr 0
karta 1: SB [HDA ATI SB], urządzenie 0: Analog ALC887-VD [ALC887-VD Analog]
Urządzenia podrzędne: 1/1
Urządzenie podrzędne nr 0: Urządzenie podrzędne nr 0
karta 1: SB [HDA ATI SB], urządzenie 3: ALC887-VD Digital [ALC887-VD Digital]
Urządzenia podrzędne: 1/1
Urządzenie podrzędne nr 0: Urządzenie podrzędne nr 0
i wszystkie możliwe kanały przesyłania strumieniowego audio, które mógłbym skierować dźwięk:
aplay -L
zero
Odrzuć wszystkie próbki (odtwarzanie) lub wygeneruj zero próbek (przechwytywanie)
puls
Serwer dźwięku PulseAudio
hdmi: CARD = Ogólne, DEV = 0
Standard HD-Audio, HDMI 0
Wyjście audio HDMI
dmix: CARD = ogólny, DEV = 3
Standard HD-Audio, HDMI 0
Bezpośrednie urządzenie do mieszania próbek
dsnoop: CARD = Ogólne, DEV = 3
Standard HD-Audio, HDMI 0
Bezpośrednie urządzenie do podglądania próbek
hw: CARD = Ogólne, DEV = 3
Standard HD-Audio, HDMI 0
Bezpośrednie urządzenie sprzętowe bez żadnych konwersji
plughw: CARD = Ogólne, DEV = 3
Standard HD-Audio, HDMI 0
Urządzenie sprzętowe z wszystkimi konwersjami oprogramowania
domyślnie: CARD = SB
HDA ATI SB, ALC887-VD Analog
Domyślne urządzenie audio
sysdefault: CARD = SB
HDA ATI SB, ALC887-VD Analog
Domyślne urządzenie audio
przód: CARD = SB, DEV = 0
HDA ATI SB, ALC887-VD Analog
Przednie głośniki
surround21: CARD = SB, DEV = 0
HDA ATI SB, ALC887-VD Analog
Wyjście surround 2.1 do głośników przednich i subwoofera
surround40: CARD = SB, DEV = 0
HDA ATI SB, ALC887-VD Analog
Wyjście surround 4.0 do głośników przednich i tylnych
surround41: CARD = SB, DEV = 0
HDA ATI SB, ALC887-VD Analog
4.1 Wyjście surround do głośników przednich, tylnych i subwoofera
surround50: CARD = SB, DEV = 0
HDA ATI SB, ALC887-VD Analog
Wyjście 5.0 surround do przednich, środkowych i tylnych głośników
surround51: CARD = SB, DEV = 0
HDA ATI SB, ALC887-VD Analog
Wyjście surround 5.1 do głośników przednich, środkowego, tylnego i subwoofera
surround71: CARD = SB, DEV = 0
HDA ATI SB, ALC887-VD Analog
Wyjście surround 7.1 do głośników przednich, środkowych, bocznych, tylnych i głośnika niskotonowego
hdmi: CARD = SB, DEV = 0
HDA ATI SB, ALC887-VD Digital
Wyjście audio HDMI
dmix: CARD = SB, DEV = 0
HDA ATI SB, ALC887-VD Analog
Bezpośrednie urządzenie do mieszania próbek
dmix: CARD = SB, DEV = 3
HDA ATI SB, ALC887-VD Digital
Bezpośrednie urządzenie do mieszania próbek
dsnoop: CARD = SB, DEV = 0
HDA ATI SB, ALC887-VD Analog
Bezpośrednie urządzenie do podglądania próbek
dsnoop: CARD = SB, DEV = 3
HDA ATI SB, ALC887-VD Digital
Bezpośrednie urządzenie do podglądania próbek
hw: CARD = SB, DEV = 0
HDA ATI SB, ALC887-VD Analog
Bezpośrednie urządzenie sprzętowe bez żadnych konwersji
hw: CARD = SB, DEV = 3
HDA ATI SB, ALC887-VD Digital
Bezpośrednie urządzenie sprzętowe bez żadnych konwersji
plughw: CARD = SB, DEV = 0
HDA ATI SB, ALC887-VD Analog
Urządzenie sprzętowe z wszystkimi konwersjami oprogramowania
plughw: CARD = SB, DEV = 3
HDA ATI SB, ALC887-VD Digital
Urządzenie sprzętowe z wszystkimi konwersjami oprogramowania
Teraz musiałem dowiedzieć się, który z tych kanałów jest używany przez mój kabel HDMI. Dlatego potrzebowałem audioplayera, który pozwolił mi ręcznie przekierować dźwięk, aby przetestować każdy z powyższych kanałów, jeden po drugim, aż dowiedziałem się, który z nich należy do mojego hdmi. Z GUI vlc i szczególnie zuchwały przydają się. Na podstawie CLI moglibyśmy również użyć aplay, ale nie jestem z tym zaznajomiony.
Teraz, po ustaleniu, który kanał należy do mojego kabla HDMI, była to karta 0, urządzenie 3, musiałem utworzyć plik w moim katalogu domowym .asoundrc Asound Wiki z informacją, jakiej karty i jakiego urządzenia użyć.
pcm.snd_card {
wpisz hw
karta 0
urządzenie 3
}
ctl.snd_card {
wpisz hw
karta 0
urządzenie 3
}
Musiałem także uruchomić „alsamixer”. Z F6 wybrałem moją kartę dźwiękową i musiałem nawigować za pomocą klawiszy strzałek do S / PDIF i aktywować (anulować wyciszenie) za pomocą klawisza M.
Po ponownym uruchomieniu audio przez HDMI działało, ale Firefox nie chciał odtwarzać dźwięku przez HDMI.
Krótko mówiąc, teraz używam PulseAudio i jestem z tego bardzo zadowolony.
Łatwa droga
Od czasu zainstalowania PulseAudio obsługa urządzeń audio stała się bardzo łatwa. Proponuję zainstalować:
sudo apt-get install gstreamer1.0-pulseaudio pavucontrol pulseaudio-module-x11
pavucontrol
jest wygodnym GUI do (re) przekierowania twoich strumieni audio na wybrane urządzenie / kanał.
Mam nadzieję, że to pomoże ci znaleźć rozwiązanie.