Skocz do zawartości

Automatyczne przełączenie dźwięku na HDMI


fraktal15

Rekomendowane odpowiedzi

Chciałbym, aby dźwięk tak jak i obraz automatycznie się przełączał po podłączeniu HDMI. Obecnie po podłączeniu np. telewizora przez port HDMI, z obrazem zasadniczo nie ma większego problemu. Dźwięk natomiast musimy ręcznie przełączyć w applecie "Dźwięk".
 

Znalazłem coś takiego:

https://forum.linuxmint.pl/showthread.php?tid=254

Próbowałem to powtórzyć na Fedora34 - nie działało. Obecnie mam Fedora35. Czy ktoś próbował takiego bądź innych rozwiązań? Macie jakieś propozycje na rozwiązanie tego problemu?

Odnośnik do komentarza
Udostępnij na innych stronach

Chyba będziesz musiał sam coś wymyślić.

Generalnie, dostępne wyjścia uzyskasz poleceniem

pactl list short sinks | cut -f 2

W wyniku tego otrzymasz przykładowo taki wynik:

(to są akurat wyjścia dostępne u mnie, jeżeli masz tylko jedno wyjście musisz pogrzebać w ustawieniach pavucontrol)

alsa_output.pci-0000_00_03.0.hdmi-stereo-extra2
alsa_output.pci-0000_00_1b.0.analog-stereo

Aktualne wyjście otrzymasz poleceniem

LANG=C pactl info | grep 'Default Sink' | cut -d':' -f 2

A ustawiasz poleceniem

pactl set-default-sink <tu wstawiasz wyjście>

np. pierwsze polecenie ustawia jako wyjście domyślne wyjście analogowe a drugie jako hdmi

pactl set-default-sink  alsa_output.pci-0000_00_1b.0.analog-stereo

pactl set-default-sink  alsa_output.pci-0000_00_03.0.hdmi-stereo-extra2

Wszystkie te polecenia wykonujesz jako zwykły użytkownik.

Możesz te polecenia podpiąć pod jakieś ikony czy coś w tym stylu i zmieniać wyjścia ręcznie.

 

  • Upvote 1
Odnośnik do komentarza
Udostępnij na innych stronach

Godzinę temu, sunrise napisał:

Chyba będziesz musiał sam coś wymyślić.

Generalnie, dostępne wyjścia uzyskasz poleceniem


pactl list short sinks | cut -f 2

W wyniku tego otrzymasz przykładowo taki wynik:

(to są akurat wyjścia dostępne u mnie, jeżeli masz tylko jedno wyjście musisz pogrzebać w ustawieniach pavucontrol)


alsa_output.pci-0000_00_03.0.hdmi-stereo-extra2
alsa_output.pci-0000_00_1b.0.analog-stereo

Aktualne wyjście otrzymasz poleceniem


LANG=C pactl info | grep 'Default Sink' | cut -d':' -f 2

A ustawiasz poleceniem


pactl set-default-sink <tu wstawiasz wyjście>

np. pierwsze polecenie ustawia jako wyjście domyślne wyjście analogowe a drugie jako hdmi


pactl set-default-sink  alsa_output.pci-0000_00_1b.0.analog-stereo

pactl set-default-sink  alsa_output.pci-0000_00_03.0.hdmi-stereo-extra2

Wszystkie te polecenia wykonujesz jako zwykły użytkownik.

Możesz te polecenia podpiąć pod jakieś ikony czy coś w tym stylu i zmieniać wyjścia ręcznie.

 

Spróbuję w wolnej chwili co z tego wyjdzie dam znać;)

Odnośnik do komentarza
Udostępnij na innych stronach

Po wpisaniu poniższe komendy:

obraz.png.8b99610a732a1632b7cdfd017a317222.png

ponieważ wyświetliło mi tylko jedną pozycję wszedłem w pavucontrol. W konfiguracji mam do wyboru:

obraz.png.7ba918ed60eee35ee9f1ea24df37e7b3.png

