2016-10-13 00:16:48 点击量:19 标签: 收藏本文
视频类.在ActionScript 3.0中,提供了一个Video类,用来处理视频。使用Video类可以控制基本的视频文件功能比如编码、滤镜等。通过使用Video类的属性和方法,可以在程序中直接显示实时的视频流,而不用把视频文件编译到Flash Player视频文件中。
加载视频文件
.flv格式是Flash Player网络传输的视频文件的基本格式。可以通过一些工具把其他的视频文件格式转换为.flv格式,比如Flash CS3自带的工具Flash Video Encode。
加载一个视频文件,通常可以分为三步实现。其步骤如下所示。
创建一个NetConnection对象。NetConnection类作用是连接到远程服务器中,调用命令,播放视频。其代码如下所示:
// 建立连接
var nc:NetConnection = new NetConnection();
nc.connect(null);
创建一个NetStream对象。NetStream类作用是通过NetConnection对象提供的连接,打开Flash Player与服务器或Flash Player与本地文件系统之间的单向流连接。其代码如下所示:
// 创建视频流
var ns:NetStream = new NetStream(nc);
// 开始播放
ns.play("CuPlayer.flv");
创建一个Video对象。调用Video类的attachNetStream事件,可以直接显示视频流。其代码如下所示:
// 视频传输到本地
// 创建Video对象
var vid:Video = new Video();
vid.attachNetStream(ns);
通过这三个步骤的操作,视频文件就被加载并播放。
下面示例说明如何播放一个本地的视频文件lake.flv。其完整的代码如下所示:
- package
- {
- import flash.display.Sprite;
- import flash.net.NetConnection;
- import flash.net.NetStream;
- import flash.media.Video;
- import flash.events.AsyncErrorEvent;
- public class VideoExample extends Sprite
- {
- /*************************************
- * CuPlayer.com构造函数
- * */
- public function VideoExample()
- {
- // 建立连接
- var nc:NetConnection = new NetConnection();
- nc.connect(null);
- // 创建视频流
- var ns:NetStream = new NetStream(nc);
- ns.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler);
- // 指定视频名
- ns.play("CuPlayer.flv");
- // 视频传输到本地
- var vid:Video = new Video();
- vid.attachNetStream(ns);
- // 添加到舞台上
- addChild(vid);
- }
- /*************************************
- * 捕获连接异常
- * */
- function asyncErrorHandler(event:AsyncErrorEvent):void
- {
- // 错误处理
- }
- }
- }
我们是一家提供综合软件外包与弱电工程服务的技术公司。
业务涵盖定制软件、管理系统、网站、小程序、APP、系统集成、网络布线、监控安防、门禁、机房建设及长期技术维护。
公司地址:湖北省宜昌市伍家岗区东站二路6号三峡(宜昌)大数据产业园海洋馆二楼A203室