2017-02-02 49 views
0

我有這樣一段代碼這需要輸入的相機和網頁瀏覽器窗口內顯示它(不直接通過打開一個文件僅當從網絡服務器提供服務,作品):如何從HTML和JavaScript發佈實時視頻流?

<html> 
<body> 

<video id="video" width="640" height="480" autoplay="true"></video> 

<script> 
    var video = document.getElementById('video'); 
    if (navigator.mediaDevices && navigator.mediaDevices.getUserMedia) { 
     navigator.mediaDevices.getUserMedia({video: true}).then(function (stream) { 
      video.src = window.URL.createObjectURL(stream); 
      video.play(); 
     }); 
    } 
</script> 

</body> 
</html> 

I」 d喜歡直播視頻到一個URL(例如:到「/ publish /?password =」如https://github.com/vbence/stream-m

我該如何編碼?

謝謝!

回答

1

最佳實踐方法,特別是如果您希望有多個客戶端查看視頻,則需要將流式傳輸到視頻流式服務器,然後讓視頻流式服務器將其流式傳輸到各個客戶端。

視頻流媒體服務器可用於開源或商業,並且安靜專用機制以最大化設備覆蓋範圍並處理不同的網絡條件和設備屏幕大小/分辨率。重建這種類型的功能本身並不是微不足道的。

下面是該方法的使用Wowza商業流媒體服務器(我有沒有隸屬關係到他們)一個例子:

enter image description here

更多的信息在這裏(從上面的圖片拍攝地點):https://www.wowza.com/products/capabilities/webrtc-streaming-software

這將支持類似的方法的流媒體服務器的一個源的例子是GStreamer的:

更新

與使用劍鋒服務器信息的鏈接。這支持從WebRTC客戶端連接,包括流插件:

+0

那麼,如何寫JavaScript來流的視頻輸出(從客戶端瀏覽器向服務器)? – ikevin8me

+0

嗯,在wowza頁面上有一個鏈接,可以讓你註冊獲取他們的API。如果您更喜歡開源解決方案,那麼您可以將WebRTC連接到Janus WebRTX服務器並使用其流式插件(請注意,我個人沒有這樣做,但它似乎很好的支持)。我會在上面的答案中添加鏈接。 – Mick