簡體   English   中英

GetUserMedia-即使使用adapter.js也無法識別FaceingMode

[英]GetUserMedia - facingMode not recognized despite adapter.js

我想在Ionic應用程序中獲取后置攝像頭的視頻流。 為此,我使用了適用於前置攝像頭的getUserMedia。

當我將面對模式更改為“環境”時,出現此錯誤:

Unknown constraint named facingMode rejected ConstraintNotSatisfiedError

在我的Ionic應用程序中,我已經安裝了npm軟件包“ webrtc-adapter”。

這是我從后置攝像頭獲取視頻流的代碼:

this.constraints = { audio: true, video: {mandatory: { facingMode: 'environment'}}};
        cordova.plugins.diagnostic.requestRuntimePermission( (status) => {
            if (cordova.plugins.diagnostic.permissionStatus.GRANTED){

                navigator.getUserMedia(this.constraints, (stream) => {
                    let video = <HTMLVideoElement>document.getElementById('localVideo');
                    video.srcObject =  stream;
                }, function(err){
                    console.log("Error get stream: ", err.name);
                });
            }
        }, (error) => {
            console.error("Error during runtime permission :", error);
        }, cordova.plugins.diagnostic.permission.CAMERA);

我認為這是兼容性問題。 有人可以幫助我嗎?

謝謝。

您使用的是過時的非標准約束語法。 adapter.js會填充規格,因此您必須遵循規格才能受益。 例如:

{audio: true, video: {mandatory: {facingMode: 'environment'}}};

采用

{audio: true, video: {facingMode: {exact: 'environment'}}};

我已經有了一個可行的例子來回答這個問題 它應該可以與Chrome一起使用。 不知道這是否適用於離子。 讓我知道它是否無效。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM