Log in


Forgot your password?
prijatelji LUGoNSa
gnu.gif
linuxzasve.jpg
hulk.jpg
 
You are here: Home / members / bandigarf / PulseAudio: Zvuk preko mreže

PulseAudio: Zvuk preko mreže

by Andrija Prčić last modified Jan 16, 2009 03:48 PM

Mnogi smo razmišljali o slušanju muzike iz komfora kreveta, posredstvom laptopa, ali muzika koju laptop može da reprodukuje preko svojih uglavnom skromnih zvučnika nije tako umilna za uši. Jedna stvar koju sam ja često radio je ssh + cplay kombinacija (ssh na desktop računar, pa puštanje muzike sa njega), ali tu onda ne postoji mogućnosti korišćenja grafičkih programa za muziku. Onda je bilo i ludih ideja da se preko RDP-a ili VNC-a kačim na desktop računar, ali je to suviše nezgrapno rešenje.

 

Zar ne bi bilo lepo kada bi mogao zvuk na laptopu da se prenese preko lokalne mreže na drugi računar i tamo reprodukuje, a na laptopu u krilu se koristi omiljeni program? Naravno da bi, a to i može da se uradi. Čak nije ni komplikovano.

 

Oba računara:

 

Za početak, instalirati pulseaudio. Mnoge multimedijalne biblioteke imaju direktnu podršku da zvuk šalju na PulseAudio server, tako da sam globalno uključio pulseaudio USE flag. Zatim je potrebno prekompajlirati sve pakete koji imaju ovaj flag.

 

Desktop računar (onaj koji će da reprodukuje zvuk):

 

Omiljenim tekst editorom otvoriti /etc/pulse/system.pa i dodati liniju:

load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1;192.168.0.0/16;10.0.0.0/24 

Ovim će njegov sistemski PulseAudio daemon da sluša na gore navedenim opsezima IP adresa. Naravno, treba ga i pokrenuti:

# /etc/init.d/pulseaudio start

Da bi se automatski pokretao u init sekvenci, potrebno ga je ubaciti u neki nivo (preporučuje se da to bude default):

# rc-update add pulseaudio default

 

Laptop (na njemu se pušta zvuk koji se prosleđuje na desktop računar):

 

Osim što se ima instaliran PulseAudio, treba imati i pravo pristupa njemu. Potrebno je da se korisnik nalazi u pulse i pulse-access grupama:

# gpasswd -a korisničko_ime pulse
# gpasswd -a korisničko_ime pulse-access

 

U datoteku ~/.pulse/client.conf dodati (naravno, promenite adresu na odgovarajuću):

default-server = 192.168.1.3

 

Pošto nisu svi programi prilagođeni za PulseAudio, postoji ALSA dodatak koji sav dobijeni zvuk prosleđuje na PulseAudio server. Instalira se alsa-plugins.

A zatim treba i aktivirati pomenuti dodatak. Fajl ~/.asoundrc treba da sadrži sledeće:

pcm.pulse {
    type pulse
}

ctl.pulse {
    type pulse
}

pcm.!default {
    type pulse
}

#ctl.!default {
#    type pulse
#}

Poslednje sam ipak zakomentarisao pošto će inače podrazumevani mikser zvuka biti samo jedna PulseAudio kontrola, i gubi se mogućnost finog podešavanja jačine svih izvora zvuka. Ukoliko želite jednokratno da podesite baš tu PulseAudio kontrolu, a ne želite da je podrazumevana (zakomentarisana je, kao kod mene), to je moguće sa:

# alsamixer -D pulse

Nakon ovoga bi svi novo-pokrenuti programi na laptopu trebali da se oglase preko zvučnika na desktop računaru.

 

PulseAudio pravi konstantan protok oko 190kB/s, što je i očekivano. Za sam nekompresovani zvuk standardnog kvaliteta je potrebno:

44.100 (uzoraka po sekundi) * 2 (kanala) * 16 (bita po uzorku) / 8 (bita po bajtu) = 176.000B/s

a na to treba dodati još malo za signalne i kontrolne pakete.

Document Actions