Flash AS3 カメラを正しく動作させるのに問題があります。お役に立てれば幸いです。私はolThe詳細を見ました:
SWF にパブリッシュすると、ウェブカメラを起動して実行することができ、すべて正常に動作し、「カメラにアクセスできますか」というダイアログが表示され、ミュートされているかどうかが返されます。
• 最初の質問: ユーザー許可をバイパスできるようにする方法はありますか? キオスクアプリを実行しています。次の方法は AIR アプリで機能しますか? https://stackoverflow.com/questions/3266939/flash-grant-access-to-webcam-programmatically-behind-the-scenes
• 2 番目の質問: 前述のとおり、IDE およびブラウザーで SWF をパブリッシュする場合、Web カメラ/カメラ フックアップを正常に動作させることができます。しかし、プロジェクトを AIR 用に公開するように切り替えて、air アプリを実行するか、IDE でテストすると、セキュリティ許可ダイアログがまったく表示されません。何もない。セキュリティボックスが画面外にあるのでは?配置を制御する方法はありますか?AIR 内から Web カメラを使用する場合、何か違いはありますか?
私は AIR にパブリッシュするのではなく、SWF を使用することに満足しています — 単純に、ローカル ディスク上の XML ファイルを読み書きできる必要があり、それを行う唯一の方法は AIR だと思いますか?
助けてくれてありがとう!
コード:
private function initTracking() : void
{
var camW : int = 840;
var camH : int = 640;
// Create the camera
_cam = Camera.getCamera();
if (_cam == null)
{
trace("Unable to locate available cameras.");
return;
}
else
{
trace("Found camera: " + _cam.name);
_cam.addEventListener(StatusEvent.STATUS, camStatusHandler);
_cam.setMode(camW, camH, stage.frameRate);
// Create a video
_vid = new Video(camW, camH);
_vid.attachCamera(_cam);
trace("camera ", _cam, " attached to video ", _vid);
// Create the Motion Tracker
_motionTracker = new MotionTracker(_vid);
// We flip the input as we want a mirror image
_motionTracker.flipInput = true;
}
}
private function camStatusHandler(event:StatusEvent):void
{
trace("camStatusHandler::");
if (_cam.muted)
{
trace("Unable to connect to active camera.");
}
else
{
trace("able to connect to active camera.");
addEventListener(Event.ENTER_FRAME, onEnterFrameHandler, false,0,true);
}
// Remove the status event listener.
_cam.removeEventListener(StatusEvent.STATUS, camStatusHandler);
}