用fms做一个广播系统
这好像还是上学期做的了,还是拿出来和大家分享下,fms能做的东西很多,很容易就能做一个高技术的东东出来,不过价格是相当昂贵啊!去adobe官网可以下载开发者版本玩玩,也可以偷偷去下个注册机搞正式版!
广播端:(哈哈,衣服怎么样,校园ria代表,adobe送的哦)

观众接受端:

首先,你还是要明白netStream和netConnection,去看看帮助文档吧,流的应用太广了,是应该深刻去看看。
关于fms应该怎么弄,我也不说了,首先连接到fms服务器的地址,fms默认端口是80,我修改了为88,broadcastRoom相当与一个应用程序
连接服务器,
var rtmp:String = "rtmp://localhost:88/broadcastRoom"; nc.connect(rtmp);
等连接上后,打通流(常识),还有摄像头,麦克风,video的设置就不摆上来了
streamOut = new StreamAV(nc); streamOut.streamOut(mic,cam,"presentation");
主要是下面这句,streamOut(mic,cam,"presentation");mic和cam就是把麦克风和摄像头捕获的信息通过流传送到“观众”,而第3个参数,就是给这个流起一个名字,等“观众”可以找到这个流。
观众端其实大概差不多,就是把那流接受进来,通过video播放出来就是了(看到那个流名字了吗)
streamIn = new StreamAV(nc); streamIn.streamIn(vid,"presentation");
还有就是服务器端代码
application.onAppStart = function()
{//程序启动
trace("The Broadcast has begun!");
};
application.onConnect = function(client,streamName)
{//连接上
client.name=streamName;
trace(client.name + " has connected");
application.acceptConnection(client);
trace(client.name + " has been accepted");
client.setBandWidth=function(inBandWidth, outBandWidth) //onConnect里的函数可以在flex端nc.call("setBandWidth",null,100,outBandWidth);来调用
{//设置流出流入带宽
client.setBandwidthLimit(inBandWidth,outBandWidth);
}
}
application.onDisconnect = function(client)
{//连接断开
trace(client.name + " has left.");//trace的东西要在控制台才可以看得到
}
浙公网安备 33010602011771号