ALSA:在播放声音时使用c代码插件
问题描述:
我正在播放带有一些c代码的wav声音文件,例如this。它使用所有API:ALSA:在播放声音时使用c代码插件
snd_pcm_*
我想用均衡器插件:
libasound_module_ctl_equal.so, libasound_module_pcm_equal.so
在“的libasound2-插件平等”
发现如何集成和调用艾莎插件从C代码?
答
答案是简单的,我想象:
snd_pcm_open(&pcm_handle, "equal", SND_PCM_STREAM_PLAYBACK, 0) < 0);
您可以通过插件的名称与正确的设置默认文件来snd_pcm_open。
答
你需要使它ALSA链例如部分在〜/ .asoundrc添加
pcm.plugequal {
type equal;
slave.pcm "plughw:0,0";
}
pcm.!default {
type plug;
slave.pcm plugequal;
}
比你可以使用命令来播放声音文件
aplay some.wav
对于CTL装置可以添加下面在〜/ .asoundrc
ctl.!default {
type equal;
}
您只需调用 alsamixer中
我想在C代码中做到这一点。不在命令行中。 – gregoiregentil