import mx.utils.Delegate;
//创建一个基本的网络连接对象
var nc:NetConnection = new NetConnection();
//连接到本地的Red5服务器
nc.connect("rtmp://localhost/online");
//将已和red5服务器建立连接的nc传递给NetStream
var ns:NetStream = new NetStream(nc);
//从摄像头和麦克风取得信息
var cam:Camera = Camera.get();
var mic:Microphone = Microphone.get();
//初始化摄像头和麦克风,调用函数
setupCameraMic();
//保存上次录制的内容,并进行清空
var lastVideoName:String = "";
//监听开始录制和停止录制两个按键的点击动作并进行相应的处理
playButton.addEventListener("click", Delegate.create(this, playClick));
stopButton.addEventListener("click", Delegate.create(this, stopClick));
//定义开始录制的playclick函数
function playClick():Void
{
//此flv文件是保存在 webapps/oflaDemo/streams/文件夹
//将摄像头和麦克风赋给ns
ns.attachVideo(cam);
ns.attachAudio(mic);
//将摄像头信息赋给视频显示窗口,这样我们可以即时看到信息
videoContainer.attachVideo(cam);
// 此处是定义存储名字的,用随机数目获得一个唯一的文件名
lastVideoName = "red5RecordDemo_" + random(getTimer());
ns.publish(lastVideoName, "record");
//锁定开始按键使其失效
playButton.enabled = false;
//锁定停止按键使其生效
stopButton.enabled = true;
}
function stopClick():Void
{
//关闭ns与red5的连接
ns.close();
//并清空视频显示窗口
videoContainer.attachVideo(null);
videoContainer.clear();
//锁定开始按键使其生效
playButton.enabled = true;
//锁定停止按键使其失效
stopButton.enabled = false;
//播放已经录制的视频
playLastVideo();
}
function playLastVideo():Void
{
// 传递录制的视频信息给视屏显示窗口
videoContainer.attachVideo(ns);
//回访已经上次录制的视频片段
ns.play(lastVideoName);
}
function setupCameraMic():Void
{
//启动摄像头
cam = Camera.get();
//设置尺寸
cam.setMode(320, 240, 30);
//设置录制质量
cam.setQuality(0,70);
//启动麦克风
mic = Microphone.get();
mic.setRate(44);
}
1).Windows平台
先安装JDK,如果未安装过JDK,建议安装最新的JDK1.6(JDK6.0)
到http://java.sun.com/javase/downloads/index.jsp页面,选择
点击Download后,会到下载页面,如果未登录过sun.com的,会跳转到登录页面
如果没有账号,可以注册一个帐号,登陆后,再到下载页面。
点击Accept前面的单选框
点击第一个安装包进行下载,下载完成后,双击进行安装
用默认设置进行安装即可。安装完成后,到命令行检测是否安装成功
下载Red5安装包http://dl.fancycode.com/red5/setup-red5-0.6rc2.exe,用默认安装即可,让Red5以服务方式运行。将online.zip解压到Red5安装目录下的webapps文件夹里,默认为C:\Program Files\Red5\webapps
将该online目录以及该目录下面的子目录属性设置为所有人可读写。
online.zip下载地址:http://www.supesite.com/tools/online.zip
重启Red5服务
2).Linux/Unix平台
先安装JDK,如果未安装过JDK,建议安装最新的JDK1.6(JDK6.0)
到http://java.sun.com/javase/downloads/index.jsp页面,选择
点击Download后,会到下载页面,如果未登录过sun.com的,会跳转到登录页面
如果没有账号,可以注册一个帐号,登陆后,再到下载页面。
点击Accept前面的单选框
根据自己服务器的操作系统,选择相应的安装包。如:Linux RPM包。
对于使用FreeBSD操作系统的站长,
请到http://www.freebsdfoundation.org/downloads/java.shtml下载最新的JDK1.5安装包。
如果安装的是JDK1.5的服务器,请再下载apache-ant;
http://mirror.cc.columbia.edu/pub/software/apache/ant/binaries/apache-ant-1.7.0-bin.tar.gz
将apache-ant-1.7.0-bin.tar.gz放到/tmp目录下
mv apache-ant-1.7.0-bin.tar.gz /tmp cd /usr/local tar -zxf /tmp/apache-ant-1.7.0-bin.tar.gz mv apache-ant-1.7.0 ant |
设置变量环境
export PATH=$PATH:/usr/local/ant/bin |
如果是FreeBSD操作系统,建议利用ports安装ant。
下载Red5程序包http://dl.fancycode.com/red5/red5-0.6rc2.tar.gz
将red5-0.6rc2.tar.gz放到/tmp目录下
mv red5-0.6rc2.tar.gz /tmp cd /usr/local tar -zxf /tmp/red5-0.6rc2.tar.gz mv red5-0.6rc2 red5 |
如果安装的JDK版本为1.5,请重新编译red5。
cd /usr/local/red5 vi build.properties |
找到java.target_version=1.6修改为java.target_version=1.5,然后进行重新编译
cd /usr/local/red5 ant |
将online.zip解压到/usr/local/red5/webapps下
将该online目录以及该目录下面的子目录属性设置为777
online.zip下载地址:http://www.supesite.com/tools/online.zip
cd /usr/local/red5/webapps tar -zxf /tmp/online.tar.gz |
开启Red5服务
/usr/local/red5/red5.sh & |