2015-03-25 49 views
8

我正試圖建立一個系統,能夠將局域網上的其他幾臺PC的屏幕捕獲信息廣播出去。如何實時在局域網上廣播視頻流?

到目前爲止,我設法使用rtmp模塊在樹莓派上安裝nginx,並且我可以通過OBS將樹莓作爲RTMP服務器進行流式處理。我使用VLC觀看流。

這是問題所在。進行廣播的主要計算機將顯示一個計時器,該計時器可以倒計時並可能攝像頭饋送,因此將廣播延遲保持在最小值(實時?)是理想的。我目前在屏幕和流之間發生了4-6秒的延遲,並且正在尋找進一步減少它的方法。

  • 有沒有一種方法可以確定延遲時間有多少是由於編碼造成的,以及有多少是由於傳輸造成的?
  • 我目前正在捕獲1080p30並嘗試諸如降尺度和儘量減少網絡影響等選項無濟於事。
  • 我在這個論壇上閱讀了有關局域網廣播的其他話題,有人提到RTMP不是一個好方法......如果是這樣,那麼更好的方法是什麼?
  • 任何建議,歡迎和讚賞。我最感興趣的是免費解決方案,因爲我沒有預算,並且爲其他人免費做這些。
  • 我也看過VLC流媒體,但我不想顯示電腦的整個屏幕,因爲會有觀衆不必看的控制。 VLC唯一能做的就是指定屏幕的哪一部分進行廣播,這似乎不是一個很好的解決方案。我選擇了OBS,因爲它是唯一可以根據我的知識播放特定窗口的免費廣播軟件。

感謝提前:)

+0

很難說沒有看到你的編碼參數。如果你不介意cli [FFmpeg](https://www.ffmpeg.org/)是最好的開源工具之一。 – aergistal 2015-03-25 10:40:06

回答

8

首先,我認爲你是正確使用OBS,這是一項偉大的工程,讓您捕捉到了很多東西。

如果要優化視頻的速度有很多方法可以嘗試:

  • 第一種是使用其他的RTMP客戶端,VLC是好的,但它使用了太多的緩存,嘗試this one例如(只需設置合適的RTMP網址,清除netgroup輸入並連接),
  • 然後你可以嘗試其他的服務器,我寫了一篇關於How to set up your own RTMFP server using MonaServer下面的教程,
  • 最後,你可以修改你的OBS參數(我用的是「 Twitch「參數,這些參數爲實時優化)。

對於OBS + MonaServer +我的VideoPlayer我有2秒的延遲,這不是實時的,但已經更好了。

最後一件事,OBS衆所周知的RTMP會話增加延遲,我知道這是可能通過修改OBS的源代碼,以提高它在這裏,但它是一個有點棘手...

我希望它會幫助你!如果您需要更多信息,請與我聯繫。