Linux ALSA配置如何在asound.conf中结合MMAP仿真和Ladspa插件
我在使用RPIDAC的Raspberry Pi计算模块(Linux)上有一个声音良好的PCM输出。“aplay-l”命令输出显示以下内容:Linux ALSA配置如何在asound.conf中结合MMAP仿真和Ladspa插件,linux,alsa,tinyalsa,libalsa,libasound,Linux,Alsa,Tinyalsa,Libalsa,Libasound,我在使用RPIDAC的Raspberry Pi计算模块(Linux)上有一个声音良好的PCM输出。“aplay-l”命令输出显示以下内容: >> aplay -l **** List of PLAYBACK Hardware Devices **** card 0: sndrpirpidac [snd_rpi_rpi_dac], device 0: RPi-DAC HiFi pcm1794a-hifi-0 [] Subdevices: 1/1 Subdevice #0: subdev
>> aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: sndrpirpidac [snd_rpi_rpi_dac], device 0: RPi-DAC HiFi pcm1794a-hifi-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: ALSA [bcm2835 ALSA], device 0: bcm2835 ALSA [bcm2835 ALSA]
Subdevices: 8/8
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
Subdevice #4: subdevice #4
Subdevice #5: subdevice #5
Subdevice #6: subdevice #6
Subdevice #7: subdevice #7
card 1: ALSA [bcm2835 ALSA], device 1: bcm2835 ALSA [bcm2835 IEC958/HDMI]
Subdevices: 1/1
Subdevice #0: subdevice #0
pcm.mmap0 {
type mmap_emul
slave {
pcm "hw:0,0"
}
}
pcm.!default {
type plug
slave {
pcm mmap0
}
}
为了让音频正常工作,我必须将/etc/asound.conf文件更改为如下所示:
>> aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: sndrpirpidac [snd_rpi_rpi_dac], device 0: RPi-DAC HiFi pcm1794a-hifi-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: ALSA [bcm2835 ALSA], device 0: bcm2835 ALSA [bcm2835 ALSA]
Subdevices: 8/8
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
Subdevice #4: subdevice #4
Subdevice #5: subdevice #5
Subdevice #6: subdevice #6
Subdevice #7: subdevice #7
card 1: ALSA [bcm2835 ALSA], device 1: bcm2835 ALSA [bcm2835 IEC958/HDMI]
Subdevices: 1/1
Subdevice #0: subdevice #0
pcm.mmap0 {
type mmap_emul
slave {
pcm "hw:0,0"
}
}
pcm.!default {
type plug
slave {
pcm mmap0
}
}
当我播放.wav文件时,输出听起来很棒,但有点安静,并且alsamixer不允许使用此驱动程序控制音量
我想获得更多的音量,所以我研究了Ladspa项目的软件放大器插件。以下示例代码在正常Pi上提升3.5 mm插孔上的音量:
pcm.radio {
type plug
slave.pcm "ladspa"
hint {
show on
description "in -> equal -> declip -> compressor -> limiter -> dmix -> out"
}
}
# LADSPA plugins:
# "listplugins" to see the list of installed plugins
# "analyseplugin <filename>" to see plugin controls
# Use "ardour2" to experiment with plugin settings
pcm.ladspa {
type ladspa
slave.pcm "plughw:0,0"
path "/usr/lib/ladspa"
plugins {
0 {
# Limiter
label amp
input {
controls [ 10 ]
}
}
}
}
pcm.radio{
类型插头
slave.pcm“ladspa”
暗示{
展示
说明“输入->相等->下降->压缩器->限制器->dmix->输出”
}
}
#LADSPA插件:
#“listplugins”以查看已安装插件的列表
#“analyseplugin”查看插件控件
#使用“ardour2”测试插件设置
拉德斯帕酒店{
拉德斯帕型
slave.pcm“plughw:0,0”
路径“/usr/lib/ladspa”
插件{
0 {
#限制器
标签放大器
输入{
控制措施[10]
}
}
}
}
我一直在阅读这里的文档:,但我正在努力理解如何结合2-我想要MMAP仿真以及放大。我怎样才能做到这一点?谢谢。请尝试下一个设置,它可以在我的x86 linux下工作:
pcm.mmap0 {
type mmap_emul
slave {
pcm "hw:0,0"
# pcm ladspa
}
}
pcm.ladspa {
type ladspa
#slave.pcm "plughw:0,0"
slave.pcm mmap0
path "/usr/lib/ladspa"
plugins {
0 {
# Limiter
label amp
input {
controls [ 100 ]
}
}
}
}
pcm.!default{
type plug
slave {
pcm mmap0
#pcm ladspa
}
}
你试过软卷alsa插件吗?似乎也在放大(有关详细信息,请参阅)