H.264碼流整個RTP封包過程

接着上篇的文章,解析下H.264碼流整個RTP封包過程和如何轉換出H.264碼流文件。

RTP封包過程

整個RTP封包過程大概分爲7步:

  1. 搜索NALU起始碼
  2. 保存NALU數據到Buff中
  3. 搜索到下一個NALU起始碼,fseek往前偏移
  4. 計算NALU長度,保存到Len中
  5. 判斷Len長度是否超過1400(MTU爲1500,100留給頭部用)
  6. 單一 NAL 單元封裝爲RTP包或者使用FU拆包(設置FU Indicator 和FU Header)
  7. RTP數據包封裝,發送

轉換成流程圖如下:

H.264碼流轉換

怎麼從視頻中提取H.264碼流文件呢,我們藉助MediaCoder,設置如下:

視頻設置(主要選擇H.264格式):

音頻設置(純視頻碼流不需要音頻):

容器設置(注意這裏不要使用容器,否則碼流就被封裝了):

按照上述設置就可以轉換成264後綴名的H.264碼流文件了。

聲明

原創文章,歡迎轉載,請保留出處。
有任何錯誤、疑問或者建議,歡迎指出。
我的郵箱:[email protected]
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章