【问题标题】:Flash AS3: NetStream buffer controlFlash AS3:NetStream 缓冲区控制
【发布时间】:2011-01-19 23:18:18
【问题描述】:

我在舞台上有两个 FLV 视频播放器,使用两个 AS3 NetStream 对象进行播放。我需要让两个播放器同步,这意味着当两个流的缓冲区已满时播放应该开始,并且当其中一个缓冲区清空时都应该暂停,等待再次重新填充。

我的问题是,第二个视频的缓冲过程只有在第一个流完全加载后才开始(不仅是 bufferTime=5 秒,而是整个 10 分钟)。 有什么方法可以达到这个结果,从第一个流缓冲 5 秒,然后从第二个流缓冲 5 秒,依此类推?

谢谢

【问题讨论】:

    标签: flash actionscript-3 netstream


    【解决方案1】:

    假设您正在谈论渐进式流... 如果需要,您实际上可以完全预加载它们并将它们保存在内存中直到需要。

    这样做:

    • netStream.play()开始加载
    • 捕获“NetStream.Play.Start”状态事件并直接暂停()流(加载将继续)。
    • 此后,您只需检查两个流的bytesLoaded,直到您对播放它们的数据量感到满意为止。

    【讨论】:

    • 感谢您的回复;是的,我已经有了这个,我的问题是第二个在第一个完成缓冲后开始缓冲(两者都在开始时暂停)。几分钟前,我注意到该问题仅出现在 Firefox/Chrome 中,但在 IE/Safari 中工作得很好。所以我正在寻找知道这一点的解决方案。无论如何,再次感谢您的回复。
    • 噢,好的,明白了。不幸的是,我怀疑你会反对浏览器的内部加载行为。不过,这是一个非常有趣的,感谢您发现这一点!
    猜你喜欢
    • 1970-01-01
    • 2011-06-28
    • 1970-01-01
    • 2014-12-29
    • 1970-01-01
    • 1970-01-01
    • 2011-04-15
    • 2017-03-09
    • 1970-01-01
    相关资源
    最近更新 更多