Jak przenosić dźwięk przez SSH?

16

Czy istnieje sposób przenoszenia dźwięku przez ssh?

Powiedz, że po podłączeniu do zdalnego komputera ssh -Xotworzyłem przeglądarkę i chcę obejrzeć film na youtube. Obecnie mogłem oglądać wideo tylko bez dźwięku. Ale ja też chcę usłyszeć dźwięk. Jak to zrobić?

souravc
źródło
3
Jestem tylko ciekawy: jak oglądasz koryto wideo ssh?
Radu Rădeanu
4
@ RaduRădeanu przekazuje Xserver;)
Braiam
Mówiłem o wideo na YouTube. po podłączeniu po prostu otwieram przeglądarkę i oglądam tam youtube. Działa, ale wyświetla kilka komunikatów o błędach dotyczących dźwięku pulsacyjnego. Próbowałem vlc, aby otworzyć pliki .mp4 i .avi. vlc przestaje działać, mówiąc: „Wyjście audio nie powiodło się: Nie można użyć urządzenia domyślnego„ audio ”: Odmowa połączenia”.
souravc

Odpowiedzi:

8

Jak przenosić dźwięk przez SSH?

Skradziony odpowiedź od grawity w superużytkownicy :

Prosty sposób: uruchom paprefs, przejdź do serwera sieciowego i zaznacz opcję Włącz dostęp sieciowy do lokalnych urządzeń dźwiękowych .

Musisz go zainstalować za pomocą

sudo apt-get install paprefs

Ilekroć korzystasz z SSH z włączonym przekazywaniem X11, programy PulseAudio używają X11 do wykrycia twojego serwera dźwięku (użyj pax11publish lub

xprop -root PULSE_SERVER

przekonać się sam). Po prostu powiedz PulseAudio, aby nasłuchiwał połączeń sieciowych ( paprefsjak opisano powyżej), a wszystkie programy X11 będą mogły z niego korzystać.

(Inni użytkownicy nie będą mieli dostępu do twojego serwera dźwięku, chyba że sam wpuścisz go paprefs. Dane uwierzytelniające są przenoszone w X11PULSE_COOKIE właściwości lub możesz je skopiować ~/.pulse_cookieręcznie).

Należy jednak pamiętać, że strumień PulseAudio nie jest szyfrowany w ten sposób, więc można go używać w domu, ale nie przez Internet.


Nieco bardziej skomplikowany sposób: Włącz dostęp do sieci jak wyżej, ale tuneluj PulseAudio przez SSH TCP. Użyj, pax11publishaby odkryć swój port PulseAudio (zwykle 4713), połącz się

ssh -R > 24713:localhost:4713`

następnie uruchomić

export PULSE_SERVER="tcp:localhost:24713"

Będzie to nieco wolniejsze z powodu narzutu SSH, ale można go bezpiecznie używać przez Internet.

Braiam
źródło
Od @Fusca Software: Tylko komentarz do ostatniej odpowiedzi: Pierwsze przekierowanie przeglądarki za pomocą youtube z trudem będzie działać na połączeniu 1 GBit, więc myślę, że nie będę go używać przez połączenie publiczne (Internet). Po drugie, jeśli oglądasz film na youtube (!!!), nie sądzę, że powinieneś zabezpieczyć strumień audio: D
George Mathioudakis