H265 NALU类型简单介绍及RTP打包H265码流

H265 NALU类型简单介绍:

F:必须为0,表示有效;为1的话表示无效。

Type:6-bits NALType 确定NAL的类型,其中VCL NAL和non-VCL NAL各有32类。0-31是vcl nal单元;32-63,是非vcl nal单元。VCL是指携带编码数据的数据流,而non-VCL则是控制数据流。

LayerID:表示NAL所在的Access unit所属的层,该字段是为了HEVC的继续扩展设置。也就是目前都是0,以后的扩展可能会用到。
TID:3 bits

通常情况下,F为0,LayerID为0,TID为1

下面我们来看一个RTP包的NALU Header的例子,如下图:

H265帧类型解析:

H264的帧类型解析为:int Type = code & 0x1f;

H265的帧类型解析为:int Type = (code & 0x7E)>>1;

00 00 00 01是NALU的起始码,后面紧跟一个字节NAL Type常见的有6种,分别如下:

控制数据流,主要由以下4种:

视频参数集VPS,NALU Type值为32,RTP中H265格式如下:

序列参数集SPS,NALU Type值为33,RTP中H265格式如下:

序列参数集PPS,NALU Type值为34,RTP中H265格式如下:

补充增强信息SEI,NALU Type值为39,RTP中H265格式如下:

编码数据的数据流,主要由以下2种:

00 00 00 01 62 01 93 的nuh_unit_type的值为 19, 语义为可能有RADL图像的IDR图像的SS编码数据 IDR,RTP中H265格式如下:

这里我们再讲一个问题,当发送的NALU长度小于MTU时,直接发送;当发送的NALU长度大于MTU时,需要分片,上面的这个为分片的起始包,FU Header中的Start bit值为1,注意Start bit和End bit不能同时为1;FU分片的中间包Start bit和End bit的值均为0;FU分片结束包中End bit为1。

00 00 00 01 02 01 的nuh_unit_type的值为1, 语义为被参考的后置图像,且非TSA、非STSA的SS编码数据,RTP中H265格式如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值