Po wyborze Analogowy dupleks stereo/Wyjscie Analogowe stereo/Dźwięk w zastosowaniach profesjonalnych gra dźwięk z laptopa w innym wypadku nie. Więc ustawiłem każde z nich, ale wtedy za każdym razem w urządzeniach wyjściowych (bo tam powinno być HDMI) wyświetla się tylko:

obraz.png.56c0a23e3d241123441b99fa054036e5.png

Natomiast po wybraniu w konfiguracji:  Wyjście cyfrowe stereo (HDMI) + Wejście analogowe stereo w zakładce Urządzenia wyjściowe:

obraz.png.418ee79410d768ff62225c15a223923f.png

Wydaje mi się, że w konfiguracji brakuje opcji: Wyjście analogowe stereo + Wyjście cyfrowe stereo (HDMI).

 

Tylko co można zrobić, żeby taka się pojawiła bądź ewentualnie jak to ustawić?

 

 

Edytowane przez fraktal15
złe zdjęcia
Odnośnik do komentarza
Udostępnij na innych stronach

8 godzin temu, fraktal15 napisał:

po wpisaniu w terminal tej komendy wyświetliło:


alsa_output.pci-0000_00_1b.0.hdmi-stereo

No i teraz spróbuj  przełączać dźwięk poleceniem

pactl set-default-sink alsa_output.pci-0000_00_1b.0.hdmi-stereo

dla ustawienie odtwarzania przez HDMI oraz poleceniem

pactl set-default-sink  alsa_output.pci-0000_00_1b.0.analog-stereo

dla ustawienia odtwarzania przez wyjście analogowe

Oczywiście wszystko musisz mieć podłączone, przed zmiana wyjścia najlepiej program do odtwarzania całkowicie wyłączyć i uruchomić od nowa.

Odnośnik do komentarza
Udostępnij na innych stronach

Mam ustawione na analog-stereo następnie podłączam HDMI, wpisuję komendę i wyświetla:

pactl set-default-sink alsa_output.pci-0000_00_1b.0.hdmi-stereo
Niepowodzenie: Brak jednostki

jak wpiszę komendę dotyczącą analog-stereo:

pactl set-default-sink  alsa_output.pci-0000_00_1b.0.analog-stereo
[panekadamek@fedora ~]$ 

później włączam program z filmem wg. zaleceń.

Nie zmienia źródła dźwięku.

Odnośnik do komentarza
Udostępnij na innych stronach

6 minut temu, tomcio napisał:

Teoretycznie powinien wystarczyć ten wpis w /etc/pulse/default.pa i restart pulseaudio:

W Fedorze obecnie jest pipewire zamiast pulseaudio i wiele rzeczy się pozmieniało. Moduł o którym wspomniałeś obecnie nie jest wspierany przez pipewire

https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/Migrate-PulseAudio

Odnośnik do komentarza
Udostępnij na innych stronach

[PC@fedora ~]$ wpctl status
PipeWire 'pipewire-0' [0.3.40, PC@fedora, cookie:908985914]
 └─ Clients:
        31. WirePlumber                         [0.3.40, PC@fedora, pid:2210]
        32. WirePlumber [export]                [0.3.40, PC@fedora, pid:2210]
        51. GNOME Shell Volume Control          [0.3.40, PC@fedora, pid:2077]
        52. GNOME Volume Control Media Keys     [0.3.40, PC@fedora, pid:2363]
        53. GSConnect                           [0.3.40, PC@fedora, pid:2402]
        54. xdg-desktop-portal                  [0.3.40, PC@fedora, pid:2862]
        55. Firefox                             [0.3.40, PC@fedora, pid:3160]
        61. wpctl                               [0.3.40, PC@fedora, pid:3695]

