我有一个简单的 AS3 swf,它可以捕获用户的网络摄像头并显示它。我正在尝试将视频设置为 16:9 宽高比。根据 Adobe 的说法,如果我在 Camera 对象上使用 setMode(),我可以将其设置为任何纵横比,如果相机无法处理它,Flash 将裁剪视频以适合该区域。这在 Windows 上效果很好。我尝试了六种不同的网络摄像头,并且都正确裁剪。但是,在我的 Mac (OSX 10.8.3) 和同事的 Mac 上,图像不会被裁剪,而是在浏览器中显示 swf 时被拉伸以适应(尝试使用 chrome、Firefox 和 safari)。但是,如果我在 Flash IDE (CS 5.5) 中发布 swf,它看起来是正确的。在追踪 cam.width 和 cam.height 时,我注意到 cam.height 在 IDE 中是 90,但在浏览器中是 120。这让我想到' 是 Mac 上 Flash Player 的问题,但我似乎在论坛中找不到任何提及此问题的内容。任何人都有任何解决方法,或者关于这是否是一个已知的错误的消息?
var cam:Camera = Camera.getCamera();
var video:Video = new Video(320,180);
cam.setMode(320, 180, 15, true);
video.attachCamera(cam);
video.x = 100;
video.y = 20;
addChild(video);