2016-12-13 14 views
0

私はWebRTCを勉強することに決めましたが、ビデオは見せませんでした。助けてください。 私は何が間違っていますか?使用クローム マイコード:WebRTC。ビデオを表示していません

<html> 

<head> 
    <meta charset="UTF-8"> 
</head> 

<body> 
    <script> 
     window.onload = function() { 
      navigator.webkitGetUserMedia({ video: true }, getStream, noStream); 
     }; 

     function getStream(stream) { 
      var url = window.webkitURL.createObjectURL(stream);    
      var video = document.getElementById('video'); 
      video.src = url; 
     } 

     function noStream(faild) { 

     } 
    </script> 
    <video id="video" autoplay="autoplay" width="400"></video> 
</body> 

</html> 
+2

これは本当にのWebRTCとは何の関係もありません。いずれにせよ、私はこれがあなたの問題であるかどうかはわかりませんが、あなたのコードは日付です。古いブラウザをシムにするために、MediaDevices APIとadapter.jsの使用を検討してください。 https://github.com/webrtc/adapter https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getUserMedia – Brad

+0

https://webrtc.github.io/samples/src/ content/getusermedia/gum /は、getUserMediaを使用した最新の例を示しています。 「noStream」と呼ばれるエラーコールバックにログを追加することを検討することもできます。あなたが "失敗"と呼ぶ議論がそこにある理由は、何が間違っていたかを理解するのに役立ちます。 –

+0

@ブラッドありがとう、それは働いています –

答えて

1

作業するコードは:

<head> 
    <meta charset="UTF-8"></script> 
</head> 

<body> 
    <script> 
     window.onload = function() { 
      var constraints = { audio: true, video: { width: 1280, height: 720 } }; 

navigator.mediaDevices.getUserMedia(constraints) 
.then(function(mediaStream) { 
    var video = document.querySelector('video'); 
    video.srcObject = mediaStream; 
    video.onloadedmetadata = function(e) { 
    video.play(); 
    }; 
}) 
.catch(function(err) { console.log(err.name + ": " + err.message); }); 
     }; 
    </script> 
    <video id="video" autoplay="autoplay" width="400"></video> 
</body> 

</html> 
関連する問題