2012-03-31 120 views
2

我試圖將一臺筆記本電腦的視頻流發送到另一臺筆記本電腦,並通過服務器進行路由。讓我們稱他們爲筆記本電腦A發送一個視頻流到筆記本電腦B.通過服務器將視頻從一個客戶端流式傳輸到另一個客戶端

在筆記本電腦A,我沒有特別的要求,我如何收集視頻流,但我想有一些類型的NodeJS服務器運行,打開網絡套接字到服務器發回視頻流。

在筆記本電腦B上,我想在html5視頻標籤中將視頻渲染到瀏覽器中。

有沒有人有任何建議如何可以在技術上做到這一點?

我真的不明白的差距: *如何從筆記本電腦一個流發送給服務器(也可以運行的NodeJS) *如何提供可插入視頻的視頻流在筆記本電腦上標記B

謝謝!

+0

WebRTC:https://webrtc.org/ – Brad 2016-06-18 23:14:25

回答

0

試圖用javscript/html5來做到這一點真的是選擇錯誤的技術。您應該在客戶端查看Flash(和RTMP),並使用任何免費(開源)Flash Media Server替代方法。 (您必須擁有Flash或Silverlight等插件才能訪問攝像頭數據 - 您的Web瀏覽器/ javascript無法訪問網絡攝像頭。)

node-rtmp是一種用Node.JS編寫的RTMP協議服務器,可能會對你感興趣。我自己沒有測試過node-rtmp,但它可以成爲你的起點。如果它不適合你,那裏還有其他多個RTMP服務器項目。 (我已經使用了很多Red5,這是用java編寫的)。

在計算機A上,您需要一個Flash應用程序,將您的攝像頭數據發送到RTMP服務器。有一些開源項目已經這樣做了,例如: https://github.com/AF83/webcam-streaming Red5中也包含此類Flash應用程序的示例代碼,也可能包含在其他RTMP服務器項目中。

您無法使用HTML視頻標籤在計算機B上顯示RTMP流。如果它是RTMP,則必須使用Flash播放器。可以將RTMP數據轉換爲其他內容,以便使用HTML視頻標籤進行顯示。它可能(可能)可能與Red5,rtmpdump,ffmpeg等開放源代碼軟件以及一些http黑客入侵以使其通過http相結合。然而,我真的會考慮是否值得工作和麻煩,這樣做只是爲了不運行Flash應用程序...

在計算機B上,我會使用jwplayer(或任何jwplayer克隆)來播放RTMP流。

+0

我對想法非常開放,我只想將筆記本電腦B渲染爲視頻標籤。這聽起來像你建議在服務器端建立一個RTMP服務器......但我不知道其餘的應該如何工作。你能澄清一下嗎?謝謝! – Steve 2012-03-31 22:14:32

+0

在此添加了更多信息。 – 2012-03-31 22:33:03

相關問題