H264---nalu

VCL(视频编码层)和 NAL(网络提取层).

VCL:包括核心压缩引擎和块,宏块和片的语法级别定义,设计目标是尽可能地独立于网络进行高效的编码。
NAL:负责将VCL产生的比特字符串适配到各种各样的网络和多元环境中,覆盖了所有片级以上的语法级别。

SODB👉RBSP(👉EBSP)👉NALU

//NALU单元之间用start_code间隔
NALU:Network Abstract Layer Unit	网络抽象层单元。
SODB:String Of Data Bits (原始数据比特流, 长度不一定是8的倍数,故需要补齐,是由VCL产生)。
RBSP:Raw Byte Sequence Payload	原始字节序列载荷
EBSP:扩展字节序列载荷(Encapsulated Byte Sequence Payload
//在h264的文档中,并没有EBSP这一名词出现,但是在h264的官方参考软件JM里,却使用了EBSP。

EBSP = RBSP + 防竞争处理(防竞争字节:0x03)
RBSP= SODB + RBSP trailing bits (若干比特“0”,以便字节对齐。)
//SODB以一个值为1的bit结尾,如果没有字节对齐,就用0补齐
//所以从后往前第一个值为1的位置就为,SODB的最后一个字节。

RBSP就是H.264编码后出来的裸流文件,给文件加上后缀.h264,得到xxx.h264

nalu结构

nalu_header:
在这里插入图片描述

NALU 单元= NALU Header + EBSP
NALU Header = F(1位禁止位,0表正常,1则错误👉丢弃) + NRI(2位重要标志位,11最重要) + Type(5位) 
	   	//例如:SPS  7=00111 序列参数集(SPS) 一般搭配重要性11→0x67
		//	    PPS  8=01000 图像参数集(PPS)	一般搭配重要性11→0
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值