在 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中播放新声音时如何停止所有其他以前的声音?

Android 上的声音字体

没有声音播放时核心音频 CPU 使用率高

有没有办法在 VB.net 中播放不是 console.bleep 的音符?

在 MIDI 上播放连续的类似 theremin 的声音