代码之家  ›  专栏  ›  技术社区  ›  Steph Thirion

复音播放

  •  4
  • Steph Thirion  · 技术社区  · 16 年前

    我需要这些功能的音频播放:良好的性能(游戏),音高控制,并能够在同一时间多次分层相同的样本(复调)。在iPhone SDK上,什么是一种快速实现这一点的方法?


    以下是迄今为止我发现的:

    没有可用的库或示例代码可以执行此操作,请指出错误。

    soundengine.cpp(来自crashlanding和touchfighter代码示例)使用openal并允许控制音调,但每次启动缓冲区时,如果正在播放相同的缓冲区,则其播放头将返回到开始。

    使用soundengine.cpp获得polyphony的一个肮脏的解决方案是为同一个声音文件加载多个缓冲区,而不必深入到它的实现中(这对我来说是不可理解的)。假设我想要一个复调,每个声音最多4个声音,然后我为同一个文件加载4个缓冲区。我只需要在经理班上把这一切都总结一下。沿着这条路走安全吗?还有/或者有没有办法让soundengine.cpp变成合成音?

    2 回复  |  直到 16 年前
        1
  •  2
  •   kirkus    16 年前

    fmod(www.fmod.org)提供所有这些功能。在文档中查看他们的virtualvoices示例中的复音和音高偏移DSP效果。

    我只是一个客户,与他们没有任何关系。

        2
  •  0
  •   zoul    16 年前

    坠毁时的声音引擎一团糟,我要远离它。在Openal周围写你想要的东西并不难,它只需要几个小时的工作。你可以偷看 Finch 或在 Cocos 2D sound egine .