2016-04-29 41 views
2

我正在使用WebRtc和JavaScript庫RecordRtc進行視頻錄製。目前,兩者都將在Chrom和Mozilla上運行。使用另一個JavaScript庫adaper.js我可以在Internet Explorer和Safari中使用navigator.getUserMedia()工作。所以下面的代碼是檢測輸入設備,例如:在所有瀏覽器中內置攝像頭。使用RecordRTC的WebRTC視頻錄製在IE和Safari中顯示錯誤

<video id="video" autoplay="" loop="" controls="" muted=""></video> 
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> 
<script type="text/javascript" src="https://www.webrtc-experiment.com/RecordRTC.js"> </script> 
<script type="text/javascript" src="https://cdn.temasys.com.sg/adapterjs/0.13.3/adapter.min.js"></script> 
<script type="text/javascript"> 
    var recorder; 
    var video = document.getElementById('video'); 
    AdapterJS.webRTCReady(function(isUsingPlugin) { 
     navigator.getUserMedia = navigator.getUserMedia || 
      navigator.webkitGetUserMedia || 
      navigator.mozGetUserMedia || 
      navigator.msGetUserMedia; 

    navigator.getUserMedia({ audio: true, video: true }, function(stream) { 
     //console.log("hai"); 
     video.src = URL.createObjectURL(stream); 

     video.width = 320; 
     video.height = 240; 

     var options = { 
      type: 'video', 
      video: { 
       width: 320, 
       height: 240 
      }, 
      canvas: { 
       width: 320, 
       height: 240 
      } 
     }; 

     recorder = window.RecordRTC(stream, options); 
     //console.log(recorder); 
     recorder.startRecording(); 
    }}); 
    }); 
</script> 

這在Chrome和Mozilla中運行良好,並且能夠獲得記錄的blob。但在IE和Safari它示出一個誤差檢測相機如下

在行之後

video.src = URL.createObjectURL(stream); 

它顯示

"No such interface supported" 

任一項能否提供任何解決方案或替代方案,一個幫助將高度讚賞,因爲基本上我卡住了。

+0

[RecordRTC僅支持MS-Edge](https://github.com/muaz-khan/RecordRTC#browsers-support)。 **沒有Safari/IE支持。**計劃實施WebRTC的蘋果公司(據傳言),讓我們等待! IE是(可能/似乎)已停止使用MSEdge。 –

回答

1

這是因爲IE和Safari在他們最新的穩定公開版本中沒有實現WebRTC。

檢查WebRTC browser support頁面的詳細信息。

+0

儘管這個鏈接可能回答這個問題,但最好在這裏包含答案的重要部分,並提供供參考的鏈接。如果鏈接頁面更改,則僅鏈接答案可能會失效。 - [來自評論](/ review/low-quality-posts/16727029) –

+0

好吧,但這個具體的問題將與時間完全無關:) – Istvan

1

您可以使用Temasys WebRTC插件和Adapter.js來支持所有四種主流瀏覽器。我們也對ORTC和Edge進行了修改,儘管此時Edge並不支持WebRTC視頻流。

Skylink.io,Temasys的PaaS還可以在私人測試版和應要求下提供錄製和存檔功能。 GA版本將在2016年第二季度晚些時候發佈。

披露:我是Temasys的首席運營官兼首席營銷官。