FMS3系列(五):通过FMS实现时时视频聊天
2009-05-05 12:06:31 来源:WEB开发网视频接收端相对发布端更简单,提供一个NetConnetion连接到发布端的FMS,通过NetStream播放时时视频流就完成。代码很简单,基本上都是在本系列前几篇文章中出现过的代码片段整合而成,详细见下代码块:
package
{
import flash.net.*;
import flash.events.*;
import flash.display.*;
import flash.media.*;
public class LiveStream extends Sprite
{
private var video:Video;
private var nc:NetConnection;
private var ns:NetStream;
public function LiveStream():void
{
nc = new NetConnection();
nc.connect("rtmp://localhost/LiveStreams");
nc.addEventListener(NetStatusEvent.NET_STATUS,onNetStatusHandler);
}
private function onNetStatusHandler(evt:NetStatusEvent):void
{
if(evt.info.code=="NetConnection.Connect.Success")
{
ns=new NetStream(nc);
ns.addEventListener(NetStatusEvent.NET_STATUS,onNetStatusHandler);
ns.client=new CustomClient();
video=new Video();
video.attachNetStream(ns);
ns.play("1111");//1111为流的名字,对应于视频流发布端的publish("1111","live").
addChild(video);
}
}
}
}
OK,到这里视频聊天的两端都完成了,如果需要做双向视频聊天,只需要在每一边多提供一个流就可以了,两端都实现发布视频流和接收视频流数据。
或许看完文章的朋友回问到CustomClient是那里来的,CustomClient是为了处理元数据的,可以通过元数据向实况视频添加一些格外的属性,本文暂时不讨论,有兴趣的朋友可以查看官方文档了解。
系列文章:
FMS3系列(一):第一个FMS程序,连接到FMS服务器(Flash/Flex两种实现)
FMS3系列(二):创建可交互的FMS连接--I can say:Hello World
FMS3系列(三):创建基于FMS的流媒体播放程序,看山寨帮的山寨传奇
FMS3系列(四):在线视频录制、视频回放
FMS3系列(六):使用远程共享对象实现多人实时在线聊天
更多精彩
赞助商链接