4

我一直在为网络创建自定义视频播放器。在我运行它的某些机器上,它会开始加载 .flv 文件,然后在 30 秒到一分钟内没有任何进展,然后显示视频已完全加载。我正在检查bytesLoaded / bytesTotal使用Event.ENTER_FRAME. 当单独跟踪时,当它显示完全加载时似乎发生了什么,该bytesTotal值更改为当前bytesLoaded值,导致我的视​​频播放器注册我的负载百分比为 1。我已经跟踪了 NetStatus event.code 值并且没有更新表明存在任何类型的错误。我得到的只是一个NetStream.Play.Start NetStream.Buffer.Full,然后它将等待并重置字节总值。

所以我要问的是是否有办法解决这个问题?

4

2 回答 2

1

这个问题似乎没有具体的答案。从那以后,我再次尝试解决这个问题,我学到了两个教训。

1) 你可以绕过 netstream 类中的大多数缺点,方法是不允许它尝试使用bytesLoaded,bytesTotalbufferTime属性来寻找加载点。这可以让您确保您永远不允许在可能导致问题的时间尝试搜索。

2) 在尝试发送另一个之前,始终允许先前的搜索尝试完成并正确处理它。

于 2011-04-06T19:09:40.980 回答
0

您是否正在播放其 moov atom(例如元数据)位于文件末尾的 mp4?如果是这样,Flash 将无法播放文件,直到整个文件加载并能够读取元数据。

此工具应修复您的视频文件: http ://renaun.com/blog/code/qtindexswapper/

于 2011-04-05T01:49:00.120 回答