第43月第21天 h264文件格式
1.
- 00 00 00 01 为分隔符 或者00 00 01
- 分隔符之后
67
为SPS 68
为PPS65
为I帧41
为P与B帧
https://www.jianshu.com/p/dc26fba79cdc
2.
三、H264码流的打包方式
1、Annexb:每个帧的开头是StartCode
2、AVCC:就是开始的若干字节(1,2,4字节)是NAL的长度,而不是StartCode,此时必须借助某个全局的数据来获得编码器的profile、level、PPS、SPS等信息才可以解码,一般是视频播放文件格式,跳转方便快速
四、NALU介绍
NALU,网络传输单元,也是Annexb格式码流的组成部分,每一个NALU都是独立解码的,每一个NALU由一字节的NALU Header和若干字节的EBSP数据组成,所以NALU = NALU Header + EBSP。
NALU Header的结构(1个字节8bit)
forbidden_bit(1bit)+ nal_reference_bit(2bit) + nal_unit_type(5bit)
1、forbidden_bit:禁止位,初始为0,当网络发现NAL单元有比特错误时可设置该比特为1,以便接收方纠错或丢掉该单元
2、nal_reference_bit:nal重要性指示,标志该NAL单元的重要性,值越大,越重要
3、nal_unit_type:表示NALU的类型,计算方法 header & 0x1f = nal_unit_type
五、NALU类型介绍
nal_unit_type NALU类型说明
0 未使用
1 非IDR图像中不采用数据划分的slice(SLICE)
2 非IDR图像中A类数据划分的slice(SLICE_DPA)
3 非IDR图像中B类数据划分的slice(SLICE_DPB)
4 非IDR图像中C类数据划分的slice(SLICE_DPC)
5 IDR图像的slice(SLICE_IDR)
6 补充增强信息(SEI)
7 序列参数集(SPS)
8 图像参数集(PPS)
9 分隔符
10 序列结束符
11 流结束符
12 填充数据
13-23 保留
24-31 未规定
https://blog.csdn.net/yp18792574062/article/details/104283614