有一些与向游戏添加声音相关的问题,特别是介绍音乐(用于启动),背景音乐(循环)和按钮事件声音。希望你能分享你的知识。
1)我应该使用压缩声音还是未压缩声音?或者两者的组合?我应该注意iPhone硬件是否有任何限制 - 例如,能够播放多个压缩声音?
2)出于我的目的,什么是最好的音频格式?
3)对于背景音乐,我正在考虑使用AVAudioPlayer。对于按钮事件声音,我正在考虑使用AudioServicesPlaySystemSound,您怎么看?
4)我应该注意的任何其他问题?
谢谢!
答案 0 :(得分:2)
1)根据iPhone应用程序编程指南:“从iPhone OS 3.0开始,几乎所有支持的音频格式都可用于同步播放 - 即所有可以使用软件解码播放的格式,如表7所述 - 1.对于处理器效率最高的多重播放,请使用线性PCM(未压缩)或IMA4(压缩)音频。“
但如果您要同时播放大量声音,则应使用未压缩或IMA4。
2)您应该使用CAF文件格式,因为它为您提供了使用哪种数据格式的最大灵活性。您可以将MP3,AAC,PCM,IMA4以及几乎任何压缩或未压缩的数据放入CAF文件(.caf)中。我通常使用单声道,16位,44.1kHz的IMA4压缩CAF文件。
3)这就是我在我的应用程序中的表现:AVAudioPlayer用于语音提示,导致音乐级别下降,AudioServicesPlaySystemSound用于按钮和其他UI音效。
4)如果你使用未压缩的PCM数据,文件大小可能很大,但IMA4是一个相当嘈杂的压缩方案。您可以使用AAC但是您可能会受到一次可以播放多少AAC声音的限制。在iPhone OS 3.0之前,您一次只能播放一个AAC或MP3声音。