如何在AudioUnit或OpenAL中单独配置左声道和右声道

时间:2011-06-24 12:58:04

标签: iphone objective-c core-audio avaudioplayer openal

我正在生成两种不同频率的正弦波音(比如440hz和445hz)。我需要分别在左声道和右声道播放这种音调。我使用音频队列成功播放了这种音调。音频队列不提供任何选项(任何改变音高的预定义功能)来改变这些音调的音调。所以,我尝试使用音频单元和OpenlAL但我在左右声道分别播放声音时遇到问题。任何人都可以帮我解决这个问题。

我所要做的就是分别在左右声道中播放这些音调,并可选择改变这些音调的音高。

注意:动态生成正弦波音,不使用音频文件。

1 个答案:

答案 0 :(得分:2)

这应该很简单。你试过什么?你被困在哪里?或者你只是想让别人为你做这件事?显示代码......

您是否真的阅读过音频单元编程指南?听起来你没有,所以你需要先做。那会回答你的问题。

然后你可以从这样的事情开始:http://cocoawithlove.com/2010/10/ios-tone-generator-introduction-to.html

你只需要配置你的ABSD(如果我有正确的首字母缩略词...音频缓冲流描述符...即告诉你的各种核心音频对象你正在使用的格式的结构。)

所以你需要将它们设置为立体声。

然后当你在渲染回调中填充缓冲区时,请确保填满两个通道。