2016-10-13 00:16:48 点击量:15 标签: 收藏本文
Adobe的FMS真的是一个倍儿牛叉的技术!(至少Silverlight在"实时广播"方面目前还没有任何能超越FMS的迹象)
曾经盛极一时的tudou,ku6,第一视频...等一大堆视频分享类网站,几乎都使用的是Adobe的FMS技术.
今天先来做一个最简单的Hello World(例子出自FMS的官方文档)
1.先创建一个FMS应用HelloWorld
进入FMS的默认安装目录: C:\Program Files\Adobe\Flash Media Server 3.5\applications
在这下面创建一个HelloWorld目录即可
2.打开Flash Cs4,创建一个 Flash文件(ActionScript3.0),保存为"HelloWorld.fla"
拖二个按钮到舞台上,命名为btnConn,btnDisConn;对应的label文本为:"连接到FMS","断开与FMS的连接"
再拖一个Label到舞台上,命名为lblResult,用来显示操作结果
在第一帧上写入以下代码:
- var nc:NetConnection;
- //注册事件
- btnConn.addEventListener(MouseEvent.CLICK,btnConnClick);
- btnDisConn.addEventListener(MouseEvent.CLICK,btnDisConnClick);
- function btnConnClick(e:MouseEvent) {
- if (nc==null) {
- nc = new NetConnection();
- nc.addEventListener(NetStatusEvent.NET_STATUS,connHandler);//每当连接状态有变化时,会自动调用 connHandler
- nc.connect("rtmp://localhost/HelloWorld");
- lblResult.text="正在连接FMS...";
- }
- }
- function btnDisConnClick(e:MouseEvent) {
- if (nc!=null) {
- nc.close();
- nc=null;
- }
- }
- function connHandler(e:NetStatusEvent) {
- trace(e.info.code);
- switch (e.info.code) {
- case "NetConnection.Connect.Closed" :
- lblResult.text="成功关闭连接";
- break;
- case "NetConnection.Connect.Failed" :
- lblResult.text="连接尝试失败";
- break;
- case "NetConnection.Connect.Success" :
- lblResult.text="连接尝试成功";
- var resp:Responder = new Responder(onReply);
- nc.call("serverHelloMsg", resp, "Hi FMS!");//调用服务端的serverHelloMsg的方法
- break;
- case "NetConnection.Connect.Rejected" :
- lblResult.text="连接尝试没有访问应用程序的权限";
- break;
- default :
- lblResult.text=e.info.code;
- break;
- }
- }
- function onReply(e:Object){
- trace("服务端返回内容:" + e);
- lblResult.text = e.toString();
- }
我们是一家提供综合软件外包与弱电工程服务的技术公司。
业务涵盖定制软件、管理系统、网站、小程序、APP、系统集成、网络布线、监控安防、门禁、机房建设及长期技术维护。
公司地址:湖北省宜昌市伍家岗区东站二路6号三峡(宜昌)大数据产业园海洋馆二楼A203室