https://cloud.tencent.com/document/product/454/7946
造成播放端卡頓的原因主要有三種:
-
原因1:推流幀率太低
如果主播端手機性能較差,或者有很占 CPU 的后台程序在運行,可能導致視頻的幀率太低。正常情況下 FPS 達到每秒15幀以上的視頻流才能保證觀看的流暢度,如果 FPS 低於10幀,可以判定為幀率太低,這會導致全部觀眾的觀看體驗都很卡頓。當然如果主播端畫面本身變化就很少,如靜態畫面或 PPT 播放等場景,則不受該原因影響。 -
原因2:上傳阻塞
主播的手機在推流時會源源不斷地產生音視頻數據,但如果手機的上傳網速太小,那么產生的音視頻數據都會被堆積在主播的手機里傳不出去,上傳阻塞會導致全部觀眾的觀看體驗都很卡頓。國內運營商提供的寬帶上網套餐中,下載網速雖然已經達到了10Mbps、20Mbps甚至是100Mbps、200Mbps,但上傳網速卻還一直限制的比較小,很多小城市的上行網速最快是512Kbps(也就是每秒最多上傳64KB的數據)。
Wi-Fi 上網遵循 IEEE 802.11 規定的載波多路偵聽和沖突避免標准,簡言之就是一個 Wi-Fi 熱點同時只能跟一個手機通訊,其它手機在跟熱點通訊前都要先探測或詢問自己是否能夠通訊,所以一個 Wi-Fi 熱點使用的人越多就越慢。同時 Wi-Fi 信號受建築牆體的屏蔽干擾很嚴重,而一般的中國普通家庭很少在裝修時考慮好 Wi-Fi 路由器和各個房間的信號衰減問題,可能主播本人也不清楚自己做直播的房間離家里的路由器究竟穿了幾堵牆。 -
原因3:下行不佳
即觀眾的下載帶寬跟不上或者網絡波動較大,例如直播流的碼率是2Mbps的,也就是每秒鍾有2M比特的數據流要下載下來,但如果觀眾端的帶寬不夠,就會導致觀眾端播放體驗非常卡頓。 下行不佳只會影響當前網絡環境下的觀眾。