Risolvere i problemi audio di Skype con Linux (AGGIORNATO con soluzione alternativa)

Qualche giorno fa ho installato l’ultima versione di Linux Mint, la 16 (codename Petra), come avrete notato dalla recente guida post installazione. Tra i programmi consigliati, c’è Skype, che io uso e ho quindi installato. Bene, con Mint ho avuto una piccola sorpresina, l’audio di Skype non funziona.

Audio Skype

Avviando Skype, appena parte qualche suono, tipo una notifica, le cuffie/casse iniziano a gracchiare e non la smettono più, a meno di non riavviare il server audio (PulseAudio) o Skype.

Dopo aver ravanato qualche giorno e dopo varie ricerche su internet, ho risolto il problema e condivido la soluzione qui.

Il problema è nato con le ultime versioni del server audio PulseAudio, che è passato da una gestione guidata da interruzioni, ad una basata su di un timer. Questo nuovo approccio genera dei problemi con alcune applicazioni non aggiornate qualora nel sistema si utilizzino i driver ALSA, come l’audio assente o che gracchia di Skype.

Nella guida aggiornata (Grazie Checco, mi raccomando, segnalate qualsiasi problema nei commenti) vi propongo due soluzioni, la vecchia, indicata come Soluzione 1 e che a questo punto vi sconsiglio e la nuova, indicata come Soluzione 2, provate e fatemi sapere 😉



SOLUZIONE 1 (sconsigliata,può generare problemi con programmi che usano il nuovo sistema)

Per risolvere il problema, basta ritornare al vecchio sistema che fa uso delle interruzioni invece del timer.

Per prima cosa, assicuratevi che state utilizzando effettivamente ALSA, altrimenti, pur seguendo la guida, potreste non risolvere. Per fare questo aprite il terminale e date il seguente comando:

cat /proc/asound/version

Se vi appare qualcosa del tipo: Advanced Linux Sound Architecture Driver Version k3.11.0-12-generic (l’ultima parte quasi sicuramente è diversa, dipende da come è stato installato ALSA e dalla versione che effettivamente avete, ma la prima parte è abbastanza esplicita Advanced Linux Audio Architecture…..ALSA 😉 )

Ora procediamo con le modifiche a PulseAudio, date da terminale il seguente comando:

gksudo gedit /etc/pulse/default.pa

e inserite la vostra password. Questo comando apre il file /etc/pulse/default.pa nell’editor di testo con privilegi di amministratore, per poterlo modificare.

Individuate la stringa:

load-module module-udev-detect use_ucm=0

commentatela anteponendole un # (asterisco) e al suo posto inserite quet’altra:

load-module module-udev-detect tsched=0

(Potreste sostituire direttamente use_ucm=0 con tsched=0, ma così in caso di problemi avremo la stringa originale da poter ripristinare 😉 ) Salvate il file cliccando su Salva e potete chiudere Gedit.

default.pa in GEdit

Ora riavviate il server audio dando da terminale

killall pulseaudio

Questo comando forza la chiusura dei relativi processi, il server dovrebbe riavviarsi automaticamente, se non accade, sempre da terminale date:

pulseaudio --start

Se Skype era aperto, chiudetelo e riavviatelo, ora dovrebbe funzionare correttamente. In caso di problemi con altre applicazioni, potete riaprire il file, cancellare la stringa aggiunta e decommentare quella originale.

ATTENZIONE: con i futuri aggiornamenti di Skype, il problema potrebbe essere risolto, per curiosità potreste provare a ripristinare il file di configurazione di PulseAudio e vedere cosa succede a Skype 😉



SOLUZIONE 2 (consigliata)

Grazie alla segnalazione dell’utente Checco (grazie), tramite i commenti, sono venuto a conoscenza del fatto che tornando al vecchio sistema basato sulle interruzione, l’audio in Skype funziona, ma quello di altri programmi, come Audacity, inziza a gracchiare e ha dare problemi di instabilità al programma stesso.

La soluzione è quella di lasciare nel file /etc/pulse/default.pa la stringa originale (quindi eliminate o commentate, anteponendo un asterisco #, quella inserita seguendo la Soluzione 1), cioè

load-module module-udev-detect use_ucm=0

Ora direte “Grazie, ma così l’audio di Skype è pessimo, se va bene, non si sente nulla”, vero, ma basta avviare Skype con i parametri corretti e l’audio funzionerà a meraviglia 😀

Per fare ciò, assicuratevi che Skype non sia avviato, se si chiudetelo, aprite il terminale e date il seguente comando:

PULSE_LATENCY_MSEC=60 skype

Si aprirà Skype e come potrete notare dal suono di avvio, l’audio funzionerà a meraviglia 😀
Ogni volta, per aprire Skype e farlo funzionare decentemente, bisogna passare dal terminale? Certo che no, ora vedremo come modificare un file per far avviare Skype (col classico click sull’icona) con i parametri corretti.

Aprite il terminale e fate una copia di backup del file /usr/share/applications/skype.desktop col seguente comando:

cp /usr/share/applications/skype.desktop /usr/share/applications/skype.desktop.bak

Ora apritelo nell’editor di testo (nel nostro caso GEdit) come root col solito comando:

gksudo gedit /usr/share/applications/skype.desktop

Individuate la stringa

Exec=skype %U

e sostituitela con questa

Exec=env PULSE_LATENCY_MSEC=60 skype %U

Salvate il file. Aprite Skype tramite l’icona del launcher, o dove essa si trovi e vedrete che funzionerà a meraviglia 😀

Nel caso voleste ripristinare la versione originale del file basta dare in successione i seguenti comandi da terminale:

rm /usr/share/applications/skype.desktop
mv /usr/share/applications/skype.desktop.bak /usr/share/applications/skype.desktop

Altra soluzione sarebbe quella di passare ad una versione precedente alla 4 di PulseAudio, ma perchè se per i manutentori dei vari pachetti (in questo caso Skype) si tratta solo di modificare una stringa? (In attesa di una versione aggiornata e compatibile con PulseAudio 4.x).

ATTENZIONE: aggiornando Skype, molto probabilmente si perderà la modifica, nel caso vi consiglio di avviare prima Skype e provarlo (magari avranno risolto il problema a monte), nel caso di problemi, andate a modificare il file in questione come indicato 😉

 


Per configurare al meglio le impostazioni dell’audio, potete scaricare l’applicazione pavucontrol, cliccando qui, oppure dando da terminale:

sudo apt-get install pavucontrol

Tra le applicazioni installate vi ritroverete Regolazione del volume PulseAudio, avviatela e controllate che tutto sia impostato correttamente.

Regolazione del Volume PulseAudio

Così ho risolto il problema su Linux Mint 16 Petra, nei miei precedenti trascorsi con Ubuntu 13.04 e elementary OS non ho avuto problemi del genere, ma nel caso voi avreste qualche problemino del genere, potete tranquillamente provare,  seguendo la guida considerando che in base alla distribuzione alcuni comandi variano 😉 (Per Ubuntu potete seguirla pari pari).

È tutto, alla prossima 😀