2016-08-16 3 views
4

現在、javascriptでwebcamにアクセスしていて、getUserMediaを使用してブラウザにストリームします。​​は、SafariとInternet Explorer 11以上でgetUserMediaにアクセスできないことを示しています。私はウェブカメラがあるかどうかを確認するために、この使用SafariとIEでwebcamにアクセスするには? getUserMediaに代わるものはありますか?

navigator.getUserMedia = navigator.getUserMedia || 
          navigator.webkitGetUserMedia || 
          navigator.mozGetUserMedia || 
          navigator.msGetUserMedia; 

は、その後、私はこの

if (navigator.getUserMedia){ 
    //document.getElementById("webcam").style.display = "block"; 

    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(); 
      }, errBack); 
     } 
     else if(navigator.webkitGetUserMedia) { // WebKit-prefixed 
      navigator.webkitGetUserMedia(videoObj, function(stream){ 
       video.src = window.webkitURL.createObjectURL(stream); 
       video.play(); 
      }, errBack); 
     } 
     else if(navigator.mozGetUserMedia) { // Firefox-prefixed 
      navigator.mozGetUserMedia(videoObj, function(stream){ 
       video.src = window.URL.createObjectURL(stream); 
       video.play(); 
      }, errBack); 
     } 
     // Trigger photo take 
     document.getElementById("snap").addEventListener("click", function() { 
      context.drawImage(video, 0, 0, 640, 480); 
      canvasToDataURLString = canvas.toDataURL(); 
      var blob = dataURItoBlob(canvasToDataURLString); 
      base64result = canvasToDataURLString.split(',')[1]; 
      //console.debug(base64result); 
      document.getElementById("base64result").innerHTML = base64result; 

     }); 
    }, false); 
} 

を使用して表示したり、単にIEとSafariを使ってウェブカメラにアクセスする方法はありませんか? ウェブページには安全な場所からアクセスする必要があるため、Chromeには制限があることを理解しています。

  1. 私が間違ってそれをやっている場合、私は、私はgetUserMediaに他の選択肢があるかどうかを知りたい
  2. ...不思議!

ありがとうございました、私はすでにグーグルで試してみましたが、たくさん出てきました。本当に不可能な場合は代替候補を探しています。

+0

解決策はまだありますか?私も同じ問題に悩まされているSafariとIEのための解決策を見つけたら教えてください –

+0

@MohdSadiqいいえ私は提案された解決策を試したこともありません –

答えて

0

SafariおよびIE用のTemasys WebRTCプラグインを使用して、各ブラウザでWebRTCを有効にする必要がありますhttps://skylink.io/plugin/

+1

したがって、エンドユーザのプラグインを使用せずにWebRTCにアクセスする方法はありません。ユーザー側? –

関連する問題