RTP協定對媒體資料(包括音頻和視訊)的封裝是由指定的的協定文檔規定。
1. RTP封裝H.264視訊編碼資料
1.1 H.264 基本流的結構
H.264 的基本流(elementary stream,ES)的結構分為兩層,包括視訊編碼層(VCL)和 網絡适配層(NAL)。
視訊編碼層負責高效的視訊内容表示,
而網絡适配層負責以網絡所要 求的恰當的方式對資料進行打包和傳送。
引入 NAL 并使之與 VCL 分離帶來的好處包括兩方面:
其一、使信号處理和網絡傳輸分離,VCL 和 NAL 可以在不同的處理平台上實作;
其二、 VCL 和 NAL 分離設計,使得在不同的網絡環境内,網關不需要因為網絡環境不同而對 VCL比特流進行重構和重編碼。
H.264 的基本流由一系列 NALU(Network Abstraction Layer Unit)組成,不同的 NALU 資料量各不相同。
H.264 草案指出,當資料流是儲存在媒體上時,在每個 NALU 前添加起 始碼:0x000001,用來訓示一個 NALU 的起始和終止位置。
在這樣的機制下,解碼器在碼 流中檢測起始碼,作為一個 NALU 得起始辨別,當檢測到下一個起始碼時,目前 NALU 結 束。
每個 NALU 單元由一個位元組的 NALU 頭(NALU Header)和若幹個位元組的載荷資料 (RBSP)組成。
其中 NALU 頭的格式如圖 2 所示