Arts over network

De la Wiki.lug.ro
Salt la: navigare, căutare

Acesta va fi un ghid la obiect despre cum putem transporta sunetul prin reţea cu ARTS. Este necesar deoarece opţiunile şi comportamentul ARTS nu sunt documentate, cu atât mai mult cu cât ARTS nu mai este intreţinut de mulţi ani, fiind prevăzut a fi înlocuit în KDE 4.x de o nouă arhitectură, compatibilă cu GStreamer.

ARTS este folosit pentru a transporta sunetul către un X-terminal. Este o solutie pe care am gasit-o a fi bună, singura problemă fiind configurarea. Rulează stabil şi sincronizat, nu este nici o problemă să urmărim filme pe terminal.

Ideea este astfel:

1. Pe server ruleaza X-ul şi aplicaţiile care produc sunetele. Aşa că pentru userii care se vor loga de la distanţă (prin "X -query IP") se va defini, într-un fişier care va fi rulat la fiecare logare pe server (eu am pus în ~/.xprofile), o variabilă de mediu:

export ARTS_SERVER="IP_terminal:1601", unde IP_terminal este bineînţeles IP-ul calculatorului care este X-terminal şi către care se vor îndrepta sunetele. În cazul meu, export ARTS_SERVER="193.168.0.2:1601"

"1601" este portul pe care lucrează ARTS, dar îl puteţi redefini, având grijă să îl specificaţi şi pe terminal.

2. Acum aceste aplicaţii vor trimite sunetele catre terminal. Aici trebuie însă să găsească un client care să le asculte. Aceasta se va realiza cu comanda următoare:

ghrt@ghrt:~$/opt/kde/bin/artsd -F 10 -S 4096 -n -u -s 60 -m artsmessage -c drkonqi -l 3 -f -p 1601 &

Din experienţă vă spun că trebuie să lansez de 2 ori această comandă: prima dată am pus-o în rc.local (terminalul porneşte în consolă, unde execută X -query), dar aborteaza cu un mesaj de eroare.

La a doua lansare, după ce KDE rulează, mai o execut încă o dată şi pornesc XMMS-ul în cele 60 de secunde de time-out. (Nu am încercat să pun un timp mai mare de 60 de secunde la parametrul "-s".)

Sper să meargă şi la voi.

3. Din KMix (sau ce mixer preferaţi) din modul grafic nu veţi putea controla sunetul pe terminal, pentru simplul motiv că acestea afectează sunetul de pe server, acolo unde rulează (Se pare că nu a fost implementată şi în KMix opţiunea legată de transportul peste reţea.) Aşadar, eu am folosit mixerul din Gnome, comenzi pe care le-am pus bineînţeles în rc.local:

aumix -v 100, 100

aumix -w 100, 100

4. Userilor care vor avea sunet remote prin ARTS nu trebuie să le daţi permisiuni să ruleze artsd pe server, deoarece KDE-ul va porni câte o instanţă la fiecare 5 secunde (sau asemănător).


Have fun!

by GHRT