在 iOS 上播放音符或简单的声音?
Posted
技术标签:
【中文标题】在 iOS 上播放音符或简单的声音?【英文标题】:Playing notes or simple sounds on iOS? 【发布时间】:2011-06-27 17:57:32 【问题描述】:我想播放可以在运行时变化的简单声音,例如能够播放不同频率的声音。
基本上,我希望能够在运行时产生一个简单的旋律,然后播放它。合成应用程序如何做到这一点?我想有办法通过CoreAudio
做到这一点。
有没有办法使用 SDK 做到这一点?
【问题讨论】:
【参考方案1】:如果您知道如何创建音频波形的 PCM 样本,则可以以所需的频率和音量创建所需音符持续时间的波形,并将原始波形数据提供给 Audio Queue API 或 Audio Unit RemoteIO API .
这是一个稍长的description of how to play 使用这些 API 的音调。
【讨论】:
【参考方案2】:http://atastypixel.com/blog/using-remoteio-audio-unit/
这是一个非常棒的资源,它将帮助您开始使用音频单元。
这也很棒:http://cocoawithlove.com/2010/10/ios-tone-generator-introduction-to.html
【讨论】:
【参考方案3】:有很多方法可以做到这一点。最简单的方法是记录您需要的所有笔记,然后使用计时器创建一个序列。首先尝试 AVAudioPlayer,这是最简单的方法。如果您需要直接处理音频数据,您可以使用音频队列服务或 OpenAL。
【讨论】:
+1 这个问题并没有说明需要多少控制。如果您只需要复音播放器,Hollance 的 OpenAL SoundBank Player(在 GitHub 上)提供了一个非常简单的解决方案。以上是关于在 iOS 上播放音符或简单的声音?的主要内容,如果未能解决你的问题,请参考以下文章
在 IOS 上使用 AudioKit 将声音文件作为 MIDI 音符发送
在android soundpool中播放新声音时如何停止所有其他以前的声音?