使用getUserMedia API访问桌面摄像头时,它会打开网络摄像头.当然它有助于视频通信.但是当它在移动设备中使用时调用哪个摄像头.前凸轮或后凸轮?.是否需要选择代码相机?
如何在webapp中选择前后摄像头?
也适用于:如何在多个麦克风之间进行选择?
伙计们,我有两个摄像头
——网络摄像头
——笔记本电脑摄像头
我想流中的网站的相机
,我已经有一定的参考
这里是一些代码,正在研究的jsfiddle
这里
<video id="video" width="640" height="480" autoplay></video>
<button id="snap" class="sexyButton">Snap Photo</button>
<canvas id="canvas" width="640" height="480"></canvas>
<script>
// Put event listeners into place
window.addEventListener("DOMContentLoaded", function() {
// Grab elements, create settings, etc.
var canvas = document.getElementById("canvas"),
context = canvas.getContext("2d"),
video = document.getElementById("video"),
videoObj = { "video": true },
errBack = function(error) {
console.log("Video capture error: ", error.code);
};
// Put video listeners into place
if(navigator.getUserMedia) { // Standard
navigator.getUserMedia(videoObj, function(stream) {
video.src = stream;
video.play();
}, …Run Code Online (Sandbox Code Playgroud) 我正在尝试navigator.MediaDevices.getUserMedia()webrtc在通话期间切换设备摄像头.这个功能在桌面浏览器上工作正常,但在mozilla android上它无法正常工作.这是我正在使用的代码.
var front=false;
var myConstraints = { video: { facingMode: (front? "user" : "environment")} };
navigator.mediaDevices.getUserMedia(myConstraints).then(function(stream) {
}
Run Code Online (Sandbox Code Playgroud)
对此有何看法?
我写了一些HTML5和JS代码,用于在画布上从网络摄像头渲染视频流,但我不知道指定打开哪个摄像头设备的方法.
事实上,如果我访问我的代码与我的Android运行的网页,它只显示"自拍 - 凸轮".如何指定使用手机的主摄像头?有办法吗?
如果我从笔记本电脑访问该网页,则会打开内置网络摄像头.但是如何连接(辅助)USB摄像头?
这是我的脚本的"主要":
var video, canvas, context;
window.onload = Initialize;
Run Code Online (Sandbox Code Playgroud)
初始化功能:
function Initialize()
{
video = document.getElementById("videoElement");
canvas = document.getElementById("canvasElement");
canvas.width = parseInt(canvas.style.width);
canvas.height = parseInt(canvas.style.height);
context = document.getCSSCanvasContext("2d", "mask", 640, 480);
navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia;// || navigator.msGetUserMedia || navigator.oGetUserMedia;
if(navigator.getUserMedia)
{
navigator.getUserMedia({video: true}, VideoCapture, Error);
requestAnimationFrame(IdleFunc);
}
else
{
alert("Error: your browser is not supported.");
}
}
Run Code Online (Sandbox Code Playgroud)
成功回调:
function VideoCapture(stream)
{
video.src = window.URL.createObjectURL(stream);
}
Run Code Online (Sandbox Code Playgroud)
失败回调:
function Error(e)
{
alert("Error: " + e); …Run Code Online (Sandbox Code Playgroud) 我有一个二维码扫描摄像头,但是当我用手机打开我的网站时,我的网站上的面部摄像头会打开。我想使用后置摄像头。
function setwebcam()
{
var constraints = { audio: true, video: true };
document.getElementById("result").innerHTML="- scanning -";
if(stype==1)
{
setTimeout(captureToCanvas, 500);
return;
}
var n=navigator;
document.getElementById("outdiv").innerHTML = vidhtml;
v=document.getElementById("v");
if(n.getUserMedia)
n.getUserMedia(constraints, success, error);
else
if(n.webkitGetUserMedia)
{
webkit=true;
n.webkitGetUserMedia(constraints, success, error);
}
else
if(n.mozGetUserMedia)
{
moz=true;
n.mozGetUserMedia(constraints, success, error);
}
Run Code Online (Sandbox Code Playgroud) camera ×4
javascript ×4
getusermedia ×3
html5 ×3
android ×2
html5-video ×1
ios ×1
mozilla ×1
webcam ×1
webrtc ×1