[AS3]as3处理视频时获取视频总时长和当前播放时间点代码示例
[AS3]as3处理视频时获取视频总时长和当前播放时间点,获得当前播放时间,获得总的播放时间,加载视频
[AS3]as3处理视频时获取视频总时长和当前播放时间点
- package
- {
- import flash.display.MovieClip;
- import flash.net.NetConnection;
- import flash.net.NetStream;
- import flash.events.MouseEvent;
- import flash.events.Event;
- import flash.media.Video;
- public class TVideo extends MovieClip
- {
- private var nc:NetConnection;
- private var ns:NetStream;
- private var vid:Video;
- private var t:Number;
- private var duration:Number;
- public function TVideo()
- {
- nc=new NetConnection();
- nc.connect(null);
- ns = new NetStream(nc);
- ns.play("gl1.flv");
- vid=new Video();
- vid.attachNetStream(ns);
- var obj:Object=new Object();
- obj.onMetaData = onMetaData;
- ns.client = obj;
- this.stage.addEventListener(MouseEvent.CLICK,onClick);
- this.loaderInfo.addEventListener(Event.COMPLETE,mcPlay);
- }
- private function mcPlay(event:Event):void
- {
- addChild(vid);
- }
- private function onClick(event:MouseEvent):void
- {
- //ns.time;//极酷播放器cuplayer.com提示:当前时间
- ns.seek(ns.time+5);//在当前的时间上加5
- //position(ns.time);
- }
- private function onMetaData(infoObject:Object):void
- {
- duration=infoObject.duration;//获取总时间
- }
- //极酷播放器cuplayer.com提示:拖拽播放的进度
- public function position(value:Number):void
- {
- if (value == int(duration))
- {
- ns.seek(0);
- }
- else
- {
- if (value > Math.floor(int(duration) * ns.bytesLoaded / ns.bytesTotal))
- {
- ns.seek(Math.floor(int(duration) * ns.bytesLoaded / ns.bytesTotal)-5);
- }
- else
- {
- ns.seek(value);
- }
- }
- trace(value,int(duration));
- trace(ns.bytesLoaded+":"+ns.bytesTotal);
- }
- }
- }
热门文章推荐
- [HLS]做自己的m3u8点播系统使用HTTP Live Streaming(HLS技术)
- [FMS]FMS流媒体服务器配置与使用相关的介绍
- [AS3]什么是M3U8,与HTML5的区别是什么
- AS2.0 让flash自适应全屏,并且不自动缩放
- [AS3]as3.0的sound类常用技巧整理
- [AS3]as3与ByteArray详解、ByteArray介绍、ByteArray用法
- 关于RTMP,RTMPT,RTMPS,RTMPE,RTMPTE协议的介绍
- [JS]分享浏览器弹出窗口不被拦截JS示例
请稍候...