如何在Windows Server中的Chrome Web浏览器上访问网络摄像头

时间:2019-07-10 08:16:30

标签: javascript camera webcam

我想在网络应用上获取网络摄像头流。我正在用JavaScript编写代码。我编写的代码在linux服务器上没有给出错误,但在Windows服务器上却给出了错误

在linux服务器上,我可以使用chrome和firefox获得视频流。这里这个链接 http://kodaktuel.com/kamera

但是我无法在带有chrome服务器的Windows服务器上获得流。虽然,我可以在此服务器上使用Firefox进行流传输 http://aicuzem.agri.edu.tr/denemeYusuf/

这是我的密码。

<video id="video" width="640" height="480" autoplay></video>
<button id="cek">Snap Photo</button>
<canvas id="canvas" width="640" height="480"></canvas>

<script type="text/javascript">

    var video = document.getElementById('video');

    if(navigator.mediaDevices && navigator.mediaDevices.getUserMedia) {
      navigator.mediaDevices.getUserMedia({ video: true }).then(function(stream) {
          video.srcObject = stream;
          video.play();
      });
    } else if(navigator.getUserMedia) { // Standard
      navigator.getUserMedia({ video: true }, function(stream) {
          video.src = stream;
          video.play();
      }, errBack);
    } else if(navigator.webkitGetUserMedia) { // WebKit-prefixed
      navigator.webkitGetUserMedia({ video: true }, function(stream){
          video.src = window.webkitURL.createObjectURL(stream);
          video.play();
      }, errBack);
    } else if(navigator.mozGetUserMedia) { // Mozilla-prefixed
      navigator.mozGetUserMedia({ video: true }, function(stream){
          video.srcObject = stream;
          video.play();
      }, errBack);
    }

    var canvas = document.getElementById('canvas');
    var context = canvas.getContext('2d');
    var video = document.getElementById('video');

    document.getElementById("cek").addEventListener("click", function() {
        context.drawImage(video, 0, 0, 640, 480);
    });
</script>

尽管我在两个服务器上都编写了相同的代码,但我不明白为什么我无法在Windows服务器上获取流。

0 个答案:

没有答案