FFmpeg:UDP外網傳輸花屏嚴重問題完美解決

1. 前言

最近發現,UDP外網傳輸是,丟幀嚴重,我的環境是:視頻流是濟南移動,播放端是濟南電信家庭寬帶。由於視頻流沒有固定IP,所以我想了一個辦法,讓視頻流網絡穿透,直接點對點傳輸到我的播放端,但是發現我的播放端花屏嚴重。如下圖

2. 解決

漫無目的的在網上搜索,在這篇文章的提醒下:http://www.noobyard.com/article/p-duyjswhc-sq.html

我測試了下,最終的到結論,應該是推流端視頻包大小不一,發包頻繁,最終導致在接收端MTU端,被分包,導致丟幀,下面是推流端,也就是濟南移動端的圖片

從上圖看到,視頻包大小不一,因此,我想了個辦法,推流端將包進行重新拆分,保證每次發出去1400字節大小的包,然後,我又試了一下,果然,一點花屏都沒有了,如圖(GIF質量不好,所以下圖是錄製gif時失真,不是花屏哦):