·您当前的位置:首页 > 技术教程 > AS2与AS3技术 >

[AS3]as3获得视频当前时间与视频总时间代码示例

时间:2013-01-14 22:19CuPlayer.com
[AS3]as3获得视频当前时间与视频总时间代码示例

[AS3]as3获得视频当前时间与视频总时间代码示例

  1. package 
  2. { 
  3.  import flash.display.MovieClip; 
  4.  import flash.net.NetConnection; 
  5.  import flash.net.NetStream; 
  6.  import flash.events.MouseEvent; 
  7.  import flash.events.Event; 
  8.  import flash.media.Video; 
  9.  
  10.  public class TVideo extends MovieClip 
  11.  { 
  12.   private var nc:NetConnection; 
  13.   private var ns:NetStream; 
  14.   private var vid:Video; 
  15.   private var t:Number; 
  16.   private var duration:Number; 
  17.  
  18.   public function TVideo() 
  19.   { 
  20.    nc=new NetConnection(); 
  21.    nc.connect(null); 
  22.    ns = new NetStream(nc); 
  23.    ns.play("gl1.flv"); 
  24.    vid=new Video(); 
  25.    vid.attachNetStream(ns); 
  26.    var obj:Object=new Object(); 
  27.    obj.onMetaData = onMetaData; 
  28.    ns.client = obj; 
  29.    this.stage.addEventListener(MouseEvent.CLICK,onClick); 
  30.    this.loaderInfo.addEventListener(Event.COMPLETE,mcPlay); 
  31.   } 
  32.  
  33.   private function mcPlay(event:Event):void 
  34.   { 
  35.    addChild(vid); 
  36.   } 
  37.  
  38.   private function onClick(event:MouseEvent):void 
  39.   { 
  40.  
  41. //ns.time;//当前时间 
  42.    ns.seek(ns.time+5);//在当前的时间上加5 
  43.    //position(ns.time); 
  44.   } 
  45.  
  46.   private function onMetaData(infoObject:Object):void 
  47.   { 
  48.    duration=infoObject.duration;//获取总时间 
  49.   } 
  50.  
  51.   //拖拽播放的进度 
  52.   public function position(value:Number):void 
  53.   { 
  54.    if (value == int(duration)) 
  55.    { 
  56.     ns.seek(0); 
  57.    } 
  58.    else 
  59.    { 
  60.     if (value > Math.floor(int(duration) * ns.bytesLoaded / ns.bytesTotal)) 
  61.     { 
  62.      ns.seek(Math.floor(int(duration) * ns.bytesLoaded / ns.bytesTotal)-5); 
  63.     } 
  64.     else 
  65.     { 
  66.      ns.seek(value); 
  67.     } 
  68.    } 
  69.    trace(value,int(duration)); 
  70.    trace(ns.bytesLoaded+":"+ns.bytesTotal); 
  71.   } 
  72.  } 
  73.  
  74. } 

 

热门文章推荐

请稍候...

保利威视云平台-轻松实现点播直播视频应用

酷播云数据统计分析跨平台播放器