I recording video to FMS dvr I want to improve quality of video sending to FMS. How could I do this?
-
It would be helpful if you showed the code you are using to capture video. For example, we don't know how/if you are using the Camera.setMode() and Camera.setQuality() methods. Those two and the web cam's supported resolutions are what determine the image quality. – Sunil D. Aug 18 '12 at 07:23
-
public function publishCamera():void{ cam = Camera.getCamera(); mic = Microphone.getMicrophone(); mic.gain = 50; vid = new Video(550, 350); vid.x = 1.5; vid.y = 1; vid.smoothing = true; vid.attachCamera(cam); addChild(vid); recorder.record_btn.addEventListener(MouseEvent.CLICK, handleRecordClicked); } – Rohit Dhore Aug 18 '12 at 09:04
1 Answers
After you get the camera, you can configure it with the and setMode() and setQuality() methods. The documentation for these methods is worth reading.
First, I suggest you play with the setMode()
method. This sets the capture resolution of the camera. The default resolution is 160x120.
For a better quality picture, you want to specify a capture resolution that is the same or similar to the dimensions that you will apply to the Video
object. I would also suggest using values in a 4:3 ratio, like 480x360:
var camera:Camera = Camera.getCamera();
camera.setMode(480,360,24); // 480x360 resolution at 24 fps
var video:Video = new Video(480,360);
video.attachCamera(camera);
Play with the dimensions, but try to keep them in 4:3 ratio for best results. This will be a big improvement, you might even stop here.
Optionally, you can fine tune the streaming experience with the setQuality()
method. This lets you specify a preference for bandwidth use or picture quality. For highest quality you could do:
camera.setQuality(0,100); // please read the docs before doing this :)
Be aware that as you increase the capture resolution and the quality, you also increase the file size/bandwidth of your video. You will find the right balance!

- 17,983
- 6
- 53
- 65