2011-06-24 101 views
1

我正在生成两个不同频率(比如440赫兹和445赫兹)的正弦波音调。我需要分别在左声道和右声道中播放此音调。我使用音频队列播放此音调已成功。音频队列不提供任何选项(任何预定义的功能来改变音调)来改变这些音调的音调。所以,我尝试使用音频单元和OpenlAL,但我在左右声道中分别播放声音时遇到问题。在这个问题上任何人都可以帮助我。如何在AudioUnit或OpenAL中分开配置左声道和右声道

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

注意:正弦波音在飞行中生成,不使用音频文件。

回答

2

这应该很容易。你有什么尝试?你卡在哪里?或者你只是想让别人为你做?显示代码...

您是否真的阅读过音频单元编程指南?听起来你没有,所以你需要先做到这一点。那会回答你的问题。 http://cocoawithlove.com/2010/10/ios-tone-generator-introduction-to.html

你只需要配置ABSDs(如果我得到的缩写右...音频缓冲流描述符...即结构,告诉您不同的核心:

然后,你可以像这样的东西开始音频对象使用什么格式)。

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

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

+0

感谢您的帮助。 Tone Generator示例帮助了我。现在,我可以分别在右声道和左声道中生成音调。现在我被困在设置球场。音调播放时如何更改音频(AudioUnit)? – user505593