Actionscript 3 来自网络摄像头白色边框的快照
使用Flash,我从用户的网络摄像头中获取一张图片,并将其保存为图像 但是,图像的右边缘和下边缘都是白色边框 我试着跟随,但这只会使白色边框变小,这更好,但我希望它们消失 下面是绘制白色边框的代码Actionscript 3 来自网络摄像头白色边框的快照,actionscript-3,flash,Actionscript 3,Flash,使用Flash,我从用户的网络摄像头中获取一张图片,并将其保存为图像 但是,图像的右边缘和下边缘都是白色边框 我试着跟随,但这只会使白色边框变小,这更好,但我希望它们消失 下面是绘制白色边框的代码 VD1 = new Video(); VD1.width = 400; VD1.height = 300; myCam = Camera.getCamera(); myCam.setMode(400,300,15); VD1.attachCamera(myCam); var screensho
VD1 = new Video();
VD1.width = 400;
VD1.height = 300;
myCam = Camera.getCamera();
myCam.setMode(400,300,15);
VD1.attachCamera(myCam);
var screenshot:BitmapData = new BitmapData(400,300,false);
var m:Matrix = new Matrix();
m.scale(400/(myCam.width),300/(myCam.height));
screenshot.draw(VD1,m);
我可以这样做:
m.scale(400/(myCam.width-40),300/(myCam.height-25));
暂时删除白色边框,但对于某些网络摄像头,如macbook上的摄像头,它不起作用。如何去除这些白色边框?尝试以其他分辨率拍摄视频:
myCam.setMode(320,240,15);
我认为你想找到一个“最佳点”,它可以很好地与大多数网络摄像机配合使用。默认捕获分辨率为160x120。尝试使用此分辨率的倍数:640x480、480x360等
如果您认为网络摄像头不支持(比如400x300),Flash player将找到摄像头支持的最接近的分辨率。。。我猜这就是造成白边的原因 Macbook Pro网络摄像头应该有620x480个摄像头,对吗?当我追踪
myCam.width
和height
时,我得到了160x120。网络摄像头支持一系列分辨率,因此MacBook中的摄像头支持高达640x480的分辨率和低于该分辨率的各种尺寸。Flash相机类的默认捕获分辨率为160x120,这可能是跟踪宽度/高度时获得这些值的原因。不要依赖凸轮的宽度/高度。使用setMode()设置捕获分辨率,然后将其与任意大小的视频对象一起显示(它会自动缩放视频,并且您不需要cam.width或cam.height)。