我正在为iOS的Core Audio构建一个极低延迟的乐器。
考虑一下,我的乐器有4个触发器并触发每个触发器播放.wav文件。当我播放不同的.wav文件时,以前的.wav文件的声音不应该被切断。
我还需要支持录音。
我已经使用OpenAL成功实现了这一点,但我发现我需要使用RemoteIO / AudioUnits,因为OpenAL不允许记录通过OpenAL播放的内容。
如果我使用RemoteIO / AudioUnits,我是否需要使用具有4个通道的多声道混音器,并将每个.wav文件的音频路由到每个声道。通过这样做,通过相同频道播放的前一个.wav文件的声音是否会被切断?
如果混音器不是正确的方法,那么可能的替代方案是什么?
答案 0 :(得分:1)
音频混音器是正确的方法,可以是音频单元多声道混音器,也可以是您自己的DSP代码。
如果您继续使用之前启动的声音为调音台音频设备提供PCM数据,即使在通过其他频道开始后续声音后,它仍应继续播放。