SSH jako karta dźwiękowa

Instalacja i konfiguracja oprogramowania sieciowego.
klawiszowy
Sędziwy Jeż
Sędziwy Jeż
Posty: 44
Rejestracja: 21 cze 2008, 13:53
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: GNOME
Architektura: x86
Kontakt:

SSH jako karta dźwiękowa

Post autor: klawiszowy »

Mam pomysł, ale nie wiem jak go zrealizować:
Chciałbym oglądać filmy na laptopie, a dźwięk mieć na wieży podłączonej do serwera.
Po prostu chciałbym, żeby serwer robił za "zdalną kartę dźwiękową".
W sieci SSH śmiga ślicznie i czy taka konstrukcja jest możliwa??
[ciach]
bogaczew
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 211
Rejestracja: 13 gru 2006, 21:12
Płeć: Mężczyzna
Wersja Ubuntu: 11.04
Środowisko graficzne: GNOME
Architektura: x86_64
Kontakt:

Odp: SSH jako karta dźwiękowa

Post autor: bogaczew »

z laptopa zrób ssh na serwer z forwardowaniem Xów

Kod: Zaznacz cały

ssh -Y serwer
na laptopie dodaj serwer do acces listy serwera X

Kod: Zaznacz cały

xhost + serwer
na serwerze ustaw display na laptopa

Kod: Zaznacz cały

export DISPLAY=laptop:0.0
(uwaga, cyferki 0.0 mogą być inne, sprawdzisz jakie robiąc na laptopie echo $DISPLAY)

na serwerze uruchom film
cb1986ster
Sędziwy Jeż
Sędziwy Jeż
Posty: 66
Rejestracja: 10 cze 2008, 20:59
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: Inne
Architektura: x86

Odp: SSH jako karta dźwiękowa

Post autor: cb1986ster »

Możesz też zainstalować PulseAudio, które pozwala na odtwarzanie dźwięku po sieci, bez ssh.
Awatar użytkownika
el.pescado
Zakręcona Traszka
Zakręcona Traszka
Posty: 734
Rejestracja: 26 maja 2005, 11:43
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: GNOME
Architektura: x86
Kontakt:

Odp: SSH jako karta dźwiękowa

Post autor: el.pescado »

@bogaczew: W ten sposób będziesz forwardować jedynie X-y, czyli obraz, w dodatku wydajność takiego rozwiązania może pozostawiać sporo do życzenia.

Żeby dźwięk przesyłać przez sieć, lepiej odtwarzać film na lokalnym komputerze, a sam dźwięk przesyłać przez choćby PulseAudio, jak napisano wyżej. Ewentualnie może być inny serwer dźwięku, jak ESD czy MAS.

EDIT:
EDIT: poprawka: głupim, przecież jeżeli film odtworzy się na serwerze, dźwięk będzie grał na serwerze;) Jednak problem wydajności pozostaje (obraz potrzebuje więcej pasma niż dźwięk).
bogaczew
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 211
Rejestracja: 13 gru 2006, 21:12
Płeć: Mężczyzna
Wersja Ubuntu: 11.04
Środowisko graficzne: GNOME
Architektura: x86_64
Kontakt:

Odp: SSH jako karta dźwiękowa

Post autor: bogaczew »

mój sposób jest na tyle prosty że można w minutę sprawdzić czy wydajność będzie OK. u mnie jest. a jak nie będzie, to można kombinować dalej. nie chciałoby mi się konfigurować systemu tak żeby dźwięk z wybranych programów leciał na serwer. ale jak kto lubi...
cb1986ster
Sędziwy Jeż
Sędziwy Jeż
Posty: 66
Rejestracja: 10 cze 2008, 20:59
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: Inne
Architektura: x86

Odp: SSH jako karta dźwiękowa

Post autor: cb1986ster »

Z własnego doświadczenia wiem, że PulseAudio się do czegoś takiego sprawdza. A konfiguracja nie zabiera więcej jak 5~10 minut. http://lookoutman.wordpress.com/2008/10 ... buntu-804/ - jak zainstalować PA(ja w 9.04 nie musiałem nic z FF robić) + na serwerze modyfikujesz pliki /etc/default/pulseaudio i /etc/pulse/default.pa, aby włączyć PA jako daemona i ustawić dostęp przez sieć.
klawiszowy
Sędziwy Jeż
Sędziwy Jeż
Posty: 44
Rejestracja: 21 cze 2008, 13:53
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: GNOME
Architektura: x86
Kontakt:

Odp: SSH jako karta dźwiękowa

Post autor: klawiszowy »

