如何從網絡攝像頭捕捉圖像並使其具有特定的尺寸而沒有空白?從網絡攝像頭捕捉特定尺寸的圖像
我指定所需的大小:
var screenshot:BitmapData = new BitmapData(VD1.width,VD1.height,false);
這是400x300的
然後我畫的位圖從我的視頻元素 screenshot.draw(VD1);
我可以做Camera.getCamera.height
和.width
看看我的相機是352x264px
當我查看生成的圖像時,我看到所有邊緣的空白(灰色,所以你可以告訴),像這樣:![1]
如果您測量實際圖像,你會發現它甚至不佔用352x264像素。即使採用這種測量,右邊緣和底邊緣仍然存在空白。
的Camera.setMode
方法upscales捕獲,以適應400x300的,但似乎從它連接到(與VD1.attachCamera(myCam)
輸出不同的結果時,VD1對象被繪製成位圖視頻對象採取直接捕獲。
我想我所有的拍攝的圖像是相同的大小,無論相機的分辨率是有辦法,我能做到這一點
供參考,在這裏是我如何捕獲圖像:?
private function takeScreenShot():void{
var screenshot:BitmapData = new BitmapData(VD1.width,VD1.height,false);
screenshot.draw(VD1);
var encoder:PNGEncoder = new PNGEncoder();
var pngByteArray:ByteArray = encoder.encode(screenshot);
var responder:Responder = new Responder(function(res:Object):void{
trace("createThumbnail success");
},
function(res:Object):void{
trace("createThumbnail call failed");
});
mync.call("saveThumbnail", responder,pngByteArray);
}
下面是我如何設置我的相機
VD1 = new Video();
VD1.width = 400;
VD1.height = 300;
myMic = Microphone.getMicrophone();
myMic.rate = 22;
myMic.setSilenceLevel(0);
myMic.setUseEchoSuppression(true);
myMic.soundTransform = new SoundTransform(0,0);
myCam = Camera.getCamera();
trace(myCam.height+","+ myCam.width);
myCam.setMode(400,300,15);
myCam.setQuality(0,100);
myCam.setLoopback(true);