Tengo una PC orangepi y necesito configurar un pcm alsa softvol para controlar el volumen del dac i2s.
Por lo tanto, he creado el siguiente /etc/asound.conf
pcm.!default {
type plug
slave.pcm "softvol"
}
pcm.softvol {
type softvol
slave {
pcm "hw:1,0"
}
control {
name "SoftVol"
card 1
}
}
y aquí están los dispositivos detectados
root@orangepipcplus:~# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: audiocodec [audiocodec], device 0: SUNXI-CODEC sndcodec-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: snddaudio [snddaudio], device 0: SUNXI-TDM0 snddaudio-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: sndhdmi [sndhdmi], device 0: SUNXI-HDMIAUDIO sndhdmi-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
Por alguna razón, controlar el volumen alsamixer
no hace nada. Y si cambio el bloque de control en asound.conf de SoftVol
a, por ejemplo, Master
no aparece ningún control con el nombre Master
en alsamixer después de reiniciar.
¡Así que mi desagradable sospecha es que alsa no lee mi /etc/asound.conf!
El sistema operativo que estoy usando es Armbian -> Debian.
Tengo otro pi (nanopi) que también ejecuta Armbian -> Debian usando el mismo /etc/asound.conf y ahí todo está funcionando.
Respuesta1
La batidora no aparecerá hasta que se utilice por primera vez. Poralsa.opensrc.org:
Nota:¡El nuevo control de volumen no aparecerá inmediatamente! Sólo después del primer uso del dispositivo recién definido (por ejemplo, con el comando anterior), debería
amixer controls | grep <control name>
mostrarse su nuevo control. Los mezcladores que ya se iniciaron antes del primer uso (como KMix) deben reiniciarse para adoptar los cambios. Si aún no ves el nuevo control, intenta reiniciar ALSA o tu PC.
Dado que su configuración establece el valor predeterminado en el dispositivo softvol, ejecutar speaker-test
o usar aplay
para reproducir un archivo .wav debería ser suficiente para que aparezca el control de volumen.