Perché hai bisogno di PulseAudio?


13

Sto leggendo e cercando di capire perché qualcuno dovrebbe voler utilizzare Pulse Audio e non riesco a capire. Ho letto questo https://www.linux.com/news/hardware/drivers/8100-why-you-should-care-about-pulseaudio-and-how-to-start-doing-it , e sono ancora non ottenere una risposta convincente. Ho un setup, con una scheda audio. (Non ho bisogno di multiplexare suoni da o verso diverse schede audio). So che tutte le applicazioni sono scritte con diverse API, ALSA, OSS, JACK ecc. Quindi, se configuro tutti quei framework per instradare il suono attraverso l'audio dell'impulso, quale vantaggio ottengo, rispetto a consentire a tutti quei framework di parlare direttamente con la scheda audio autista? Inoltre, non vedo che Pulse Audio abbia la sua API applicazione. Quindi devo scegliere comunque un framework (come ALSA). Grazie


5
Per prima cosa, so di avere un problema in cui se il programmaA utilizzava la scheda audio, il programma B non poteva usarla fino alla chiusura del programmaA. Anche se il programmaA non lo utilizzava più. Nel mio caso, questo genere di cose è scomparso non appena è nato pulseaudio. Forse avrei potuto configurare ALSA o OSS per consentire anche a più programmi l'accesso alla scheda audio, ma non avrei mai capito come.
Terdon

2
Loro (pulseaudio) hanno pensato che la soluzione a molti sistemi audio su Linux fosse quella di creare un altro sistema audio.
ctrl-d

Se questo era un sistema in grado di emulare gli altri o se avesse un'interfaccia più semplice, sarebbe la soluzione. Sembra che questo non sia stato raggiunto.
schily,

Risposte:


17

Si tratta di multiplexing.

Non ho bisogno di multiplexare i suoni da o verso diverse schede audio

Ah, ma lo fai! Se vuoi essere in grado di riprodurre l'audio da due fonti contemporaneamente, per qualsiasi motivo, hai bisogno del multiplexing.

OSX e Windows gestiscono il multiplexing nel kernel (ma ancora nel software), motivo per cui questo non arriva mai / raramente su quelle piattaforme.

Tuttavia, su Linux, con software come ALSA, il multiplexing è lasciato alla specifica scheda audio / implementazione / driver.

Sfortunatamente, non tutte le carte e tutti i driver lo supportano immediatamente.

È qui che entra in gioco PulseAudio, che esegue il multiplexing nel software, indipendentemente dalla situazione della scheda audio / del driver.

Senza questa funzionalità, se si dicesse che, utilizzando ALSA direttamente sans-PulseAudio, con una scheda audio con scarso supporto multiplexing PCM su Linux, si sarebbe in grado di ascoltare l'audio da un'applicazione alla volta.

Ad esempio, se avessi riprodotto un video nel tuo browser web e avessi ricevuto una notifica in Pidgin, non sentiresti il ​​suono della notifica perché il tuo browser web avrebbe già il controllo della tua scheda audio.

Indirizzando prima tutto il suono attraverso PulseAudio, questo problema viene evitato.

Fonte: Una lunga conversazione IRC che ho avuto una volta con il manutentore Ubuntu per ALSA, dove ho posto loro esattamente la stessa domanda che stai facendo ora.


5
Grazie @Zee! Questa è una buona risposta! Comunque ho letto questo alsa-project.org/main/index.php/Asoundrc e vedo che posso ottenere esattamente lo stesso con le configurazioni ALSA, usando "plugin". L'ho provato e sono stato in grado di riprodurre più istanze di aplay contemporaneamente. Quindi la mia domanda rimane, perché ho bisogno di Pulse Audio, se posso fare tutto questo con ALSA :)?
Michael P,

5
Ehi @MichaelP, felice di aiutarti. Il motivo per cui PulseAudio è ancora utile è perché potresti avere più server audio in esecuzione, non solo ALSA. Ad esempio, se qualcuno sta eseguendo lavori di editing audio, utilizzerà spesso il server audio JACK, che è più adatto per lavori audio a bassa latenza, ma utilizza comunque ALSA per l'audio generale. Questo potrebbe non essere applicabile a te, ma PulseAudio significa che non devi preoccuparti di come funziona tutto. Se lo configuri solo per ALSA, dovresti configurare ciascun caso d'uso separatamente. PulseAudio funziona CON Alsa e qualsiasi altra fonte audio che potresti mai usare.
Zee Alexander,

2
Detto questo, PulseAudio potrebbe non essere particolarmente utile per te in particolare, ma in genere le distro non barebone lo configurano per te immediatamente, quindi non c'è motivo reale per sostituirlo con un plug-in ALSA. Se stai eseguendo una distro come Arch in cui devi configurare tutto da solo, usa invece il plug-in ALSA.
Zee Alexander,

1
Grazie @Zee Alexander, che risolve tutta la mia confusione. Grazie per la risposta. Vorrei che PulseAudio lo spiegasse bene sul loro sito web.
Michael P,

2

Dall'introduzione di Dmix in alsa, pulseaudio si è rivelato inutile. Bare alsa con Dmix in qualche modo abilitato nel profondo (non devo impostare nulla) funziona molto meglio per me. Ad esempio, non vi sono ritardi durante la modifica di un livello sonoro.

Disinstalla pulseaudio se stai usando alsa recente e stai bene.


1
Ho appena avuto questo problema di scoppio, disinstallato pulseaudio e ora tutto suona bene (anche la riproduzione da più fonti funziona alla grande). Driver Alsa 4.4.0-104, utils 1.1.0
klogd

1
WTaF. Allora perché le distro abilitano ancora il demone multiplexing pulseaudio? È un AF lento e difettoso ed è stato il colpevole di troppi problemi sonori! Disabilito il demone anziché disinstallare l'intero pacchetto, poiché esistono dipendenze con la configurazione ALSA, che il pacchetto sembra fare bene.
Dominic Cerisano,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.