我一直在为网络创建自定义视频播放器。在我运行它的一些机器上,它将开始加载.flv文件,然后在30秒到1分钟内没有进展,然后显示视频已完全加载。我正在使用bytesLoaded / bytesTotal
中的Event.ENTER_FRAME
检查已加载的内容。当单独跟踪显示完全加载时似乎发生的事情时,bytesTotal
值会更改为当前bytesLoaded
值,导致我的视频播放器将我的加载百分比注册为1.我已经找到了NetStatus event.code值并没有更新来显示存在任何类型的错误。我得到的只是NetStream.Play.Start
NetStream.Buffer.Full
,然后它会等待并重置字节总值。
所以我要问的是,是否有办法解决这个问题?
答案 0 :(得分:1)
这个问题似乎没有具体的答案。此后我再次尝试解决这个问题,我学到了两个教训。
1)您可以使用bytesLoaded
,bytesTotal
和bufferTime
属性尝试使用{{1}},{{1}}和{{1}}属性尝试搜索加载点,从而对netstream类中的大多数缺点进行编码。这可以让您确保永远不会允许尝试搜索到可能导致问题的时间。
2)在尝试发送另一个之前,始终允许先前的搜寻尝试完成并正确处理。
答案 1 :(得分:0)
你在玩mp4的moov原子(例如元数据)在文件的末尾吗?如果是这样,Flash将无法播放该文件,直到整个文件加载并且能够读取元数据。
此工具应修复您的视频文件: http://renaun.com/blog/code/qtindexswapper/