alsa softvol 未出現在 amixer 中

alsa softvol 未出現在 amixer 中

我有一台 Orangepi 電腦,需要設定一個 alsa softvol pcm 來控制 i2s dac 音量。

因此我創建了以下 /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

所以我嚴重懷疑我的 /etc/asound.conf 沒有被 alsa 讀出來!

我使用的作業系統是 Armbian -> Debian。

我有另一個 pi (nanopi) 也使用相同的 /etc/asound.conf 運行 Armbian -> Debian,一切正常。

答案1

混合器只有在第一次使用時才會顯示。每alsa.opensrc.org:

筆記:新的音量控制不會立即出現!僅在第一次使用新定義的裝置(例如使用上面的命令)後,才應 amixer controls | grep <control name>顯示您的新控制項。在第一次使用之前已經啟動的混音器(如 KMix)必須重新啟動才能採用變更。如果您仍然沒有看到新的控件,請嘗試重新啟動 ALSA 或您的電腦。

由於您的配置將預設為 softvol 設備,因此運行speaker-test或使用aplay播放 .wav 檔案應該足以使音量控制出現。

相關內容