写作因为我遇到了使用WebAudioAPI播放缓冲样本的问题。 基本上我有一个网站可以同步设备时钟,在Soundcloud上下载文件,并在准确的时间开始播放,从而导致多个设备同步播放。同步时钟效果很好,音乐在计算机上一起播放。 麻烦的是,在智能手机上,即使时钟精确同步,似乎也会出现20毫秒到500毫秒之间的随机延迟,并且导致的播放不同步。 解决问题的第一步是找出造成这种延迟的原因。
我有一些想法,但没有证据:
•硬件延迟?但那么延迟不会是恒定的吗?
•内存使用量太大,因为缓冲区加载会减慢速度并以某种方式添加抖动?
真的没什么线索,所以即使是不工作的想法也会很好!
谢谢!
答案 0 :(得分:3)
不,这听起来肯定像音频硬件延迟。在给定的设备和操作系统上延迟应该是相当稳定的,但在各种设备(特别是不同的Android设备)之间会有很大差异。
我们1)在未来的Android中努力改进这一点,以及2)在规范和实现中工作以暴露硬件延迟。就目前而言,除了在给定设备上保留已知延迟表之外,没有什么好的答案。