【问题标题】:How to play one audio file many times in Superpowered?如何在 Superpowered 中多次播放一个音频文件?
【发布时间】:2017-03-15 13:15:22
【问题描述】:

我正在创建一个钢琴游戏。在游戏中,玩家可以多次快速触摸同一个键,音符的声音应该以相同的方式播放。在这种情况下我需要做什么?

我已阅读this 问题,但没有找到适合我的案例的答案。

想到了暂停SuperpoweredAdvancedAudioPlayer实例,替换进度开始位置再播放。但在这种情况下,声音听起来断断续续且难听。 我还考虑创建一个新的 SuperpoweredAdvancedAudioPlayer 实例,使用 open 方法并独立播放。但我担心,我需要等待加载文件,我会得到延迟。或者超能力只加载一次并重复使用它?

请给我建议。

【问题讨论】:

    标签: superpowered


    【解决方案1】:

    SuperpoweredAdvancedAudioPlayer 就像一个昂贵的 DJ 播放器,而不是样品播放器。 您需要一个具有和弦功能的采样播放器,以便它可以播放与自身重叠的相同声音。 您也可以使用 SuperpoweredAdvancedAudioPlayer 的多个实例来执行此操作,但这可能太重了。

    【讨论】:

    • 你打算用什么?目前我有 16 个SuperpoweredAdvancedAudioPlayer 对象,我认为这些对象可能对资源来说太重了。我的情况也有点不同,因为用户一次可以加载 16 个样本。
    • 我猜你的样本不是很大。将它们作为 PCM 音频放入简单的内存缓冲区,然后从那里播放。
    • 我不太明白。我应该查看哪个class from Superpowered?样本可以从 1 秒到长达 3-4 分钟。
    • 如果您的样本像您提到的那样长,那么。 SuperpoweredAdvancedAudioPlayer 是一个很好的工具。但请注意,它不是“复音”乐器。如果您需要同时播放相同的声音,那么您需要准备多个具有相同声音“打开”的实例。
    • 感谢您的重申。这就是我现在拥有的——SuperpoweredAdvancedAudioPlayer 的 16 个实例。用户可以将他想要的任何样本加载到 16 个播放器中的任何一个中,并随时触发它们。它可以工作,但我可以不时听到“咔哒”声(短暂的停顿,几 10 毫秒长)(每次约 30 秒)。即使只有 1 个实例正在播放,它也会发生。我没有对音频进行任何其他处理。我应该在 GitHub 上开一张票来更深入地解释这个问题吗?如果您想尝试一下,The app 就在这里。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-02
    相关资源
    最近更新 更多