alsa Softvol이 믹서에 표시되지 않습니다

alsa Softvol이 믹서에 표시되지 않습니다

나는 orangepi PC를 가지고 있고 i2s dac 볼륨을 제어하기 위해 alsa Softvol pcm을 설정해야 합니다.

따라서 다음 /etc/asound.conf를 만들었습니다.

pcm.!default {
  type plug
  slave.pcm "softvol"
}
pcm.softvol {
  type  softvol
  slave {
    pcm "hw:1,0"
  }
  control {
    name  "SoftVol"
    card  1
  }
}

감지된 장치는 다음과 같습니다

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

어떤 이유로 볼륨을 조절해도 alsamixer아무런 효과가 없습니다. 그리고 asound.conf의 제어 블록을 에서 로 변경하면 SoftVol재부팅 후 alsamixer에 Master해당 이름의 제어가 나타나지 않습니다 .Master

그래서 내 불쾌한 의심은 alsa가 내 /etc/asound.conf를 읽지 않는다는 것입니다!

제가 사용하고 있는 OS는 Armbian -> Debian입니다.

동일한 /etc/asound.conf를 사용하여 Armbian -> Debian을 실행하는 또 다른 파이(nanopi)가 있고 모든 것이 작동합니다.

답변1

믹서는 처음 사용할 때까지 표시되지 않습니다. 당alsa.opensrc.org:

메모:새로운 볼륨 컨트롤이 즉시 나타나지 않습니다! 새로 정의된 장치를 처음 사용한 후에만(예: 위의 명령 사용) amixer controls | grep <control name>새 컨트롤이 표시됩니다. 변경 사항을 적용하려면 처음 사용하기 전에 이미 시작된 믹서(예: KMix)를 다시 시작해야 합니다. 여전히 새 컨트롤이 표시되지 않으면 ALSA 또는 PC를 다시 시작해 보세요.

구성에서 기본값을 Softvol 장치로 설정하므로 .wav 파일을 실행 speaker-test하거나 aplay재생하는 것만으로도 볼륨 컨트롤이 표시되기에 충분합니다.

관련 정보