以下是我欣赏的2款播放器的AS语句代码,供参考。 祝您制作成功。掌握基本的基础后,还可以举一反三,多思考,多练习,制作出更全面新颖的作品来。娇娇随笔 -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- //普通FLV(MP4)播放器的AS简化代码: var nc:NetConnection = new NetConnection(); //新建网络连接对象“nc” nc.connect(null); //因为不是实时视频流,没有服务器,因而创建一个空连接 var ns:NetStream = new NetStream(nc); //新建网络视频流对象“ns”, 并将它绑定到网络连接对象“nc” myVideo.attachVideo(ns); //将视频流引入到舞台上的视频元件“myVideo” myVideo.smoothing = true; //设置视频元件的“平滑”属性 function videostate(){panbar.progresslayer._xscale = (ns.time/duration)*100;Math.abs(ns.time-duration)<0.5?ns.seek(0):null;} //播放过程中指示播放进度的功能函数,同时检测视频是否播放完毕,完毕则重新开始 ns.onMetaData = function(obj) { //获得视频数据时, duration = Math.floor(obj.duration); //提取视频总长度值 setInterval(videostate, 300); //设置每0.3秒调用一次播放进度指示函数以时刻刷新进度指示 btn_playpause.onRelease = function(){ns.pause()}; //为“暂停/播放”按钮添加实现其功能的代码 panbar.onRelease = function() { ns.seek((this._xmouse/this._width)*duration)}; };//上面一行就是用户拖动或者点击播放进度条进行定位时,实现在缓冲区内改变播放头位置的功能代码。 ns.play(flvurl="http://image.hnol.net/c/swf/2010-06/07/13/20100607135239471-2276736.swf"); //上面一行代码的意思是:将FLV地址赋于变量“flvurl”以备用户拖动进度条定位视频时用,并用视频流对象“ns”开始播放这个FLV视频。 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- //用户自由定位FLV(MP4)播放器的AS简化代码: var nc:NetConnection = new NetConnection(); //新建网络连接对象“nc” nc.connect(null); //因为不是实时视频流,没有服务器,因而创建一个空连接 var ns:NetStream = new NetStream(nc); //新建网络视频流对象“ns”, 并将它绑定到网络连接对象“nc” myVideo.attachVideo(ns); //将视频流引入到舞台上的视频元件“myVideo” myVideo.smoothing = true; //设置视频元件的“平滑”属性 function videostate() { panbar.progresslayer._xscale = (ns.time/duration)*100 } //播放过程中指示播放进度的功能函数 ns.onMetaData = function(obj) { //获得视频数据时, duration = obj.duration; //提取视频总长度值 setInterval(videostate, 1000); //设置每秒钟调用一次播放进度指示功能函数以时刻刷新进度指示 flvkeyframelst = obj.keyframes.filepositions; //获取FLV关键帧列表数组,以备拖动定位时调用 btn_playpause.onRelease = function(){ns.pause()}; //为“暂停/播放”按钮添加实现其功能的代码 panbar.onRelease = function() { ns.play(flvurl+"?start="+flvkeyframelst[Math.floor(flvkeyframelst.length*(this._xmouse/this._width))])}; }; //上面一行就是用户拖动或者点击播放进度条进行自由定位时,实现其功能的关键语句。 var sina:XML=new XML(); //新建一个XML对象,用以加载XML播放列表,从中获取FLV地址 sina.ignoreWhite=true; //指定这个XML对象忽略空格 sina.onLoad=function(success){ns.play(flvurl=this.childNodes[0].childNodes[5].childNodes[2].childNodes[0].nodeValue)}; //上面一行代码的意思是:播放列表载入时解析出FLV地址,赋于变量“flvurl”以备用户拖动进度条定位视频时用, //并用视频流对象“ns”开始播放这个FLV视频。 sina.load("http://v./v_play.php?vid=32682154"); //加载视频编号为“32682154”的视频节目的播放列表,以启动全部代码。 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|