我无法选择合适的音频播放技术。在iPhone上使用了大量的技术,这太令人困惑了。
我需要做的是:
开始播放介于0.1秒和2秒之间的短音
高质量播放,没有噼啪声(我听说有些iPhone音频播放技术在开始或结束时发出噼啪声,这很糟糕!)
能够开始播放声音,而现在还有另一个播放声音(同时播放两个,三个或更多声音)
你在这里建议什么,为什么?谢谢: - )
答案 0 :(得分:7)
在iPhone上播放音频基本上有四种选择:
Audio Toolbox。简单,但仅适用于在应用程序中播放音效(sample code)。
Audio Queue Services。非常强大,可以做任何事情。 C API,非常混乱。回调,水桶,痛苦。
AVAudioPlayer。关于最简单的选择。可以播放压缩音频,使用简单的包装器,您可以轻松地同时播放同一样本的多个实例(仅限非压缩音频,因为只有一个HW音频解码器)。 AVAudioPlayer
似乎AVAudioPlayer
开始播放声音可能会有问题。
lag about 20 ms。复杂性和功能之间的妥协妥协。声音不会滞后,你可以播放多种声音,但你必须自己做很多工作。我写了一个名为OpenAL的声音引擎,可以帮助你。
对裂缝了解不多,从未体验过。我认为使用{{1}}播放无缝压缩循环存在一些问题,可以通过在不压缩的情况下保存循环来克服。