5
我目前工作的智慧AS3
和Flex 4.6
創建一個android應用程序。 我使用前置攝像頭並將其附加到本地Video
對象,我將其作爲子對象添加到VideoDisplay
對象。Adobe AIR(Flex 4.6.0)中的前置攝像頭,視頻和視頻顯示器的顯示錯誤
當我在我的電腦上進行調試時,一切正常,但是當我構建項目並在Android設備上運行它時,我的本地視頻顯示變爲灰色網格。 例如我拍了一張設備的照片。
我在這裏寫了一個基於Stackoverflow的帖子來初始化正面和背面相機的方法。
private function InitCamera():void {
var CamCount:int = (Camera.isSupported) ? Camera.names.length : 0;
for(var i:int = 0; i < CamCount; i++) {
var cam:Camera = Camera.getCamera(String(i));
if(cam) {
if(cam.position == CameraPosition.FRONT) {
CamFront = cam;
continue;
}
if(cam.position == CameraPosition.BACK) {
CamBack = cam;
continue;
}
if(cam.position == CameraPosition.UNKNOWN) {
CamFront = cam;
continue;
}
}
}
}
我寫此方法來創建一個Video
對象,請將前面Camera
作爲默認的攝像頭,併爲孩子添加Video
到VideoDisplay
:
private function SetUpLocalVideo():void {
Debug("Setting up local video");
LocalVideo = new Video(this.LVideo.width, this.LVideo.height);
LocalVideo.attachCamera(CamFront);
LVideo.addChild(LocalVideo); <--- this is the VideoDisplay
}
我一直在尋找的互聯網的解決方案,但到目前爲止我沒有找到任何。
以前有沒有其他人有過這個問題?你能和我分享你的解決方案嗎? 我很感激幫助。
謝謝。
您是否將完整的相機權限添加到您的應用程序描述符中? – user1875642
在主應用程序中是的XMl取消註釋此行「<使用權限android:name =」android.permission.CAMERA「/>」 –
好吧,我在我的手機上試過了,我可以看到這個錯誤,但隨後它停下來出現。這個網格似乎也是三個同時視頻輸出的結果。當我嘗試使用asm設置所有可能的模式時,我也在舊crt顯示器上看到類似的東西。所以,我猜想可能是由於與其他使用相機的應用程序(如智能旋轉)發生衝突,或者在調試會話中斷期間通過不正確的相機取消初始化或試圖同時接收來自兩個相機的輸入而導致的。你使用設備的真實相機分辨率? – user1875642