Skip to content

Instantly share code, notes, and snippets.

@nwalker
Created July 2, 2012 10:37
Show Gist options
  • Save nwalker/3032567 to your computer and use it in GitHub Desktop.
Save nwalker/3032567 to your computer and use it in GitHub Desktop.
public function connect(parent : ClientController) : void
{
ns = new NetStream(parent.nc);
parent.addEventListener(PublishEvent.START, start);
parent.addEventListener(PublishEvent.STOP, stop);
ns.client = {};
ns.client.onMetaData = function(md : Object) : void { parent.ui.log.appendText("onMetaData: " + md + "\n"); };
ns.client.onPlayStatus = function(ev : Object) : void { parent.ui.log.appendText(ev.code + "\n"); };
}
private function start(ev : PublishEvent) : void
{
model.stream_name = ev.info.stream_name;
mic = getMicrophone();
updateMic();
cam = getCamera();
updateCam();
ns.attachAudio(mic);
ns.attachCamera(cam);
view.display.attachCamera(cam);
ns.publish(model.stream_name, "append");
}
private function stop(ev : PublishEvent) : void
{
ns.pause();
}
private function getMicrophone() : Microphone
{
return Microphone.getMicrophone();
}
private function getCamera() : Camera
{
return Camera.getCamera();
}
private function updateMic() : void
{
mic.enableVAD = model.mic_vad;
mic.codec = model.mic_codec;
mic.encodeQuality = model.mic_quality;
mic.noiseSuppressionLevel = -50;
mic.setLoopBack(model.mic_loopback)
mic.setSilenceLevel(0, 2000);
mic.setUseEchoSuppression(true);
}
private function updateCam() : void
{
cam.setLoopback(model.cam_loopback);
cam.setMode(1440, 1080, model.q_fps);
cam.setQuality(model.q_bandwidth, model.q_quality);
cam.setKeyFrameInterval(model.q_kfi);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment