1. 程式人生 > 其它 >智密-騰訊雲直播 MLVB 外掛優化教程:六步提升拉流速度+降低直播延遲

智密-騰訊雲直播 MLVB 外掛優化教程:六步提升拉流速度+降低直播延遲

 前言

很多剛開始使用智密-騰訊雲 MLVB 直播外掛或者單獨騰訊雲直播 SDK的工程師在進行直播效果測試或者實際直播應用中可能會遇到延遲比較大、或者推流、拉流速度較慢的問題。今天智密科技就來分享一下如何在最快時間內分析出高延遲的元凶,並將直播的延遲降低至正常水平。

首先,如何判斷自己搭建的直播屬於高延遲呢?在正常的網路波動範圍和裝置效能的情況下,主播端和客戶端之間的延遲在2-3秒左右。如果高於這個延遲,那就可以參考今天給出的一些排查方法。

1. 檢查播放協議

如果您的播放協議採用的是 HLS(m3u8)協議,並感覺延遲較大,這個是正常的。 HLS 協議是蘋果主推的基於大顆粒的 TS 分片的流媒體協議,每個分片的時長通常在5秒以上,分片數量一般為3個 - 4個,所以總延遲在10秒 - 30秒左右。

如果您必須要使用 HLS(m3u8)協議,只能通過適當減少分片個數或者縮短每個分片的時長來降低延遲,但需要綜合考慮對卡頓指標可能造成的影響。

2. 檢查播放器設定

騰訊雲移動直播 SDK 的播放器支援極速、流暢和自動三種模式,具體設定請參見 延時調節

  • 極速模式:能保證絕大多數場景下延遲都在2秒 - 3秒以內,美女秀場適合這個模式。
  • 流暢模式:絕大多數場景下延遲都在5秒以內,適合對延遲不敏感但對流暢度要求高的場景,例如遊戲直播。

 

3. 儘量在客戶端打水印

騰訊雲直播支援在雲端打水印,但是打水印會引入額外的1秒 - 2秒的延遲,所以如果您使用的是騰訊雲移動直播 SDK,可以選擇直接在主播端 App 打上水印,這樣就不需要在雲端來打,從而減少水印造成的延遲。

4. 使用第三方推流器

我們只能確保在騰訊雲一體化解決方案中保持理想的效果,如果您使用的是第三方推流軟體,建議您使用騰訊雲移動直播 SDK 的 推流 Demo 做個對比,排除一下第三方推流器的編碼快取引入大延遲的可能,因為很多第三方的推流器會暴力地採用無限緩衝的方式來解決上行頻寬不足的問題。

5. 檢查 OBS 設定

如果您採用的是 OBS 推流,並且發現在播放端延遲比較大。建議您按照 OBS 推流 中的描述配置對應的引數,並注意把關鍵幀間隔設定為1秒或2秒。

6. 接入快直播

如果以上建議都不能滿足您對延遲的要求,您可以接入騰訊雲快直播,快直播比標準直播延遲更低,可以提供毫秒級的極致直播觀看體驗。