我在我的flex应用中有一个视频显示。附在相机上。相机分辨率可能会根据用户的选择而有所不同,而视频显示(预览)尺寸则是固定的。我正在这样做:
bmd.draw(vidDisplay);
其中bmd是位图..问题是生成的位图具有正确的相机设置大小(已设置),但视频中的捕获始终是位图内视频显示的大小。我希望我有意义..结果看起来像一个小图片在一个更大的图像左上方合理..
我想要一个固定高度的视频显示预览,但能够以不同的分辨率拍摄快照..感谢任何帮助!
答案 0 :(得分:0)
您可以在创建时设置位图的大小:
var bmd: BitmapData = new BitmapData(video.width, video.height);
然后将videoDisplay(视频自身,而不是预览窗口)绘制到其中:
bmd.draw(vidDisplay);
答案 1 :(得分:0)
最简单的方法是在拍摄快照之前简单地调整VideoDisplay
的大小。
videoDisplay.width = desiredWidth;
videoDisplay.height = desiredHeight;
// validate immediately to see new size
videoDisplay.validateNow();
bitmapData.draw(videoDisplay);
// now restore to original size
videoDisplay.width = originalWidth;
videoDisplay.height = originalHeight;
videoDisplay.validateNow();
如果您只是为了拍摄快照而使用单独的flash.media.Video
对象,那就更好了。