В AWS Device Farm, если камера становится черной, что это значит? - PullRequest
0 голосов
/ 20 февраля 2019

Я сделал приложение, используя cordova и плагин cordova-plugin-camera-preview.Я пытался протестировать его на AWS Device Farm, но на скриншотах, где плагин должен показывать видеозахват, черный цвет, а когда тесты заканчиваются, он не показывает ошибок.

Что это значит?

Это две функции, которые я использую для захвата видео (это работает на моем телефоне):

function captura_video() {
            try{     

                window.canvas_video_temp = document.createElement("canvas");
                window.contexto_video_temp = canvas_video_temp.getContext("2d");

                var promisifiedOldGUM = function(constraints) {
                    var getUserMedia = (navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia);

                    if(!getUserMedia) {
                        return Promise.reject(new Error('Este dispositivo no esta preparado para el manejo de camara'));
                    }

                    return new Promise(function(resolve, reject) {
                        getUserMedia.call(navigator, constraints, resolve, reject);
                    });
                }

                if(navigator.mediaDevices === undefined) {
                    navigator.mediaDevices = {};
                }

                if(navigator.mediaDevices.getUserMedia === undefined) {
                    navigator.mediaDevices.getUserMedia = promisifiedOldGUM;
                }

                window.videoElement = document.getElementById("pantalla_video");

                navigator.mediaDevices
                .getUserMedia(window.constraints)
                .then(
                    stream => {
                        window.videoElement.srcObject=stream;
                        window.videoElement.onloadedmetadata = () => {
                            if(window.interruptor_buscador == true){
                                auxiliar_1();
                            }else if(window.interruptor_enlace == true){
                                auxiliar_2();
                            }
                            window.videoElement.play();
                            bucle_cuadros();
                        };
                    }
                ).catch(
                    err => {
                        alert("Error mediaDevices: " + err.code);
                    }
                );
            }catch(err2){
                alert("Error de captura de video: " + err2.message);
            }
        }


        function bucle_cuadros(){
            try{
                if (window.videoElement.readyState === window.videoElement.HAVE_ENOUGH_DATA) {
                    //SOME DIRTY THINGS HERE
                }
                requestAnimationFrame(bucle_cuadros);
            }catch(err){
                alert("Error bucle_captura: " + err.message);
            }
        }

И это скриншот, предоставленный AWS Device Farm: enter image description here Спасибо.

1 Ответ

0 голосов
/ 22 февраля 2019

Делаете ли вы снимки экрана или фотографии с камеры?

https://aws.amazon.com/device-farm/faqs/

В: Могу ли я использовать камеру устройства?

Да, вы можете использовать камеры устройства как спереди, так и сзади.Из-за того, как устройства монтируются, изображения и видео могут выглядеть темными и размытыми.

Я думаю, что это изображение можно ожидать в Device Farm прямо сейчас.

HTH

-James

...