flash中NetConnection与NetStream知识整理

NetConnection只有一个connect方法,NetStream就完整多了,

方法如下:
   close() 关闭
   pause() 暂停
   play()      播放
   seek(n)     移动到n秒数值;
   setBufferTime(n) 设置n秒的缓冲区;


下面的是属性了:   
   bufferLength  目前在缓冲区的秒数数值;
   bufferTime   由setBufferTime设置的秒数数值;
currentFps   目前在串流资料中的每秒影格数;
   time      以秒为单位,当前已经播放过的时间;


事件处理函数:
   onStatus    返回串流的状态;
   onMetaData   返回串流的总时间;


例:
  在库中创建一个视频元件,取名为my_video;拖到场景中放好位置,在帧上输入如下代码:


var connection_nc:NetConnection = new NetConnection();//建立一个链接对象,


connection_nc.connect(null);//开始链接。


var stream_ns:NetStream = new NetStream(connection_nc);//建立一个视频对象,并和链接对象关联。


my_video.attachVideo(stream_ns);//场景中的新建视频实例加载视频。


stream_ns.setBufferTime(5);//设定N秒钟的时间缓冲区;


stream_ns.play("video_1.flv");//视频开始播放。


TotalTime();


stream_ns.onStatus = function(infoObject:Object) {//视频的事件反馈函数。


for (var prop in infoObject) {//获取事件内容infoObject[prop];


trace(infoObject[prop]);//跟踪一下stream_ms状态


var test:String = infoObject[prop];


if (test == "NetStream.Play.Stop") { //假如事件内容是flv播放完毕,则开始播放下一个或者重新播放,这就看自己的要求了。
trace("播放完毕,马上开始播放下一个");
stream_ns.play("video_2.flv");
TotalTime();
}
}
};
function TotalTime() {//duration获取影片的长度,flashmx2004下没有onMetaData,所以需要自己给它定义一个;flash8就不存在这样的问题,可以直接使用,也可以用2004的代码
stream_ns["onMetaData"] = function (metadata) {
Time_txt.text = "TotalTime: "+metadata.duration;
};
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值