SEI
补充增强信息单元 :
SEI 属于 [RTP header] + 单一NAL单元模式 ,所以RTP包结构如下
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|V=2|P|X| CC |M| PT | sequence number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| timestamp |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| synchronization source (SSRC) identifier |
+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+
| contributing source (CSRC) identifiers |
| .... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|F|NRI| type | |
+-+-+-+-+-+-+-+-+ |
| |
| Bytes 2..n of a Single NAL unit |
| |
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| :...OPTIONAL RTP padding |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
先看 抓到的 dump
0000 80 60 e2 1f ff 6d 85 0f c6 0a 3f ef 06 05 ff ff .`â.ÿm..Æ.?ï..ÿÿ
0010 ff 14 dc 45 e9 bd e6 d9 48 b7 96 2c d8 20 d9 23 ÿ.ÜEé½æÙH·.,Ø Ù#
0020 ee ef 78 32 36 34 20 2d 20 63 6f 72 65 20 31 34 îïx264 - core 14
0030 32 20 72 32 34 33 31 20 61 63 37 36 34 34 30 20 2 r2431 ac76440
0040 2d 20 48 2e 32 36 34 2f 4d 50 45 47 2d 34 20 41 - H.264/MPEG-4 A
0050 56 43 20 63 6f 64 65 63 20 2d ...
在上面12个byte是 [RTP Header] 对应的码流 和PPS \SPS一样的RTP Header
80 60 e2 1f
ff 6d 85 0f
c6 0a 3f ef
====>转化 二进制
1000 0000 0110 0000 1110 0010 0001 1111 v=2 p=0 x=0 CC=0 M=0 PT=96 SN=57887
1111 1111 0110 1101 1000 0101 0000 1111 timestamp
1100 0110 0000 1010 0011 1111 1110 1111 ssrc
对应wireshark 解析
Real-Time Transport Protocol
10.. .... = Version: RFC 1889 Version (2)
..0. .... = Padding: False
...0 .... = Extension: False
.... 0000 = Contributing source identifiers count: 0
0... .... = Marker: False
Payload type: DynamicRTP-Type-96 (96)
Sequence number: 57887
Timestamp: 4285367567
Synchronization Source identifier: 0xc60a3fef (3322560495)
根据单一NAL单元模式 判断 前1byte 是[NALU Header]
0000 06 05 ff ff ff 14 dc 45 e9 bd e6 d9 48 b7 96 2c ..ÿÿÿ.ÜEé½æÙH·.,
0010 d8 20 d9 23 ee ef 78 32 36 34 20 2d 20 63 6f 72 Ø Ù#îïx264 - cor
0020 65 20 31 34 32 20 72 32 34 33 31 20 61 63 37 36 e 142 r2431 ac76
0030 34 34 30 20 2d 20 48 2e 32 36 34 2f 4d 50 45 47 440 - H.264/MPEG
0040 2d 34 20 41 56 43 20 63 ....
===> 转化 第一个字节06
0000 0110 F=0 NRI=00 说明帧不重要 type=6 说明是SEI
wireshark 解析
NAL unit header or first byte of the payload
0... .... = F bit: No bit errors or other syntax violations
.00. .... = Nal_ref_idc (NRI): 0
...0 0110 = Type: NAL unit - Supplemental enhancement information (SEI) (6)
剩下的就看下H264 NAL Unit Payload NALU的负载
没有完全解析出来,又是不重要的部分.