0
Я использую условие ниже, чтобы инициализировать камеру на Safari, но она не работает. Я заметил, что объект штурман в сафари не имеют свойства mediaDevices
или getUserMedia
Инициализация веб-камеры не работает в Safari
if(navigator.mediaDevices && navigator.mediaDevices.getUserMedia) {
// Not adding `{ audio: true }` since we only want video now
console.log("mediaDevices");
navigator.mediaDevices.getUserMedia({ video: true }).then(function(stream) {
cam = stream.getTracks()[0];
video.src = window.URL.createObjectURL(stream);
video.play();
});
}
else if(navigator.getUserMedia) { // Standard
console.log("2");
navigator.getUserMedia({ video: true }, function(stream) {
video.src = stream;
video.play();
}, errBack);
} else if(navigator.webkitGetUserMedia) { // WebKit-prefixed
console.log("3");
navigator.webkitGetUserMedia({ video: true }, function(stream){
video.src = window.webkitURL.createObjectURL(stream);
video.play();
}, errBack);
} else if(navigator.mozGetUserMedia) { // Mozilla-prefixed
console.log("4");
navigator.mozGetUserMedia({ video: true }, function(stream){
video.src = window.URL.createObjectURL(stream);
video.play();
}, errBack);
}
Кто знает, как заставить его работать?
Мой HTML выглядит следующим образом:
<video id="video" width="640" height="480" autoplay></video>
<canvas id="canvas" width="640" height="480"></canvas>
вы можете попробовать [webcamjs] (https://github.com/jhuckaby/webcamjs), потому что сафари еще не поддерживает 'getUserMedia' – pfg