Ubuntu utilizza sia ALSA che Pulseaudio per controllare l'ingresso e l'uscita audio.
ALSA funge da sistema basato su kernel per connettere il tuo hardware audio al sistema operativo. Tutte le schede audio nel sistema verranno controllate utilizzando i driver e le impostazioni specifiche della scheda. La maggior parte di questo viene eseguita sotto il cofano senza che gli utenti debbano interferire.
Inoltre ALSA offre librerie e strumenti per controllare il nostro sistema audio. Lo strumento che la maggior parte di noi potrebbe aver trovato potrebbe essere alsamixer
un'applicazione terminale semigrafica per controllare il volume del suono e lo stato di silenziamento di tutte le schede e i profili nel nostro sistema.
Siamo in grado di distribuire l'audio alla nostra scheda audio semplicemente utilizzando ALSA senza la necessità di PulseAudio o di altri server audio.
Oltre alla base ALSA, il server audio PulseAudio fornisce ulteriori strumenti per controllare meglio il nostro sistema audio. Questo viene fatto con i moduli per definire i livelli di volume, i profili delle schede audio, i sink di output o le origini di input e altro ancora per un facile accesso dalla maggior parte delle applicazioni Ubuntu.
Come ALSA, anche PulseAudio è progettato per funzionare con il minor numero possibile di interazioni utente. Ogni volta che è necessario modificare il volume, il bilanciamento o i dispositivi di input / output, si tratta di un modulo PulseAudio o di un'applicazione che noi o la nostra applicazione chiamiamo.
Un'alternativa professionale a PulseAudio è il server audio JACK con più opzioni per interagire con il nostro hardware audio e un migliore supporto a bassa latenza. Solo poche applicazioni di produzione musicale prevedono di eseguire JACK, che può essere eseguito in parallelo a PulseAudio.
Integrazione applicazione / desktop
Il sistema audio Ubuntu può essere ulteriormente controllato da applicazioni eseguite dal desktop Unity / GNOME, come un'applet per il controllo del volume.
Laddove una determinata applicazione si avvale del controllo del suono, spetterà agli sviluppatori dell'applicazione. Alcune applicazioni utilizzeranno solo ALSA, alcune richiedono PulseAudio, altre richiedono JACK.
Pertanto, ogni volta che installiamo un altro desktop manager su Ubuntu, potremmo perdere le applicazioni specifiche del desktop per controllare il suono, ma ALSA e PulseAudio funzioneranno in background per il controllo del suono.
Potrebbe essere necessario installare pacchetti aggiuntivi come ad esempio pavucontrol , l'applicazione di controllo del volume basata su pulseaudio GTK.
C'è qualcuno di ALSA o PulseAudio in esecuzione?
Sia ALSA che PulseAudio sono dotati di applicazioni da riga di comando per stampare lo stato del nostro sistema audio.
PulseAudio:
pactl list
ALSA:
aplay -l
Entrambi daranno un errore se il sistema audio non è in esecuzione. ALSA verrà caricato con il kernel, PulseAudio verrà avviato in seguito. In caso contrario, possiamo avviare PulseAudio manualmente dal terminale con:
pulseaudio [options] ## option -D starts the daemon
In caso di problemi audio, ti consiglio di leggere il post scritto da David Henningsson su cose che non dovremmo fare prima di andare oltre per eseguire il debug del nostro problema audio .