1
我正在用dsa和softvol混合使用多個聲源並控制它們各自的音量。這有效,但有一件事情讓我困擾。混音器控制顯示當我用aplay播放波形文件時。但是描述中提到了一個回放和一個捕獲通道,但是我想爲回放和捕獲使用單獨的控制。這是我的amixer輸出:Alsa amixer在使用softvol時列出了播放和捕捉設備
Simple mixer control 'SpeechPlayback',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 255
Mono: 255 [100%]
這是我使用.asoundrc:
pcm.!default pcm.snd_card0
pcm.snd_card0 {
type hw
card 0
device 0
}
ctl.snd_card0 {
type hw
card 0
device 0
}
pcm.dmix0 {
type dmix
ipc_key 1024
ipc_key_add_uid true
slave.pcm "snd_card0"
slave {
period_time 0
period_size 256
rate 44100
format S16_LE
}
}
ctl.dmix0 {
type hw
card 0
device 0
}
pcm.dsnoop0 {
type dsnoop
ipc_key 2048
ipc_key_add_uid true
slave.pcm "snd_card0"
slave {
period_time 0
period_size 256
rate 8000
}
}
ctl.dsnoop0 {
type hw
card 0
device 0
}
############################################################################
# Volume controls for the different PCM devices
# controls become available after first playback
# volume e.g.: amixer set Ring 80%
############################################################################
pcm.ring {
type plug
slave{
channels 1
rate 44100
pcm{
type softvol
slave.pcm "dmix0"
control {
name "Ring"
count 1
}
}
}
}
pcm.speech_play {
type plug
slave{
channels 1
rate 44100
pcm{
type softvol
slave.pcm "dmix0"
control {
name "SpeechPlayback"
count 1
}
}
}
}
pcm.speech_capture {
type plug
slave{
channels 1
rate 8000
pcm{
type softvol
slave.pcm "dsnoop0"
control {
name "SpeechCapture"
count 1
}
}
}
}
是否有任何人誰知道如何播放從捕獲控制分開。我試過asym,但找不到適用於我的配置。
此致 的Jeroen範德蘭
謝謝,這個作品完美!要只創建一個捕捉控制,名稱應該是「語音捕捉音量」?我希望你能記住:) – 2018-01-26 10:16:57
更新:我剛試過,我的假設是正確的。 「語音捕捉音量」將只創建名稱爲Speech的捕捉音量控制。 – 2018-01-26 14:04:24