iPhone游戏中的音效

Posted

技术标签:

【中文标题】iPhone游戏中的音效【英文标题】:Sounds effects in iPhone game 【发布时间】:2009-10-20 14:50:29 【问题描述】:

我正在为 iPhone 制作一个 opengl 游戏。我即将开始为应用程序添加音效。我想知道为此目的最好的框架是什么。

AV Foundation 是我的最佳选择吗?还有其他我想念的吗,比如 Open AL?

【问题讨论】:

根据下面的评论,您可能需要添加 openal 和 core-audio 标签。谢谢。 【参考方案1】:

从游戏角度对 iPhone 声音 API 的一般优势/劣势总结:

AVFoundation:播放长压缩文件。没有低级访问,高延迟。适合主题曲或背景音乐。不利于短暂的影响。 系统声音:播放短促(想想 0-5 秒)的声音。必须是 .aif、.wav 或 .caf 中的 PCM 或 IMA4。即发即弃(一旦开始就无法停止)。基于 C 的 API。适用于短音效(点击、点击、砰砰声、崩溃) OpenAL:3D 空间化音频。 API 类似于 OpenGL,是它的自然伴奏。易于混合多个来源。音频需要 PCM(可能由 Core Audio 的“音频文件服务”加载)。相当重要的低级访问。潜在的延迟非常低。 音频队列:从您提供的源流播放(从文件读取、从网络读取、软件合成等)。基于 C。可以是相当低的延迟。对于很多游戏任务来说并不是很理想:背景音乐更适合 AVFoundation,更短的声音适合系统声音,以及混音适合 OpenAL 或音频单元。可以通过麦克风录音。 音频单元:Core Audio 的最低公共级别。极低的延迟(

确保您正确设置了音频会话,这意味着您声明了一个类别,表明您如何与设备上的其余音频进行交互(允许/禁止在后台播放 iPod、尊重/忽略响铃/静音开关等.)。 AV Foundation 有这个的 Obj-C 版本,Core Audio 有更强大的等价物。

【讨论】:

我尝试使用系统声音,但它大大减慢了我的项目速度。之后我尝试了 AVFoundation,它稍微好一点,但仍然减慢了一切。我正在尝试创建快速重复的点击声音(如点击轮)。我应该使用哪个?【参考方案2】:

Kowalski 是另一个面向游戏的声音引擎,可在 iPhone/iPad(以及 OSX 和 Windows)上运行。

【讨论】:

【参考方案3】:

您可能想查看Finch,这是一个完全考虑游戏的 OpenAL 音效引擎编写者。

【讨论】:

以上是关于iPhone游戏中的音效的主要内容,如果未能解决你的问题,请参考以下文章

Xcode 游戏声音可以在 sim 卡和 iPad 上播放,但不能在 iPhone 6 上播放

K40核心配置曝光/矿卡游戏性能测试/折叠iPhone取代iPad/等

iOS在播放完成前播放相同的音效

内存使用问题。实际 iPhone 中的游戏崩溃

保存 iphone 游戏状态的最佳位置在哪里 - xcode 4 中的 txt 文件

如何在 iPhone 应用程序中播放声音