Javascript 后摄像头
你好,我正在尝试使用这个演示 但我只得到手机的前置摄像头,它使用此代码启用摄像头Javascript 后摄像头,javascript,android,html,camera,Javascript,Android,Html,Camera,你好,我正在尝试使用这个演示 但我只得到手机的前置摄像头,它使用此代码启用摄像头 function setupVideo(rearCameraId) { var deferred = new $.Deferred(); var getUserMedia = Modernizr.prefixed('getUserMedia', navigator); var videoSettings = { video: {
function setupVideo(rearCameraId) {
var deferred = new $.Deferred();
var getUserMedia = Modernizr.prefixed('getUserMedia', navigator);
var videoSettings = {
video: {
optional: [
{
width: {min: pictureWidth}
},
{
height: {min: pictureHeight}
}
]
}
};
//if rear camera is available - use it
if (rearCameraId) {
videoSettings.video.optional.push({
sourceId: rearCameraId
});
}
getUserMedia(videoSettings, function (stream) {
//Setup the video stream
video.src = window.URL.createObjectURL(stream);
window.stream = stream;
video.addEventListener("loadedmetadata", function (e) {
//get video width and height as it might be different than we requested
pictureWidth = this.videoWidth;
pictureHeight = this.videoHeight;
if (!pictureWidth && !pictureHeight) {
//firefox fails to deliver info about video size on time (issue #926753), we have to wait
var waitingForSize = setInterval(function () {
if (video.videoWidth && video.videoHeight) {
pictureWidth = video.videoWidth;
pictureHeight = video.videoHeight;
clearInterval(waitingForSize);
deferred.resolve();
}
}, 100);
} else {
deferred.resolve();
}
}, false);
}, function () {
deferred.reject('There is no access to your camera, have you denied it?');
});
return deferred.promise();
}
我尝试添加代码来选择相机
但是没有任何成功:(在第一个例子中,我怎样才能不费吹灰之力地使用后置摄像头呢?多亏了这一切,下面在Firefox和Chrome中都实现了这一点
const constraints = {
"video": {
"facingMode":
{ "ideal": "environment" }
}
};
const stream = await navigator.mediaDevices.getUserMedia(constraints);
此处演示:它已经设置为“后部”,带有“环境”设置,我尝试将其设置为“用户”,但仍然使用相同的前置摄像头。出了什么问题?