我需要我的iPhone在短时间内产生指定频率和幅度的恒定声音。然后我可以通过耳机听到声音。我该怎么办?
答案 0 :(得分:1)
最简单的方法是回放已经达到所需频率的样本。如果您使用OpenAL,则可以将音高从一半调整为两倍。所以,假设你有一个哔哔声样本,你知道它是440Hz,那么OpenAL允许你重现220Hz - 880Hz的哔哔声。对于连续音,我将使用另一个样本,再次以已知频率但适合循环播放并再次播放(再次使用OpenAL)。
任何合成器都应该能够以已知频率再现基本音调。如果您可以访问Sound Forge,可以使用Tools / Synthesis / Simple生成简单的音调。
这是一个可以帮助您的链接
答案 1 :(得分:1)
使用音频队列或RemoteIO音频单元API。使用适当频率正弦波的样本填充回调缓冲区:
buffer[i] = myVolume * sinf( twoPiFrequencyOverSampleRate * i );
保存回调之间的阶段以避免点击。