我需要以不同的速率显示FLV的帧。
以下是一些例子:
目前我正在使用LoaderMax和它的VideoLoader对象来加载和播放FLV文件。 我尝试使用playProgress属性,但只显示FLV的关键帧。我在基本设置(使用NetStream类)
时获得了相同的结果作为一种解决方法,我回放FLV一次,并缓存BitmapData实例,我在其中绘制/缓存视频的每一帧。完成此操作后,我使用BitmapData Vector更新舞台上的位图。使用这种方法,擦洗/更改速度可以正常工作,但是用户仍需要查看(等待)序列一次,当它被缓存时,我不喜欢。
关于如何做到这一点的更好的想法?
任何提示都很有用, 谢谢!
答案 0 :(得分:2)
问题的问题:它让我阅读flv format spec (from page 74)并开始编写基于ByteArray
的解析器。据我所知,有两种方式:
Body VideoTagBody VideoTagBody 包含视频帧有效载荷。
所以似乎可以作为像素数据访问每一帧
另一个是将元数据中的帧率设置为你喜欢的值,将一个flv写回ByteArray并保存到本地文件系统或使用NetStream.appendBytes()
进行播放
答案 1 :(得分:1)
之前我已经看过这个,但是视频被导入到flash ide中,我们操纵了擦洗的时间线。我相信我们有慢动作播放版本的第二版视频,并在两个动画片段之间切换。相当低技术的方法,并没有没有它的问题,但我们绕过它们。我有一种感觉,你会用渐进式下载用一个普通的老式flv来做这件事。