我在使Flash AS3相機正常工作時遇到一些問題。如果你能幫助,非常感謝。我看着ol詳細信息:Flash AS3和網絡攝像頭:AIR的問題
我可以,當發佈到SWF,使網絡攝像頭啓動並運行,並且一切正常,彈出'我可以訪問您的攝像頭對話框',它將返回靜音或不靜音。
•第一個問題:有沒有什麼辦法讓它這樣我就可以繞過用戶的許可後,總是授予它?我們正在運行自助服務終端應用。以下方法適用於AIR應用程序嗎? https://stackoverflow.com/questions/3266939/flash-grant-access-to-webcam-programmatically-behind-the-scenes
•第二個問題:正如我所說的,當在IDE中和瀏覽器中發佈SWF文件時,我可以使攝像頭/ Camera連接正常工作。但是,如果我將項目切換爲針對AIR進行發佈並運行無線應用程序,或者在IDE中進行測試,我根本沒有得到安全權限對話框。沒有。也許安全盒在屏幕外?有某種方法可以控制展示位置嗎?從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);
}
感謝。以下是我正在使用的代碼 - 在原始帖子末尾 – Cerulean
中,您是否收到任何錯誤跟蹤或代碼報告中的一切正常? – 2013-04-01 20:24:35
在IDE中運行AIR應用程序時,不會出現任何錯誤,但不會從camStatusHandler獲取任何類型的報告。 - 它似乎沒有被調用。我得到相機找到的痕跡語句。 - 客戶端在YCD kiosk播放器中運行它,並且希望我將它作爲AIR進行開發,但我不確定如何正常處理文件的寫入/讀取 - 它不會連接到互聯網,建立一個本地服務器連接,以保持在道路上似乎iffy。 – Cerulean