制作一个全功能的FLV播放器

本文介绍如何使用FlashMXProfessional2004创建一个全功能FLV播放器,包括播放、暂停、停止等功能,并通过脚本实现缓冲进度显示。
 本文选自
[url=http://www.blueidea.com/news/book/2004/2049.asp]
[color="#444444"]《Flash MX Professional 2004第一步》[/color]
[/url]
一书
作者 陈冰
[color="#ff0000"][1b]本文可在蓝色理想网站中使用,未经允许不得转载。[/1b][/color]

[1b]创建一个全功能的FLV播放器[/1b]
我们将制作的这个FLV播放器由这样几部分组成:
一个用于显示视频图像的视频对象,
三个分别用于播放、暂停和停止视频的按钮,
以及一个用于显示缓冲区装载进度的动态文本。
1. 创建三个按钮元件,分别命名为“播放”、“暂停”、“停止”,将其各自一个实例拖放到场景舞台中。
2. 创建一个视频元件,将其一个实例拖放到场景舞台中,并赋予其实例名myVideo。
3. 在场景舞台中放置一个动态文本,赋予其实例名myText。
4. 在根时间线的第1帧中捆绑下面的脚本:
//创建一个NetConnection对象。
myFLVConnection=new NetConnection();
//创建一个流连接。
myFLVConnection.connect(null);
//创建一个NetStream对象。
//myFLVConnection被指定给该NetStream对象。
myFLVStream=new NetStream(myFLVConnection);
//myFLVStream被捆绑到Video对象myVideo:
myVideo.attachVideo(myFLVStream);
//设置缓冲时间。
myFLVStream.setBufferTime(10);
分析这段脚本,首先我创建了一个NetConnection对象myFLVConnection,然后我调用NetConnection对象的connect()方法打开了一个流连接,在调用connect()方法时你必须传递给它一个null值作为参数。
接下来,我利用myFLVStream=new NetStream(myFLVConnection);这行代码创建了一个NetStream对象myFLVStream,在创建时我就需要把为该“流”提供的“连接”告知它,即把myFLVConnection对象作为参数传递给NetStream类的构造函数。
之后,我把myFLVStream(“流”)捆绑到Video对象myVideo。然后,我还用NetStream类的setBufferTime()方法以秒为单位指定了一个缓冲时间,即要在缓冲区中装入可供播放多长时间的数据后才开始播放。
5. 在“播放”按钮实例上捆绑下面的脚本:
on(release){
    //装载并播放FLV文件。
    myFLVStream.play("myFLV.flv");
    //定义bufferLoad函数以供setInterval函数调用来显示缓冲进度。
    function bufferLoad(){
        //在动态文本中显示缓冲区的装载进度。
        myText.text="缓冲区已装载"+int((myFLVStream.bytesLoaded/myFLVStream.bytesTotal)*100)+"%";
}
        //设置时间间隔。
        setInterval(bufferLoad,20);
}
这行代码—myFLVStream.play("myFLV.flv");用来装载和播放FLV文件。如果你的FLV文件位于某个HTTP地址或本地文件系统的某处,你可以使用http://或file://这样的格式作为路径的前缀来指定FLV文件的位置。
这个表达式—myFLVStream.bytesLoaded/myFLVStream.bytesTotal用来检查缓冲区已装载的字节占缓冲区要装载的总字节的比值。bytesLoaded和bytesTotal是NetStream类的两个属性。
6. 在“暂停”按钮实例上捆绑下面的脚本:
on(release){
    //暂停FLV文件。
    myFLVStream.pause();
}
7. 在“停止”按钮实例上捆绑下面的脚本:
on(release){
    //停止FLV文件并同时删除下载的FLV文件。
    myFLVStream.close();
}
8. 制作完成。你应该在你的网站中测试这个FLV播放器。
本文转自:http://www.5uflash.com/flashjiaocheng/Fmsjiaocheng/2290.html
Flash Flv播放器|f4v视频播放器,支持MP4/3GP网页版,可用于电影网站的视频播放器,支持MP4/flv格式的视频播放,界面仿迅雷看看播放器,蓝色风格,十分漂亮,相关媒体属性定义:   id:Number ,媒体编号,无需设置,内部自动从0编号   title:String ,媒体标题,为空时自动取文件名填充,默认为空   type:String ,媒体类型,为空时自动取文件扩展名填充,默认为空   url:String ,媒体地址,必填项,媒体的网络地址,默认为空   start:Number ,开始播放的位置,单位毫秒,默认为0,即从头播放,当设置断点续播时,此设置无效   duration:Number ,媒体总时间,单位毫秒,为空时自动填充,默认为空   durationS:Number ,媒体总时间,单位秒,自动填充,无需设置   durationStr: String ,媒体总时间,字符串形式,如 00:00 ,自动填充,无需设置   totalbytes: Number ,媒体总大小,单位byte,自动填充,无需设置   totalbytesKB:Number ,媒体总大小,单位KB,自动填充,无需设置   totalbytesMB:Number ,媒体总大小,单位MB,自动填充,无需设置   width:Number ,媒体宽度,为空时自动填充,默认为空   height:Number ,媒体高度,为空时自动填充,默认为空   img:String ,媒体的背景图片地址,可以为空,默认为空   isIA:Boolean,布尔值,是否为广告,广告将会被强制播放,并禁止控制栏。默认为false   lrc:String ,lrc格式的歌词字幕地址,默认为空   format:Boolean,是否对媒体的url属性进行格式化,格式化后的媒体每次播放时都会被当成一首新的媒体从服务器加载,而不会从IE的缓冲中读取,此设置会导致断点续播无效,默认为false。   tgt:String ,点击视频画面时所要打开的网址,为空时为play/pause功能,默认为空   checkPolicyFile:Boolean,是否检查媒体的安全策略文件,默认为false 。   另外,你还可以添加自定义的属性 例如:singer="周杰伦"   在皮肤模板中列表元件的item属性可以采用 {$媒体属性名,长度} 的标签形式调用,如{$title,10} 调用媒体的标题信息并截取前10个字符。   crossdomain.xml为安全策略文件,如果你的媒体和播放器分离,请将此文件放置在媒体服务器上,并设置列表内媒体的属性checkPolicyFile为true
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值