Audio
 ├─ Devices:
 │      40. Built-in Audio                      [alsa]
 │  
 ├─ Sinks:
 │  *   43. Built-in Audio Cyfrowe stereo (HDMI) [vol: 1.00]
 │  
 ├─ Sink endpoints:
 │  
 ├─ Sources:
 │  *   44. Built-in Audio Analogowe stereo     [vol: 0.50]
 │  
 ├─ Source endpoints:
 │  
 └─ Streams:
        56. Firefox                                                     
             58. output_FL       > HDA Intel PCH:playback_FL
             60. output_FR       > HDA Intel PCH:playback_FR

Video
 ├─ Devices:
 │      38. Video Capture 3                     [v4l2]
 │      39. Metadata 3                          [v4l2]
 │  
 ├─ Sinks:
 │  
 ├─ Sink endpoints:
 │  
 ├─ Sources:
 │  *   41. Video Capture 3                    
 │  
 ├─ Source endpoints:
 │  
 └─ Streams:

 

Odnośnik do komentarza
Udostępnij na innych stronach

pactl list sinks
43. odpływ
	Stan: RUNNING
	Nazwa: alsa_output.pci-0000_00_1b.0.hdmi-stereo
	Opis: Built-in Audio Cyfrowe stereo (HDMI)
	Sterownik: PipeWire
	Określenie próbki: s32le 2 k 48000 Hz
	Mapa kanałów: front-left,front-right
	Właściciel modułu: 4294967295
	Wyciszenie: nie
	Poziom głośności: front-left: 65536 / 100% / 0,00 dB,   front-right: 65536 / 100% / 0,00 dB
	                  balans 0,00
	Głośność podstawowa: 65536 / 100% / 0,00 dB
	Źródło monitora: alsa_output.pci-0000_00_1b.0.hdmi-stereo.monitor
	Opóźnienie: 0 us, skonfigurowano 0 us
	Flagi: HARDWARE DECIBEL_VOLUME LATENCY SET_FORMATS 
	Właściwości:
		alsa.card = "0"
		alsa.card_name = "HDA Intel PCH"
		alsa.class = "generic"
		alsa.device = "3"
		alsa.driver_name = "snd_hda_intel"
		alsa.id = "HDMI 0"
		alsa.long_card_name = "HDA Intel PCH at 0xd3710000 irq 31"
		alsa.name = "HDMI 0"
		alsa.resolution_bits = "16"
		alsa.subclass = "generic-mix"
		alsa.subdevice = "0"
		alsa.subdevice_name = "subdevice #0"
		api.alsa.card.longname = "HDA Intel PCH at 0xd3710000 irq 31"
		api.alsa.card.name = "HDA Intel PCH"
		api.alsa.path = "hdmi:0"
		api.alsa.pcm.card = "0"
		api.alsa.pcm.stream = "playback"
		audio.channels = "2"
		audio.position = "FL,FR"
		card.profile.device = "7"
		device.api = "alsa"
		device.class = "sound"
		device.id = "40"
		device.profile.description = "Cyfrowe stereo (HDMI)"
		device.profile.name = "hdmi-stereo"
		device.routes = "1"
		factory.name = "api.alsa.pcm.sink"
		media.class = "Audio/Sink"
		device.description = "Built-in Audio Cyfrowe stereo (HDMI)"
		node.name = "alsa_output.pci-0000_00_1b.0.hdmi-stereo"
		node.nick = "HDA Intel PCH"
		node.pause-on-idle = "false"
		object.path = "alsa:pcm:0:hdmi:0:playback"
		priority.driver = "696"
		priority.session = "696"
		factory.id = "18"
		client.id = "32"
		node.driver = "true"
		factory.mode = "merge"
		audio.adapt.follower = ""
		library.name = "audioconvert/libspa-audioconvert"
		object.id = "43"
		node.max-latency = "8192/48000"
	Porty:
		hdmi-output-0: HDMI/DisplayPort (typ: HDMI, priorytet: 5900, grupa dostępności: Legacy 5, niedostępne)
	Aktywny port: hdmi-output-0
	Formaty:
		pcm

 

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...