0

我有一个从网络摄像头开始录制的函数,当用户单击按钮时会调用此函数。

功能如下:

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 媒体服务器,先前的记录被丢弃,并开始新的记录。

我想保存以前的录音,并停止录音。

请帮忙。

4

0 回答 0