Per chi non lo conoscesse, citando Wikipedia, PulseAudio è un sound server multipiattaforma che tra le sue principali caratteristiche presenta:
- controlli del volume sulle applicazioni;
- un'architettura di plugin estendibile con supporto ai moduli caricabili;
- compatibilità con molte applicazioni audio;
- supporto per multiple fonti audio.
Partiamo con le dovute precisazioni, citazioni e ringraziamenti: questa guida nasce per gran parte grazie ai preziosissimi consigli ed all'aiuto del mai troppo venerato lihin (Lacunoso) che ha avuto la pazienza di seguirmi nella mia "pulsizzazione". In percentuale minore, l'articolo gode del frutto dello studio personale della documentazione reperibile in rete che vi invito a consultare voi stessi, sia in caso di dubbi, sia nel caso vogliate approfondire la vostra conoscenza in merito.
Le fonti dalle quali ho maggiormente attinto (e dunque alle quali vanno i miei ringraziamenti) e che mi sento di consigliarvi sono:
- ovviamente, la documentazione ufficiale;
- il Wiki di Arch;
- il Wiki di Ubuntu;
- il Forum di Debianizzati;
- il Forum di Linux Mint;
Finalmente, bando alle ciance, iniziamo!
Installazione
Innanzitutto, installiamo tutto il necessario con:# aptitude install pulseaudio libsdl1.2debian-pulseaudioaccettando tutte le dipendenze e risolvendo il conflitto di pacchetti che ci trovermo davanti così come proposto da Aptitude (ossia disinstallando lidsdl1.2debian-alsa).
Se come DE usiamo Gnome, aggiungiamo anche
# aptitude install pulseaudio-module-gconfper un discorso di integrazione con Gconf.
Per quanto riguarda i pacchetti strettamente necessari, abbiamo già concluso!
Esistono tuttavia tutta una serie di moduli aggiuntivi (bluetooth, jack, lirc, ecc.) per svariate esigenze che lascio al vostro approfondimento, non essendo fondamentali e non avendoli io personalmente utilizzati.
È possibile inoltre avere a disposizione due strumenti, anch'essi del tutto opzionali, pavumeter e pavucontrol, per la gestione di PulseAudio. Francamente, ho trovato molto inutile il primo ed al contrario molto utile il secondo e ne consiglio caldamente l'installazione per una comoda gestione dei flussi audio.
Bene, per quanto riguarda l'installazione è davvero tutto. Ora passiamo alla configurazione.
Configurazione
Tra le applicazioni d'avvio, se usiamo Gnome, dovremmo trovare due nuovi programmi: Sistema sonoro PulseAudio e PulseAudio Sound System KDE Routing Policy. Il primo avvia il nostro PulseAudio; riguardo il secondo non ho approfondito e potrei sbagliare, ma dovrebbe garantire la compatibilità con applicazioni KDE (es. Minitube): personalmente l'ho disattivato.Più in generale, su qualsiasi DE, per avviare PulseAudio al login è necessario inserire tra i processi d'avvio la voce:
start-pulseaudio-x11Preso coscienza del fatto che PulseAudio sia attivo all'avvio del nostro sistema, assicuriamoci che l'audio funzioni bene anche con il plugin flash, andando ad editare (o creare) il file /etc/asound.conf con il nostro editor di testo preferito, ad esempio con:
# leafpad /etc/asound.confed incolliamoci dentro il seguente testo:
pcm.pulse { type pulse } ctl.pulse { type pulse } pcm.!default { type pulse } ctl.!default { type pulse }A questo punto impostiamo anche Gstreamer affinchè utilizzi Pulseaudio, nonostante questo passaggio possa risultare in concreto superfluo (ma male di sicuro non fa).
Apriamo gstreamer-properties e scegliamo PulseAudio Sound Server come plugin sia in ingresso, sia in uscita.
In alternativa, possiamo ottenere lo stesso risultato scrivendo nel terminale
$ gconftool-2 -t string --set /system/gstreamer/0.10/default/audiosink pulsesink $ gconftool-2 -t string --set /system/gstreamer/0.10/default/audiosrc pulsesrcAlcune applicazioni (ad esempio Rhythmbox), tuttavia, ignorano queste impostazioni e per maggiore sicurezza sarà quindi buona norma impostare anche
$ gconftool-2 -t string --set /system/gstreamer/0.10/default/musicaudiosink pulsesinkDal punto di vista delle singole applicazioni, ricordiamoci sempre di impostare PulseAudio come plugin d'uscita nelle loro preferenze, mentre invece se usiamo il popolare riproduttore multimediale Mplayer (o uno dei suoi frontend come SMplayer o Gnome Mplayer) sarà necessario modificare a mano il file di configurazione /etc/mplayer/mplayer.conf, individuando la seguente stringa e modificandola come evidenziato in grassetto:
# Specify default audio driver (see -ao help for a list). ao=pulse,Se preferite una configurazione "per-user", non soggetta ad eventuali aggiornamenti del programma, inserite la stessa stringa in ~/.mplayer/config.
Il solito Doc mi fa notare che con alcuni frontend per Mplayer potrebbe questo essere passaggio non necessario, ma la mia esperienza con SMPlayer, il quale non aveva modificato autonomamente i file, mi porta a consigliarvi di controllare.
Infine, parliamo dell'applet del volume di Gnome: ora che avete installato PulseAudio ne avrete a disposizione due, quella vecchia di Alsa, che dovrete disabilitare dal pannello e della quale potrete successivamente richiamare il menu da terminale, scrivendo
$ gnome-volume-control.gstreamere quella nuova di Pulse, anch'essa consultabile tramite terminale con
$ gnome-volume-control.pulsema che più comodamente vi consiglio di far partire in automatico al login, per averla sempre nel pannello, inserendola tra le applicazioni d'avvio con comando
gnome-volume-control-applet
Risoluzione di eventuali problemi
Ovviamente, vi auguro di non dover leggere questa sezione, ma, come tutti sanno, a volte non tutte le ciambelle riescono con il buco.Di seguito, dunque, vi proporrò alcune possibili soluzioni ai problemi più noti.
- Anomalie nel range del volume (i.e. a 7 si sente pochissimo, a 9 spacca le casse, oppure audio che non sale oltre un tot percento): questo è un problema che abbiamo personalmente riscontrato sull'eeepc sia io, sia l'amico Doc.
Per risolvere, aprite il file /etc/pulse/default.pa, cercate la voce
load-module module-udev-detect
ed infine modificatela in
load-module module-udev-detect ignore_dB=1
- L'audio "gracchia": le cause, ahimè, possono essere molteplici, ma, dall'idea che mi sono fatto, possiamo principalmente correre ai ripari attraverso i seguenti due approcci differenti.
Una prima possibilità è che vi accorgiate che l'audio "gracchia" in concomitanza dei picchi di utilizzo della CPU. In questo caso apriamo il solito /etc/pulse/default.pa, cerchiamo la stringaload-module module-udev-detect
e modifichiamola inload-module module-udev-detect tsched=0
La seconda possibilità, indipendente dall'utilizzo della CPU, consiste nell'aprire /etc/pulse/daemon.conf e provare a modificarlo nelle righe (solitamente in fondo al file):; default-fragments = 4 ; default-fragment-size-msec = 25
sostituendo a "4" e "25" dei differenti valori numerici: purtroppo non c'è una regola fissa e dipende da scheda audio a scheda audio. Per non brancolare completamente nel buio, vi rimando al topic nel forum di Mint linkato ad inizio guida. - I tasti funzione su Openbox ed LXDE non funzionano più: se siete tra coloro i quali, per la gestione dei tasti funzione del volume in Openbox e in LXDE, sono ricorsi agli script proposti nel nostro articolo Openbox: Notifiche-osd del Volume e la Luminosità vi sarete subito accorti che con PulseAudio lo script del volume non funziona più.
Non disperate! Il nostro intrepido Doc ha già provveduto a modificare lo script. Lo trovate qui.
Con questo script modificato, i tasti fn torneranno a fare il loro dovere! - Problemi con il microfono: l'amico Melko mi segnala che con PulseAudio a volte può succedere che il microfono interno dell'eeepc possa dare qualche problema. Nel caso venisse correttamente riconosciuto, ma non funzionasse, una possibile soluzione è aprire le impostazioni (tramite pavucontrol ad esempio) ed alla voce riguardante il microfono, nel caso ci fossero due colonnine (come fosse stereo per capirci) abbassarne una a 0.
- Audio bloccato su "muto": ho notato che talvolta, se si accende la macchina con il volume azzerato, non si riesce a "sbloccare il muto" (scusate ma non trovo definizione migliore pr farmi capire) tramite i tastini fn e ci si riesce tramite l'applet del volume solo dopo diversi tentativi. Dovrò indagare meglio, ma credo/temo che questo sia un effetto collaterale della soluzione proposta sopra per il problema #1.
Se dovesse succedere anche a voi, vi consiglio di aprire alsamixer nel terminale con:$ alsamixer
a questo punto dovreste avere davanti a voi una colonna "Master" con una doppia emme (MM) alla base: premete il tasto "m" della vostra tastiera e MM diventerà uno 00. In questo modo avrete attivato l'audio e sarete in grado di attivarlo/disattivarlo sia via tasti fn, sia via applet del volume.
Vi ricordo infine che tra le varie prove di configurazione è possibile killare pulseaudio digitando nel terminale
$ pulseaudio -ke riavviarlo con
$ start-pulseaudio-x11oppure potete fare tutto in una botta con
$ killall pulseaudio
Questo è tutto! Se la guida vi è piaciuta, onoratela ascoltando un po' di sano Heavy Metal con la vostra Debian e ricordatevi di pogare come un pinguino!
Due note.
RispondiElimina1) Perché modificare le impostazioni di mplayer a livello di sistema? Un aggiornamento, e siamo punto e a capo. Consiglio di agire tramite frontend (smplayer) oppure editando ~/.mplayer/config
2) "pulseaudio -k" killa e riavvia il sistema audio. Non credo sia necessario dare start-pulseaudio-x11. Anzi, per essere precisi, dai "killall pulseaudio" e fa tutto lui: provato personalmente!
Bel tip! Unica pecca di PulseAudio è la pesantezza rispetto ad Alsa, cosa che a volte mi crea dei rallentamenti, soprattutto nei video...
RispondiElimina@Doc
RispondiEliminaGrazie Doc!
Riguardo Pulseaudio non sono sicuro sia sufficiente andare di frontend. Ho indicato il file di sistema per non avere una configurazione "per user".
pulseaudio -k ti posso assicurare che non riavvia il sistema audio...killall pulseaudio, in effeti, non l'ho mi provato ma se mi dici che riavvia ovviamente mi fido! Tuttavia, start-pulseaudio-x11 è la certezza assoluta e questa certezza è fondamentale quando si fanno le prove che indico nell'ultima parte dell'articolo!
@AlfiereNero
RispondiEliminaGrazie Alf!!! Ad esser sincero, non ci ho fatto caso...ci starò attento!
ottima guida da mettere nei bookmarks :D
RispondiElimina@picchio
RispondiEliminaTi ringrazio, sei sempre molto gentile.
Appena provato il killall pulseaudio e confermo che tutto si riavvia dopo un secondo.
RispondiEliminaGuarda bene il file ~/.mplayer/config e correggi la guida. Tra l'altro, quel file dovrebbe essere configurabile tramite gnome-mplayer.
Infine, poco perspicua la sezione relativa all'autostart, a mio avviso da rivedere del tutto, visto che non comprendo cosa c'entri gnome-volume-control.pulse: sul mio autostart uso direttamente gnome-volume-control-applet.
C'è anche un typo, ma non ricordo più dove.
Sì in effetti sulle applet c'è qualcosa da rivedere, stasera mi ci dedico.
RispondiEliminaAd ogni modo riguardo killall o altro si tratta solo di diversi metodi, il risultato è sempre lo stesso; per mplayer continuo a credere che la soluzione migliore sia quella del file di configurazione di sistema.
Articolo rivisto, integrato e corretto.
RispondiEliminaciao! buona guida,
RispondiEliminapremetto che ho seguito la guida ed ho fatto tutto tranne l'installazione di libsdl1.2debian-pulseaudio... funziona tutto bene tranne il fatto hce in alcuni filmati flash sento una distorione metallica... può essere questo il problema?
@art3k
RispondiEliminaCiao art3k, grazie per i complimenti.
Mi hai ricordato che devo aggiornare la guida poichè questa va bene per Squeeze, ma per Wheezy e Sid la situazione è un po' cambiata e libsdl1.2debian-pulseaudio (e simili) è stato sostituito da libsdl1.2debian. Quest'ultimo sì, se non già installato, lo devi installare.
Per il flash non saprei, strano...sei sicuro di aver configurato /etc/asound.conf come da guida?
Se non risolvi, prova a fornirci qualche dettaglio in più (ramo debian, 32 o 64 bit, versione flash installata...)
Ciao fammi sapere ;)