¿Cuál es la relación entre ALSA y la arquitectura de sonido PulseAudio?

40

Bueno, esto me confunde por mucho tiempo. Hasta donde sé, ALSA es un paquete de muchos controladores de tarjeta de sonido, y PulseAudio es una aplicación de audio que opera los datos de sonido como mezcla o ecualizador.

Pero, ¿por qué hay una barra de control llamada PCM en el panel de alsamixer? ¿Eso realmente cambia el volumen al controlar el chip en la tarjeta de sonido? Si no, ¿por qué no es trabajo de PulseAudio'a?

¿Cuál es la relación entre ALSA y la arquitectura de sonido PulseAudio?

Kevin Dong
fuente
Una buena respuesta a esta pregunta se encuentra disponible en superuser.com/questions/144648/...
Adriano Rivolli

Respuestas:

47

PulseAudio básicamente se sienta encima de ALSA y lo usa internamente. ALSA no puede ser utilizado por sí mismo por múltiples aplicaciones, por lo que PulseAudio proporciona esta funcionalidad entre otras.

Resumido:

  • ALSA - tratar con el hardware, básicamente, ser dueño de ella
  • PulseAudio: un proxy de software que proporciona características adicionales (mezcla, ecualizador) entre su aplicación y el subsistema ALSA / OSS

Este diagrama es de la página de Wikipedia de PulseAudio:

Diagrama de flujo operativo de PulseAudio

meskobalazs
fuente
¿Podría ser tan amable y escribir, dónde se encuentra el dispositivo ALSA loopback en este modelo? (el que se instala sudo modprobe snd-aloop)
Adam Ryczkowski
Mi conjetura es que está en el cuadrado del controlador ALSA / OSS HW. AFAIK es básicamente una tarjeta de sonido implementada completamente en software.
meskobalazs
Google me acaba de traer aquí, pero "ALSA no puede ser utilizado por sí mismo por múltiples aplicaciones" no es cierto. Acaba de funcionar de manera predeterminada desde alsa 1.0.9 ... lanzado en 2005.
Adam D. Ruppe
@ AdamD.Ruppe AFAIK, el dmixcomplemento proporciona mezcla, por eso dije "por sí mismo".
meskobalazs