在播放WAV时持续时间更改

时间:2017-03-26 17:17:57

标签: superpowered

的Android SuperpoweredSDK版本1.0.3

我试图通过SuperpoweredAdvancedAudioPlayer循环播放WAV文件。 由于某种原因,我在每个 SuperpoweredAdvancedAudioPlayerEvent_EOF 之前都有 SuperpoweredAdvancedAudioPlayerEvent_DurationChanged 。每次播放后,我的循环越来越小。我可以在持续时间听到并看到这个。 当我演奏AAC或MP3时,这并不乐观。看起来像一个错误,但也许我不知道一些重要的事情。

处理功能:

bool process(short int *output, unsigned int numberOfSamples) {
    bool notEmpty = false;
    for (int i = 0; i != numStreams; ++i) {
        Stream* stream = streams[i];
        notEmpty = stream->player->process(stereoBuffer, notEmpty, numberOfSamples, stream->volume) || notEmpty;
    }
    if (notEmpty)
        SuperpoweredFloatToShortInt(stereoBuffer, output, numberOfSamples);
    return notEmpty;
}

1 个答案:

答案 0 :(得分:0)

我确实在远程连接到此的Superpowered源中发现了一个错误,但它与您的具体示例无关。如果您使用的是当前最新版本(1.0.3),那么这不应该发生。

如果版本1.0.3发生这种情况,理论上会修复下一次更新。在此之前,只需忽略循环的持续时间更改事件 - 您根本不需要它。