1

我正在使用SuperpoweredAdvancedAudioPlayer该类播放一个可能非常大的音频文件,其编码会有所不同(不同的比特率、采样率,甚至编解码器)。我需要能够将此文件的播放与样本级别的另一个文件同步。

我想知道每次SuperpoweredAdvancedAudioPlayer::Process调用有多少样本被复制到音频缓冲区,但到目前为止只能通过调用找到近似值SuperpoweredAdvancedAudioPlayer::lastProcessMs() * SuperpoweredAdvancedAudioPlayer::sampleRate

我认为近似值足够好,但是无法访问样本级时序令人沮丧,因为当我同步两个流时它可能导致一些相位故障。

4

1 回答 1

1

SuperpoweredAdvancedAudioPlayer 的 process() 方法采用 numberOfSamples 参数。如果 process() 方法返回 true,它会将 numberOfSamples 样本放入缓冲区。所以只需累积 numberOfSamples。

于 2016-10-22T09:40:57.097 回答