Я пытаюсь использовать функцию WebRTC getUserMedia для создания снимков в потоковом видео с камеры пользователя. Проблема в том, что я хочу использовать разрешение 640 X 480, работая в версиях Firefox 19.02, Opera 12.14 и Chrome 25.0.1364.172 соответственно, но я не могу использовать это разрешение в Firefox и Opera. Когда я пытаюсь это сделать, изображение выглядит обрезанным снизу с разрешением 640 X 360. В любом случае, если я попытаюсь изменить разрешение в Chrome, оно не будет работать ни с разрешением выше, чем 640 X 480. Есть ли у кого-нибудь такая же проблема? Я хочу знать, ошибка это или что-то в этом роде, но я не видел никакой информации об этом. Это мой код, я много раз доказал такие ограничения с минимальной шириной и высотой, но он не работает:
сценарий:
navigator.getUserMedia = navigator.getUserMedia || navigator.mozGetUserMedia || navigator.webkitGetUserMedia || navigator.msGetUserMedia;
if(navigator.getUserMedia){
navigator.getUserMedia({
video: true
}, onSuccess, onError);
}
else{
alert('An error has occurred starting the webcam stream, please revise the instructions to fix the problem');
}
function onSuccess(stream) {
var video = document.getElementById('webcam');
if(navigator.webkitGetUserMedia || navigator.mozGetUserMedia){
video.src = window.URL.createObjectURL(stream);
}
else if(navigator.msGetUserMedia){
//future implementation over internet explorer
}
else{
video.src = stream;
}
video.play();
}
function onError() {
alert('There has been a problem retrieving the streams - did you allow access?');
}
CSS (это только для доказательства, он не помещает все в правильные места):
body {
margin: 0px 0px;
padding: 0px 0px;
}
#videoFrame {
margin: 0px auto;
width: 640px;
height: 480px;
border: 10px #333 solid;
}
#webcam {
videoWidth: 640px;
videoHeight: 480px;
}
#captureFrame {
margin: 0px auto;
width: 640px;
height: 480px;
}
#webcamContent {
width: 1280px;
height: 480px;
}
и файл jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>Testing WebRTC</title>`
<link href="css/styles.css" rel="stylesheet" type="text/css" />`
</head>
<body>
<div id="webcamContent">
<div id="videoFrame">
<video id="webcam"></video>
</div>
<div id="captureFrame">
<canvas id="bioCapture"></canvas>
</div>
</div>
<script src="js/webRTC.js"></script>
</body>
</html>
Заранее спасибо!