Em um sistema embarcado, descobri que apenas um aplicativo pode usar a placa de som simultaneamente. Até onde sei, para resolver o problema, o ALSA fornece o dmix
plug-in para realizar a mixagem no espaço do usuário, e assim permitir que vários aplicativos compartilhem a placa de som.
Ao tentar descobrir como usar o dmix
, me deparei com um problema. Ao reproduzir um arquivo de áudio (estéreo, 16 bits, 44,1 KHz), o áudio parece se sobrepor a si mesmo, em um estranho efeito de eco, com o número de ecos crescendo como uma bola de neve mais adiante no tempo de reprodução. (Já após 10 segundos de reprodução, o som "se intensifica" a ponto de ter que interrompê-lo por medo de danos permanentes ao alto-falante.)
Pela minha percepção, apenas o primeiro segundo do áudio é reproduzido normalmente, e a estranheza começa por volta do segundo segundo. Tentei ajustar as configurações de buffer aplay
sem sucesso: o efeito não está relacionado ao buffer.
Isso funciona:
aplay /mnt/annie-honestly.wav
Mas isso exibe o estranho efeito de eco:
aplay -Dplug:dmix /mnt/annie-honestly.wav
Tentei pesquisar o problema no Google, mas nem tenho certeza de como chamar o efeito/problema e não encontrei nada na enxurrada de outros problemas do ALSA.
PS Linux v3.18.24, ALSA-lib/-utils v1.0.29. O hardware: FreeScale i.MX35 com chip de som SGTL5000 (usado no modo 48KHz).