fms摄像头

来源:互联网 发布:淘宝产品排名规则 编辑:程序博客网 时间:2024/04/30 17:59

最近应手头一个项目要求,从昨天起开始学习Flash Media。这项技术虽然以前搞学习系统的时候听说过,但从未系统学习。我对Flash本身就相当陌生,除了能用它作简单AD条或站点Logo外,几乎对其它一无所知。这次学起来较吃力,几乎是从头学起。对于Flashcom,国内相关资料虽然很少,但找了一晚上还是有点收获的,现记录如下:

笔记:如何建立一个简单的application,实现flash在本地读取摄像头,并且publish到服务器,通过服务器再显示到本地。

1、安装FlashMediaServer2,可以到这个帖子下载。安装过程中需要输入name和password,下一步是服务器的端口(1935),和管理员管理服务器的端口(1111),默认就可以了,到这里最好再做一件事情,在防火墙中把这两个端口打开,为了以后方便。下一步安装目录默认,安装结束。

2、找到C:/Program Files/Macromedia/Flash Media Server 2/applications ,新建文件夹,取名字为myfirstApp,在myfirstApp里新建main.asc文件,在里边写上load("components.asc");就可以了。

3、在「开始」菜单/程序/Flash Media Server 2里,分别启动Start Flash Media Admin Server 2和Start Flash Media Server 2之后,点击Management Console.lnk,此时弹出的就是Media Server 2的管理程序。输入serverName:akins,Server Address:127.0.0.1,username password。登陆后,在程序左下方有个New Instance...,点击后向上弹出菜单,点击myfirstApp。这个就是在第2部我们建立的application。

4、在D:/Project下新建文件:test_060304.fla,拉入2个video组件,分别起名字为local_video和server_video。在帧上写上如下代码:

var client_cam:Camera = Camera.get();//获取摄像头

client_cam.setMode(176, 144, 20);//三个参数分别为摄像头捕捉的宽度高度帧率

client_cam.setQuality(57000, 1);//设置带宽和质量

local_video.attachVideo(client_cam);//向本地local_video添加摄像头图像

_global.Username="akins";

doConnect();

publishMe();

playMe(_global.Username);

function doConnect() {

client_nc = new NetConnection();//建立连接对象

client_nc.onStatus = function(info) {

trace("Level: "+info.level+newline+"Code: "+info.code);

};

client_nc.connect("rtmp://127.0.0.1/myfirstApp");

out_ns = new NetStream(client_nc);

in_ns = new NetStream(client_nc);

}

function publishMe() {

out_ns.attachVideo(client_cam);

out_ns.publish(_global.Username);

}

function playMe(toPlay) {

server_video.attachVideo(in_ns);

in_ns.play(toPlay);

}

Ctrl+Enter发布,完成。

原创粉丝点击