1

您好,我想知道哪个事件确定是否加载了外部视频(使用 Action Script 3、Flex SDK 3.4 编译器和 FlashDevelop -VideoEvent is not present here-)。

我正在使用 flash.media.video 组件

我已经尝试过使用 NetStatusEvent.NET_STATUS 和“NetStream.Buffer.Full”,但它似乎不起作用。

谢谢你。

4

1 回答 1

0

我有一个类似的问题......

首先,就 FLex/Flash NetStream 类而言,加载了两个东西,缓冲区和整个视频文件。整个视频通过 netStreamInstance.bytesLoaded 和 .bytesTotal 属性公开。缓冲区位于 .bufferLength 属性中,表示当前已预加载到缓冲区中的秒数。.bufferTime 属性指定在显示流之前将加载多少缓冲区。

我现在遇到的问题是如何实时重新调整缓冲区以实现较慢的连接。我已经设法计算缓冲区加载的时间并计算需要多少缓冲区才能播放而不停止,但是还有另一个问题:

假设我有一个 120 秒的视频(2 分钟),据计算,我需要在连接速度较慢的情况下缓冲 35 秒(我使用 Charles 作为带宽 Throttle),这样播放就不会赶上加载电影的结尾。 ..一旦开始播放,如果播放距离加载电影的当前结束时间超过 35 秒,它会暂停并等待缓冲区再次填满 - 但我不想要这个!在它开始播放之前我已经让它等待了足够长的时间,我希望它会在加载过程的几秒钟内到达电影的结尾 - 我不希望它在每次小于 35 秒时停止缓冲区......呃,多么痛苦

于 2010-05-01T00:14:32.293 回答