2008-12-07 58 views
8

当我开始使用SoundEngine(来自CrashLanding和TouchFighter)时,我读到了一些人建议不要使用它,因为据他们说,它是不够稳定的。尽管如此,我还是唯一能够在不学习C++和OpenAL的情况下播放音高和位置控制声音的解决方案,所以我忽略了这些警告并继续使用它。开源声音引擎

但现在我开始担心。 2.2 SDK引入了AVFoundation。使用CrashLanding的SoundEngine(用于声音)和AVAudioPlayer(用于音乐)时,我发现只有当现有的AVAudioPlayer发布时(所有的声音才会停止,直到新的AVAudioPlayer启动),SoundEngine的行为会很奇怪。大约在2.2 SDK发布的同时,CrashLanding示例代码被神秘地从ADC站点删除。我担心会有更多不好的惊喜来临。

我的问题是,是否有人知道SoundEngine的开源替代品?也许甚至是一个使用OpenAL的C++库?

回答

2

看看this图书馆,但我不知道这是你需要什么。

0

为什么不使用AVFoundation?处理起来非常简单,而且非常灵活 - 除了需要准确的时间之外(苹果公司的文档说 - 但我已经进行了相当广泛的测试,但还没有发现任何重大的实际问题),我认为没有任何理由不利用它它。

+0

您是否能够将原始数据提供到AVFoundation(AVAudioPlayer),例如,如果您想要生成并播放某个音高的正弦波? – JonB 2009-11-29 21:49:53

0

AVFoundation缺乏声音安置。这让我难过。

0

我写了一个围绕OpenAL的simple sound engine。没有位置控制(我不需要它们),但是如果您根据自己的喜好找到其他位置,那么它们将会变得微不足道。 Cocos2D引擎中还有一些experimental sound code。它具有音高和位置控制,看起来相当实用。

2

Kowalski project提供目前在iOS,OS X和Windows上运行的数据驱动和便携式声音引擎。该引擎在zlib许可下发布并提供位置音频,音调控制等。