flash与后台数据交换方法整理续2、WebService
作者 佚名技术
来源 服务器技术
浏览
发布时间 2012-07-08
t服务端自行开发的话,需要对Socket技术比较了解才行,好在网上有现成的服务端软件(商业的XMLSocketServer有Unity、Fortress;开源的XMLSocketServer有OreganoMultiuserServer); 3、还有就是XMLSocket的80端口与flash安全策略问题... 这一篇是前四个(LoadVars(XML)、Flash Remoting、Webservice、XMLSocket)的补充篇,本来我没有考虑进去,因为FlashCom(FMS)主要用于流媒体技术,今天要感谢Danger提出来了,呵呵,今天心情不错,就一气合成了! FlashCom(FMS)主要用于与服务端进行流媒体通信,目前应用领域就是Flash流媒体播放,Flash在线直播,Flash视频音频聊天,Flash视频会议,Flash在线游戏等。 FlashCom的运行环境(FMS的运行环境): 1、Windows操作系统:Windows 2000 Server或者Windows NT 4.0 Server(sp6); 2、Linux操作系统:Red Hat Linux 7.3 或者 8.0; 3、服务器的CPU是Pentium III 500 MHz或者更高(推荐值是双个Pentium 4 CPU); 4、服务器的内存是256M RAM 或者更高(推荐值是512M)。 FlashCom(FMS)的优点: 1、能够实现即时视频音频通信(当然它也支持文本通信的); 2、能够流媒体同步播放(也叫在线直播); 3、能够通过Flash Player(6.0以上版本)录制视频音频,无需其他客户端; 4、能够实现客户端实现之间的控制(如会议主持人权限)。 FlashCom(FMS)的缺点: 1、FlashCom(FMS)服务端软件是MM公司的产品,需要花银子去买的(一笔不小的投入),好在现在有一个正在完善中的开源项目——RED5; 2、由于是流媒体服务端软件,所以对服务器的 //=======================================; //Flash客户端(以简单的在线录制视频为例) //=======================================; stop(); varnc:NetConnection=newNetConnection(); varns:NetStream; varcam:Camera=Camera.get(); varmic:Microphone=Microphone.get(); //预览本地摄像头视频; video_box.attachVideo(cam); //初始化NetStream; functioninitNetStream():Void{ ns=newNetStream(nc); //设置2秒的缓冲时间; ns.setBufferTime(2); //使用NetStream加载视频和音频对象; ns.attachVideo(cam); ns.attachAudio(mic); //NetStream状态信息; ns.onStatus=function(info:Object){ trace("ns.onStatus:"+info.code); }; } //录制视频音频; functionrecordStream(){ ns.publish("kinglong","record"); } //停止录制; functionstopStream(){ ns.close(); } //删除视频音频文件; functiondeleteStream(){ nc.call("clearStream",null,"kinglong"); } //NetConnection状态信息; nc.onStatus=function(info:Object){ trace("nc.onStatus:"+info.code); switch(info.code){ case"NetConnection.Connect.Success": initNetStream(); break; } }; //连接FlashCom服务器 nc.connect("rtmp:/"+"recordstream"); //=======================================; // FlashCom(FMS)服务端代码 //将下列代码存成main.asc文件(此文件名固定),在FlashCom的applications目录下建立一个recordstream目录(对应着客户端的”recodstream”),并将main.asc放在这个目录中。 //=======================================; application.onAppStart=function(){ } application.onAppStop=function(){ } application.onConnect=function(client){ application.acceptConnection(client); } application.onDisconnect=function(client){ } //=======================================; //获取flv文件时间长度; functiongetStreamLength(name){ returnStream.length(name);; } //=======================================; //删除flv文件; functionclearStream(na |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
上一篇: trace()语句无效之解决办法下一篇: 从Js调用一个AS方法
关于flash与后台数据交换方法整理续2、WebService的所有评论