音視頻花屏 噪音一些參考網址
https://blog.csdn.net/matrix_laboratory/article/details/71757493 //視頻花屏轉載
一 常見的視頻花屏原因
- 渲染臟數據
- 丟幀
- 圖像格式轉換
1.渲染臟數據是還為完成渲染的數據。具體來講就是在視頻幀渲染到一半的時候,即被送到編碼器編碼。 此問題發生在視頻渲染階段。
(1)圖像具有明顯的撕裂或者錯位特征 渲染臟數據造成結果就是該圖像一半是當前幀的數據,另一半是上一幀的數據
(2)渲染臟數據通常不會造成持續型的花屏現象
如下圖所示,圖片中上下存在明顯錯位的現象。 PS:一般臟數據的渲染結果不一定像下圖中那麽規則。
2.此處所說丟幀丟棄的是視頻編碼後的視頻幀,通常發生在復用(Mux)階段。 由於視頻編碼後幀之間存在依賴關系,丟幀會帶來及其嚴重花屏效果,並且具有持續性影響。 此問題發生在視頻編碼階段。
特征
(1)存粹的花屏,且花屏效果沒有明顯的規則型(比如撕裂、錯位)
(2)連續多幀存在花屏現象
如下圖所示:
產生原因
-
視頻幀時間戳(PTS)不對
由於大部分復用器(Muxer)都嚴格要求視頻幀PTS是嚴格遞增的,比如ffmpeg中mp4 Muxer如果當前幀的PTS小於或等於前一幀的PTS,那麽該幀就不會被寫入文件,ffmpeg會報”Invalid pts”錯誤。 -
視頻向音頻同步引發丟幀(推流過快也可能出現花屏,如果幀數據重復也可以花屏)
- 緩沖隊列溢出
3.圖像格式轉換
在視頻編解碼中必然會涉及到YUV和RGB圖像格式的轉換,並且YUV還有多種格式。如果轉換格式或者算法不正確也會引發視頻花屏問題。 此問題發生在視頻渲染或者播放階段。
(1)圖像的黑白數據是正常的,但是色彩不正常,比如色彩偏色、甚至錯亂。
(2)圖像整體依然處於可識別的狀態,但是存在明顯的彩色斑塊
解決方法參考上面的網址
音視頻花屏 噪音一些參考網址