0

我已将 NetStream 附加到 Flash 电影中的视频控件。我无法理解如何向前或向后跳跃。

var ns:NetStream = new NetStream(nc); 
ns.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler); 
ns.play("Video.flv"); 
vid.attachNetStream(ns);

我需要类似的东西

btnSkip.addEventListener(MouseEvent.CLICK, playClicked);
function playClicked(e:MouseEvent):void {
ns.pause();
//ns.step(1000)
//ns.seek(1);
ns.resume();
}

ns.step() - 不起作用,我不知道为什么。ns.seek - 工作正常,但我不知道位置在哪里,没有 ns.position 和 ns.fps 属性可以添加 ns.seek(ns.position+(ns.fps*3)) 跳过 3 秒向前。

4

2 回答 2

1

其实很简单。在您的 netStream 上使用 seek 方法。要获取位置,请使用 time 方法,然后添加您需要的偏移量

前进 3 秒:

ns.seek(ns.time + 3);

向后 3 秒:

ns.seek(ns.time - 3);
于 2012-08-16T19:43:49.463 回答
1

这篇文章可能会对您有所帮助:Netstream and step() or seek()? .

你想玩什么?如果它只是一个静态视频,您可能能够使用常规视频对象,那么您将能够使用 playheadTime 属性(顺便说一下,这可能不是很准确 - 取决于关键帧的数量)。

祝你好运!

于 2012-08-16T19:39:48.817 回答