             return; // throw exception?
         }
 
-        _bitmap.bitmapData.draw(_video);
+        // for some reason the video seems to always be locked at 160x120 when we try to
+        // draw it, so we do some scaling...
+        var matrix :Matrix = new Matrix(_camera.width / 160, 0, 0, _camera.height / 120);
+        _bitmap.bitmapData.draw(_video, matrix);
+
         if (_video.parent != null) {
             removeChild(_video);
             addChild(_bitmap);

import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.display.Sprite;

import flash.media.Camera;
import flash.media.Video;

            return;
        }

        attachVideo();
    }

    public function getCameraName () :String
