视频对象用来显示实时的或者录制的视频流。视频对象显示的可以是通过Camera.get方法捕捉到的实时视频,也可以是通过NetStream.play方法播放的实时的或者录制的视频文件和MP3音频文件。
为了能够显示视频流,首先要放置视频对象到舞台,然后使用video.attachVideo方法附加视频流到视频对象即可。
视频对象的使用类似于MC,和其它可放置到舞台的对象一样,你可以设置不同的属性。视频对象的常用属性有:
width 视频对象的宽度
height 视频对象的高度
deblocking 是否使用deblocking过滤,默认为0自动适应,1为从不使用,2总是使用
smoothing 是否使用平滑过渡,默认为false不使用,true则使用平滑过渡(需要高品质播放模式)
下面的例子说明了如何发布、录制和回放视频
如果要清除当前的视频对象,可以使用clear方法
需要注意的是,清除视频对象并不意味着中断连接,要中断数据流在视频对象中的播放,可以这样处理:
为了能够显示视频流,首先要放置视频对象到舞台,然后使用video.attachVideo方法附加视频流到视频对象即可。
1 : my_cam = Camera.get();
2 : my_video.attachVideo(myCam); // myVid 是放置到舞台的一个视频对象
2 : my_video.attachVideo(myCam); // myVid 是放置到舞台的一个视频对象
视频对象的使用类似于MC,和其它可放置到舞台的对象一样,你可以设置不同的属性。视频对象的常用属性有:
width 视频对象的宽度
height 视频对象的高度
deblocking 是否使用deblocking过滤,默认为0自动适应,1为从不使用,2总是使用
smoothing 是否使用平滑过渡,默认为false不使用,true则使用平滑过渡(需要高品质播放模式)
下面的例子说明了如何发布、录制和回放视频
01 :
// 实时播放的同时录制视频文件
02 : //录制的视频文件名为 'allAboutMe.flv'
03 : var my_nc:NetConnection = new NetConnection();
04 : my_nc.connect('rtmp://localhost/allAboutMe/mySpeech');
05 : var publish_ns:NetStream = new NetStream(my_nc);
06 : publish_ns.publish('allAboutMe', 'record');
07 : publish_ns.attachVideo(Camera.get());
08 :
09 : // 播放录制的视频文件
10 : // 注意:播放录制文件不需要再发布视频流
11 : var my_nc:NetConnection = new NetConnection();
12 : my_nc.connect('rtmp://localhost/allAboutMe/mySpeech');
13 : var subscribe_ns:NetStream = new NetStream(my_nc);
14 : subscribe_ns.play('allAboutMe');
15 : my_video.attachVideo(subscribe_ns); // my_video是一个视频对象实体
02 : //录制的视频文件名为 'allAboutMe.flv'
03 : var my_nc:NetConnection = new NetConnection();
04 : my_nc.connect('rtmp://localhost/allAboutMe/mySpeech');
05 : var publish_ns:NetStream = new NetStream(my_nc);
06 : publish_ns.publish('allAboutMe', 'record');
07 : publish_ns.attachVideo(Camera.get());
08 :
09 : // 播放录制的视频文件
10 : // 注意:播放录制文件不需要再发布视频流
11 : var my_nc:NetConnection = new NetConnection();
12 : my_nc.connect('rtmp://localhost/allAboutMe/mySpeech');
13 : var subscribe_ns:NetStream = new NetStream(my_nc);
14 : subscribe_ns.play('allAboutMe');
15 : my_video.attachVideo(subscribe_ns); // my_video是一个视频对象实体
如果要清除当前的视频对象,可以使用clear方法
1 : my_video.clear();
需要注意的是,清除视频对象并不意味着中断连接,要中断数据流在视频对象中的播放,可以这样处理:
1 : my_video.attachVideo(null);