%20com%20um%20registro.png)
Posso gravar áudio com o seguinte comando:
arecord -D plughw:0 --duration=10 -f cd -vv rec7.wav
E ~/.asoundrc
tem isso:
pcm.!default {
type hw
card 0
}
ctl.!default {
type hw
card 1
}
Além disso, posso reproduzir o arquivo gravado com a extensão aplay rec7.wav
.
A questão é que deixei explícito qual dispositivo usar durante a gravação. Enquanto para jogar funciona bem sem essa necessidade. Por que?
Eu gostaria de gravar assim arecord --duration=10 -f cd -vv rec7.wav
. Mas não consigo encontrar uma maneira de tornar plughw:0
o dispositivo padrão.
Estou tentando isso no Raspbian. E estou usando ummicrofone USB externo.
Responder1
Você provavelmente está tendo problemas ao usar diferentes dispositivos de hardware para captura e reprodução. No arquivo de configuração, pcm
as seções especificam o dispositivo PCM (reprodução e gravação) e ctl
as seções são para definir parâmetros (dispositivo de controle). Como a placa de áudio Raspberry Pi não suporta captura, o pcm
dispositivo padrão definido em seu arquivo de configuração retornará arecord
com um erro. Para contornar isso, podemos definir diferentes dispositivos padrão no arquivo de configuração. Uma maneira de usar diferentes dispositivos de hardware para reprodução e captura é usar o asym
plugin.
Aqui está um .asoundrc
que deve funcionar
pcm.usbmic {
type hw
card 1
}
pcm.playback {
type hw
card 0
}
pcm.!default {
type asym
playback.pcm{
type plug
slave.pcm "playback"
}
capture.pcm{
type plug
slave.pcm "usbmic"
}
}
Fonte da página wiki da ALSA paraPlug-ins PCM(veja a seção 'Plugins: asym') easoundrc.