Portál AbcLinuxu, 15. července 2025 10:04


Dotaz: Zvuk po síti

7.8.2008 19:25 ja_kral_ll | skóre: 17
Zvuk po síti
Přečteno: 408×
Odpovědět | Admin
Dobrý den

V poslední době experimentuji s TightVNC a XForvardingem po SSH. Jak ale asi víte ani jedno neumožňuje přenos zvuku, pokoušel jsem se rozběhat VLC které by mělo umět snímat zvuk z ALSY a streamovat ho po síti, ale nepřišel jsem na to jak VLC rozběhat ve spolupráci s Alsou, tedy tak aby VLC bral jako input stream ALSU.

V zoufalosti jsem zkoušel nasdílet po NFS /dev/snd z klienta na server kde běží aplikace, což jak jinak nefungovalo.

Nevíte jak streamovat zvuk z PC nebo jak rozběhat VLC s Alsou ?

Díky za jakékoli postřehy
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

7.8.2008 21:28 vencas | skóre: 32
Rozbalit Rozbalit vše Re: Zvuk po síti
Odpovědět | | Sbalit | Link | Blokovat | Admin
Proč ne pulseaudio? Umí si to zjistit (přes property X kořenového okna - jestli se nepletu) na jaký vzdálený kompjútr (kde běží pulseaudio server) se připojit. Víc neporadím, nezkoušel jsem to takhle, ale esd tímto způsobem fungovalo.
8.8.2008 18:29 ja_kral_ll | skóre: 17
Rozbalit Rozbalit vše Re: Zvuk po síti
Díky moc za nakopnutí Pulseaudio funguje výborně. Pokusim se zde popsat jak se mi to podařilo rozchodit a jak to (asi) funguje.

Pro ujasnění :

Server - PC kde bude hudba přehrávána
Klient - PC kde běží aplikace která vydává zvuk

Na Serveru i Klientu běží pulseaudio. Na serveru je démon napojenej na Alsu kde přejímá zvuky od aplikací které neumějí spolupracovat s Pulseaudio a posílá je na Server kde je převezme Pulseaudio a pošle ho do Alsy kde se přehrají.

A teď jak na to. Emergeneme pluginy do Alsy a Pulseaudio

emerge -av media-plugins/alsa-plugins pulseaudio
Vytvořením souboru /etc/asound.conf na Klientu s tímto obsahem zajistíte že Alsa vezme zvuk od aplikace která jí ho pošle (Kaffeine, MPlayer....) a pošle ho Pulseaudio který běží na localhostu.

/etc/asound.conf :

pcm.!default {
    type pulse
}

ctl.!default {
    type pulse
}

Do /etc/pulse/default.pa na Serveru vložte :

load-module module-native-protocol-tcp auth-anonymous=1
Tím zajistíte že pulseaudio bude naslouchat na zvuky přiházející od všech klientů (volba auth-anonymous=1), pokud by vás trápilo že si vaše zvuky muže poslechnout každý přečtěte si něco o Cookies

Do /etc/pulse/client.conf na Klientu vložte :

default-server = adresa_serveru
Tím zajistíte že pulseaudio na klientu bude posílat zvuky serveru.

Po tom všem zrestartujte démony pulseaudio a Alsy

MUŽE SE HODIT :

- Pokud se něco nedaří spusťte pulseaudio z příkazové řádky - pulseaudio -vvv

- Pokud pulseaudio hlásí Device or resource Busy, načítá se více modulů které detekují Alsu (defaultně v Gentoo). Promažte je v /etc/pulse/default.pa

- Můžou blbnout moduly co spolupracují s X, pokud je nepotřebujete zakážte je v /etc/pulse/default.pa

- Návod na Gentoo Wiki

- Ještě jeden návod

Možná se to bude někomu hodit :-)

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.