AS3 - 如何知道视频是否已经结束?

Luc*_*hez 5 video actionscript-3

我正在使用flash.net.NetStream和flash.media.Video来播放.flv,这里有一些代码:

var stream:NetStream = new NetStream(connection);

//next line is to avoid an error message
stream.client = {onMetaData: function(obj:Object):void {}}

var video:Video = new Video();
video.attachNetStream(stream);
stream.play("url.to/video");

addChild(video);
Run Code Online (Sandbox Code Playgroud)

这播放视频,但是我怎么知道视频从开始到结束的时间?如何知道视频是否播放了它的长度?

PS:抱歉我的英语不好.

Luc*_*hez 14

Bartek的答案是最准确的,但我发现我需要的代码是"NetStream.Play.Stop"

代码"NetStream.Play.Complete"不存在.

stream.addEventListener(NetStatusEvent.NET_STATUS, statusChanged);

function statusChanged(stats:NetStatusEvent) {
    if (stats.info.code == 'NetStream.Play.Stop') {
         trace('the video has ended');
    }
}
Run Code Online (Sandbox Code Playgroud)

这是有效的,因为你不能停止流,只暂停它(并恢复它),所以出现这种状态的唯一方法是结束视频播放到达终点(这就是我需要的)

PS:抱歉我的英语不好.