• 【设为首页】
  • 【收藏闪客居】
当前位置:主页>FLASH AS 编程>AS基础篇>AS 3.0>文章内容
  • Flash CS3 +As3 video
  • 来源:egoldy flashblog 作者:egoldy 2007-06-05 【


使用As 3播放视频,与AS2的方法上大体上相似,相比来讲对于cuePoint和metaData的处理AS3会显得更简单,并且方法更多,另外对于netStream的方法在AS3中也增加了许多.下面的是一个小的测试.

package cn.com.webstudio{
import flash.display.Sprite;
import flash.media.Video;
import flash.net.NetConnection;
import flash.net.NetStream;
import flash.events.MouseEvent;

public class Wsvideo extends Sprite {
private var myvideo:Video;
private var nc:NetConnection;
private var ns:NetStream;
public function Wsvideo() {

init();
}

private function init():void {
//创建一个大小为400,240的video对象.
myvideo=new Video(400,240);
addChild(myvideo);
nc=new NetConnection();
nc.connect(null);
ns=new NetStream(nc);

myvideo.attachNetStream(ns);
ns.play("wsvideo.flv");
ns.bufferTime =10;

//获取cuePoint和metaData信息.此处要比AS2更简单.
var customclient:Object = new Object();
customclient.onCuePoint = cuePointHandler;
customclient.onMetaData = metaDataHandler;
//设定client属性为customclient对象。那么customclient对象的两个方法将被调用。
ns.client = customclient;

stage.addEventListener(MouseEvent.MOUSE_DOWN, onSwitchMovie);

}
private function cuePointHandler(infoObject:Object):void{

trace(infoObject.name);

}
private function metaDataHandler(infoObject:Object):void{
trace(infoObject.duration);

}
private function onSwitchMovie(event:MouseEvent):void{
//As3.0中netStream中的新的togglePause()方法.
ns.togglePause();
}

}
}

 
在上面的代码,如果与AS2相比,现在只需要创建一个video实例即可,不需象在AS2中那需要在库中创建视频对象,当然这里主要是指不使用组件的方式.第二处是关于cuePoint和metaData的处理,在As3.0只需要创建一个对象如上面创建的是customclient对象,它相当于是为onCuePoint和onMetaData创建了事件侦听器.当事件发生时,执行cuePointHandler和metaDataHandler事件处理函数.最后将ns的client属性设置为customclient。client属性的主要是用于指定哪个对象的方法将调用。可参考帮助文件。AS3 中的togglePause();是一个不错的方法,自动在停止和播放之间切换。

 

鼠标点击停止播放,再次点击继续播放。




上一篇:AS3 让载入的 GIF 动起来   下一篇:AS3应用程序模块化开发与ApplicationDomain
  • 用户名:新注册) 密码: 匿名评论
  • 评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规)

Copyright © 2006-2008 flashas.net All Rights Reserved.
网站内容咨询: admin#flashas.net (#为@) 联系QQ:40777822 浙ICP备06033001号
(本网站最佳浏览解析度为1024*768, 建议使用IE 6.0或以上版本浏览器。)