что я делаю сейчас:
cam = Camera.getCamera(); // Get default camera.
mic = Microphone.getMicrophone(); // Get the microphone
cam.setMode(800, 600, 25);
cam.setQuality(0,90);
videoDisplay.attachCamera(cam);
и когда пользователь нажимает кнопку для записи, я делаю следующее:
private function netStatusHandler(e:NetStatusEvent):void {
var code:String = e.info.code;
Alert.show("code = " + code);
if(code == "NetConnection.Connect.Success"){ //in case of recording...
ns = new NetStream(nc);
ns.attachCamera(cam);
ns.attachAudio(mic);
ns.publish( "file1", "record" );
}
else{
trace(code);
}
}
private function start_rec():void{
nc = new NetConnection();
nc.connect("rtmp://localhost/oflaDemo");
nc.addEventListener(NetStatusEvent.NET_STATUS,netStatusHandler);
}
, но качество записи ужасное... я использую тот же код, что и выше, чтобы воспроизвести видео вместо ns.publish, я делаю ns.play (), и показанное видео не соответствует ожиданиям, хотя, когда я ns.play (), готовые FLV-видео, используемые в качестве примеровred5 они играют идеально ... что-то не так с тем, как я записываю?с камерой?что не так?любая идея ??
Код для воспроизведения видео:
var nsClient:Object = {};
nsClient.onMetaData = ns_onMetaData;
nc = new NetConnection();
nc.connect(null);
ns = new NetStream(nc);
ns.client = nsClient;
video = new Video(myVid.width,myVid.height);
video.attachNetStream(ns);
video.smoothing=true;
myVid.addChild(video);
ns.play("http://localhost:5080/oflaDemo/recordings/file1.flv");`
Заранее спасибо!