在Flash中使用HTTP Pseudostreaming时准确搜索

时间:2011-09-21 10:49:40

标签: flash flex flv

美好的一天!

在AS3中开发视频播放器时遇到了一个问题。我对FLV和MP4使用HTTP伪流(这里是假流浪的描述:http://flowplayer.org/plugins/streaming/pseudostreaming.html

问题: flv / mp4文件的大小分布不是线性的,因此基于(stream.bytesLoaded / stream.bytesTotal)* video.duration的搜索不准确。

我的解决方案

对于这个解决方案,我们需要在文件的开头有视频文件中的关键点\搜索点(无论如何都需要)。

  1. 用户点击搜索栏,我们以秒为单位计算目标搜寻时间

  2. 我们检查目标时间是否已经缓冲: 2.1。如果是这样 - 只需寻求使用NetStream.seek() 2.2。如果未加载目标时间 - 使用文件元数据中的关键点表找到neares seekpoint并执行切换到添加了?start=...的新URL

  3. 使用这种技术我可以获得准确的搜索,但整体方法有点棘手。

    还有更好的方法吗?

1 个答案:

答案 0 :(得分:0)

以防任何人需要有关此主题的帮助,这里是osmf插件,您可以使用flex的视频播放器来完成伪流程:

Github link