bogaczew, w Twoim sposobie są lagi jak stąd do Pekinu...
cb1986ster wyjaśnisz dokładnie jak to zrobić dla mojego przypadku??
dzięki wszystkim za zainteresowanie problemem...
[ciach]
cb1986ster
Sędziwy Jeż
Sędziwy Jeż
Posty: 66
Rejestracja: 10 cze 2008, 20:59
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: Inne
Architektura: x86

Odp: SSH jako karta dźwiękowa

Post autor: cb1986ster »

1. Zainstaluj PA na serwerze i kliencie wg:
http://lookoutman.wordpress.com/2008/10 ... buntu-804/
W moim przypadku nie musiałem nic robić po dodaniu do grup użytkowników.

2. Jeśli coś nie działa sprawdź:
viewtopic.php?t=91204&highlight=pulse+audio

Dalej przejdź jeśli wszystko jest OK, na obu maszynach.

3. Włącz applet wybierania urządzenia (Programy->Dźwięk i obraz->PulseAudio Device Chooser), najwygodniej jest skonfigurować go, aby włączał się automatycznie( klika na ikonę na tacce -> Preferencess... -> Zaznacz box`a przy "Start applet on session login" ). Bardzo ułatwia życie. Innym ciekawym ułatwiaczem jest applet do ustawiania głośności poszczególnych aplikacji wprost z paska http://www.ubucentrum.net/2009/07/kontr ... lnych.html
4. NA SERWERZE: W pliki/etc/default/pulseaudio zmień linie:

Kod: Zaznacz cały

PULSEAUDIO_SYSTEM_START=0
na

Kod: Zaznacz cały

PULSEAUDIO_SYSTEM_START=1
5. NA SERWERZE: Sprawdź czy system wie że ma startować PA(prawie na pewno wie, ale i tak można sprawdzić jeśli coś nie idzie), czyli sprawdź czy w katalogu /etc/rc2.d/ masz plik będący dowiązaniem do skryptu startowego w /etc/init.d. Najłatwiej wykonaj:

Kod: Zaznacz cały

ls -l /etc/rc2.d/*pulse*
Powinno pojawić się coś w stylu:

Kod: Zaznacz cały

lrwxrwxrwx 1 root root 20 2009-09-06 18:36 /etc/rc2.d/S50pulseaudio -> ../init.d/pulseaudio
Jeśli nie ma to wykonaj:

Kod: Zaznacz cały

sudo ln -s /etc/init.d/pulseaudio /etc/rc2.d/S50pulseaudio
aby utworzyć.
5. NA SERWERZE:
W pliku /etc/pulse/default.pa zmień linie:

Kod: Zaznacz cały

#load-module module-esound-protocol-tcp
#load-module module-native-protocol-tcp
#load-module module-zeroconf-publish
na powiedzmy:

Kod: Zaznacz cały

load-module module-esound-protocol-tcp auth-anonymous=1 auth-ip-acl=127.0.0.1;192.168.0.0/24
load-module module-native-protocol-tcp auth-anonymous=1 auth-ip-acl=127.0.0.1;192.168.0.0/24
load-module module-zeroconf-publish
Oczywiście zmień opcje dostępu na odpowiednie dla Ciebie. W moim przypadku mam bezpieczną sieć w domu dlatego pozwalam sobie na wolny dostęp z całej sieci 192.168.0.0. Jeśli nie obawiasz się, że ktoś będzie odtwarzał coś na Twoim sprzęcie na złość Tobie i że nie będzie podłączać się pod Twój mikrofon ;) to możesz również udostępnić anonimowy dostęp dla całej sieci.
6. NA SERWERZE: Przeloguj się na konsole tekstową i:
- Zatrzymaj GDM`a (wyloguje Cię sesji graficznej, więc jeśli coś robisz to zapisz to!)

Kod: Zaznacz cały

sudo /etc/init.d/gdm stop
- Uruchom serwer PulseAudio

Kod: Zaznacz cały

sudo /etc/init.d/pulseaudio start
- Uruchom znów GDM`a

Kod: Zaznacz cały

sudo /etc/init.d/gdm start
Od tego momentu serwer powinien startować razem z systemem. Nawet jeśli nie zaloguje się nikt to serwer będzie działać.
6. NA KLIENCIE: Kliknij na aplet, na tacce systemowej -> Default Server -> pulse@nazwa_serwera
Od tego momentu, aż do końca sesji(lub przełączenia się na serwer o nazwie Default), nowo odtwarzany dźwięk będzie słyszany na serwerze, a nie kliencie-laptopie. Jeśli wcześniej uruchomiłeś jakiś odtwarzacz lub inne źródło dźwięku to nie przełączy się ono na serwer więc pamiętaj o wyborze serwer przed włączeniem muzyki ;)
ODPOWIEDZ

Wróć do „Sieci, serwery, Internet”

Kto jest online

Użytkownicy przeglądający to forum: Bing [Bot] i 15 gości