JavaCV音視頻開發寶典:使用JavaCV讀取海康平臺或海康網絡攝像頭sdk回調視頻TS碼流並解析預覽圖像

《JavaCV音視頻開發寶典》專欄目錄導航
《JavaCV音視頻開發寶典》專欄介紹和目錄

JavaCV音視頻開發寶典

前言

兩年前博主寫了如何利用JavaCV解析各種h264裸流,《JavaCV音視頻開發寶典:使用javacv讀取GB28181、海康大華平臺和網絡攝像頭sdk回調視頻碼流並解析預覽圖像》,但是隨着時間變化,各個廠商sdk也有所迭代升級,比如現在海康sdk回調不再包含H264裸流,只有PS和TS流以及RTP(RTP中也可包含PS\TS\H264\H265裸流)

PS流和TS流封裝格式簡述

雖然各大廠商sdk手冊文檔有所介紹,但對於一些概念並沒有進行闡述,下面我們具體講講這些流是什麼,做什麼用的。

ps流和TS流是一對姊妹封裝格式,它們都是MPEG-2(ISO/IEC 13818-2)標準協議家族成員。

ISO/IEC 13818-2標準見下方參考資料列表

什麼是PS流(Program Stream的簡稱)

ps流標準也就是mpeg2-ps,是一種固定時長的音視頻封裝格式,是爲以前dvd影片存儲而專門設計的音視頻存儲標準,現在主要用來存儲點播的回放視頻,一般點播回放會取PS流,因爲它有時長概念,而直播沒有。

什麼是TS流

TS流標準是mpeg-ts,是一種實時傳輸音視頻的封裝格式,主要用於傳輸實時音視頻流,比如HLS,Dash,RTP等協議都會用TS封裝去傳輸音視頻數據。

JavaCV/FFmpeg是可以直接解析TS流的。

什麼是RTP

RTP全稱是Real-time Transport Protocol,RTP主要用於傳輸實時數據,既可以基於TCP也可以基於UDP協議進行傳輸數據。在音視頻領域,RTSP協議和GB/T28181-2016,J/TT 1078-2016等標準都使用RTP進行傳輸音視頻數據。

本文轉載自:https://eguid.blog.csdn.net/article/details/131087602

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章