2017-06-02 160 views
0

如何配置WebRTC以實現最低的流媒體直播視頻延遲只有Android手機攝像頭通過WebRTC應用程序在Android到Firefox PC上的一側? 質量可能15-24幀,也許640×480?Config WebRTC android爲最低延遲

我的應用程序需要在android手機中直播視頻,並儘可能實時地將其傳輸到電腦,以便在Firefox PC(使用P2P協議)中查看。該應用程序看起來像控制一些機器人,玩直播視頻遊戲。

我該如何做到最好的預期? 3G/4G網絡可能會延遲50毫秒嗎? 謝謝。

回答

1

也許它可以做與3G/4G網絡50毫秒延遲?謝謝。

不可能。您無法通過移動網絡以少量延遲發送單個數據包,更不用說捕獲視頻,編碼視頻,使用音頻編碼視頻,多路複用視頻,發送,接收,緩衝,解複用,解碼,顯示。每幀50ms的延遲並不比模擬傳輸高得多!

你會發現,即使手機上的很多攝像頭在系統獲得數據以便使用它時都會有很大的滯後。

你意識到它可能需要200毫秒的時間才能對視覺刺激產生反應?我的電視至少需要150ms才能顯示來自無損HDMI輸入的畫面。

您的項目需求與現實完全脫節。您還應該花時間瞭解將數字視頻向下推入低延遲極端時所發生的折衷。你即將做出一些真正的犧牲,通過不到1秒或500毫秒左右。考慮閱讀我的帖子:https://stackoverflow.com/a/37475943/362536特別是「爲什麼不[這裏有魔術技術]」部分。

+0

謝謝你回答我。 所以,如何配置爲640 x 480分辨率的最低延遲?,我googling,但不是關於它的事情(例如:配置編解碼器h264或VP8,禁用語音,緩衝區大小,webrtc配置,fps配置,而不是縮放。 ..etc) –

+0

@ user198829視頻來自哪裏?如果它來自使用getUserMedia的相機,那麼您可以在getUserMedia約束中指定640x480。除此之外,WebRTC已經針對最低的合理延遲進行了優化。它會自動協商與對方使用哪個編解碼器,選擇低延遲的編解碼參數等。它還會自動縮放帶寬變化的視頻質量......但如果您的源是640x480,我希望它會留在這。 – Brad

+0

哦,如果webrtc自動執行最低延遲,我不需要關心它,它是如此之好:D –