我有一个从网络摄像头开始录制的功能,当用户点击按钮时会调用此功能。
功能如下:
private function buttonClickHandler(event:MouseEvent):void
{
addChild(videoCamera);
trace("Button clicked!");
if (camera.muted) {
trace("Camera Muted");
Security.showSettings(SecurityPanel.PRIVACY);
camera.addEventListener(StatusEvent.STATUS, statusHandler);
} else {
startCamera();
}
}
函数startCamera()
如下:
private function startCamera():void {
// here are all the quality and performance settings that we suggest
camera.setMode(160, 120, 12, false);
camera.setQuality(0, 75);
camera.setKeyFrameInterval(24);
microphone.rate = 11;
microphone.setSilenceLevel(0);
nc = new NetConnection();
nc.connect("rtmp://localhost/oflaDemo");
// get status information from the NetConnection object
nc.addEventListener(NetStatusEvent.NET_STATUS, ncOnStatus);
}
我试着编写停止录音的功能。为此,我写了一个函数
private function buttonClickHandler2(event:MouseEvent):void {
stopCamera();
}
包装函数以关闭NetConnection.
private function stopCamera():void {
nc.close();
}
但是,当我单击第二个按钮时,与服务器的连接中断(在Ubuntu 12.04上运行Red5 Media Server,先前的录制将被丢弃并开始新的录制。
我希望保存以前的录音,并停止录音。
请帮忙。