使用softvol时,Alsa amixer会列出播放和捕获设备

时间:2014-08-28 13:46:23

标签: linux audio alsa

我正在使用带有dmix和softvol的alsa来混合多个声源并控制它们各自的音量。这有效,但有一件事困扰着我。混音器控制显示当我播放带有播放的波形文件时。但是描述中提到了播放和捕获通道,但我想对播放和捕获使用单独的控件。这是我的amixer输出:

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 van der Laan

1 个答案:

答案 0 :(得分:1)

控件的命名决定了它的方向重命名" Ring"到" Ring Playback Volume"生成只有播放选项的铃声控制。