1. 前言
前面的文章讲了如何使用OpenAL对音频添加音效,并播放,参见:
OpenAL 使用基本流程
使用OpenAL混音,添加音频特效
本文谈谈如何对音频进行渲染,然后存储下来。
2. 初始化
初始化过程与之前的文章(OpenAL 使用基本流程)提到了基本一致,下面做了略微修改:
bool CHXALRender::init(int channels, int sampleRate)
{
if (m_context != nullptr)
{
clear();
}
ALCint attrs[8];
attrs[0] = ALC_FORMAT_CHANNELS_SOFT;
if(channels == 1)
attrs[1] = ALC_MONO_SOFT;
else if(channels == 2)
attrs[1] = ALC_STEREO_SOFT;
else
{
XLOGE(