Qual é a relação entre a arquitetura de som ALSA e PulseAudio?

40

Bem, isso me confunde há muito tempo. Até onde eu sei, o ALSA é um pacote de muitos drivers de placa de som e o PulseAudio é um aplicativo de áudio que opera os dados de som, como mixagem ou equalizador.

Mas por que existe uma barra de controle chamada PCM no painel do alsamixer? Isso realmente muda o volume controlando o chip na placa de som? Se não, por que não é um trabalho do PulseAudio?

Qual é a relação entre a arquitetura de som ALSA e PulseAudio?

Kevin Dong
fonte
Uma boa resposta para esta pergunta está disponível em superuser.com/questions/144648/…
Adriano Rivolli

Respostas:

47

O PulseAudio basicamente fica no topo da ALSA e a utiliza internamente. O ALSA não pode, por si só, ser usado por vários aplicativos, portanto o PulseAudio fornece essa funcionalidade, entre outros.

Resumido:

  • ALSA - lidar com o hardware, basicamente possuir lo
  • PulseAudio - um proxy de software que fornece recursos adicionais (mixagem, equalizador) entre seu aplicativo e o subsistema ALSA / OSS

Este diagrama é da página da Wikipedia do PulseAudio:

Fluxograma operacional PulseAudio

meskobalazs
fonte
Você pode ser tão gentil e escrever, onde fica o dispositivo de loopback ALSA nesse modelo? (aquele que é instalado por sudo modprobe snd-aloop)?
Adam Ryczkowski 21/03/19
Meu palpite é que está na praça do driver ALSA / OSS HW. AFAIK é basicamente uma placa de som implementada totalmente em software.
Meskobalazs
O Google acabou de me trazer aqui, mas "o ALSA não pode ser usado por vários aplicativos" é falso. Funciona por padrão desde o alsa 1.0.9 ... lançado em 2005.
Adam D. Ruppe 19/10
@ AdamD.Ruppe AFAIK o dmixplugin fornece mixagem, é por isso que eu disse "por si só".
meskobalazs 20/10