H.264 SODB RBSP EBSP的区别
2024-10-08 13:31:20
SODB(String of Data Bits,数据比特串):
最原始,未经过处理的编码数据
RBSP(Raw Byte Sequence Payload,原始字节序列载荷):
在SODB的后面填加了结尾bit(RBSP trailing bits 一个bit ‘1’)若干bit ‘0’,以便字节对齐。
EBSP(Encapsulated Byte Sequence Payload, 扩展字节序列载荷):
NALU的起始码为0x000001或0x00000001(起始码包括两种:3 字节(0x000001) 和 4 字节(0x00000001),在 SPS、PPS 和 Access Unit 的第一个 NALU 使用 4 字节起始码,其余情况均使用 3 字节起始码。)
同时H264规定,当检测到0x000000时,也可以表示当前NALU的结束。那这样就会产生一个问题,就是如果在NALU的内部,出现了0x000001或0x000000时该怎么办?
在RBSP基础上填加了仿校验字节(0x03)它的原因是:在NALU加到Annexb上时,需要填加每组NALU之前的开始码StartCodePrefix,如果该NALU对应的slice为一帧的开始则用4位字节表示,0x00000001,否则用3位字节表示0x000001.为了使NALU主体中不包括与开始码相冲突的,在编码时,每遇到两个字节连续为0,就插入一个字节的0x03。解码时将0x03去掉。也称为脱壳操作。
关系图:
最新文章
- win 10 常见问题
- SQL Server 数据库中关于死锁的分析
- 反Secure Boot垄断:兼谈如何在Windows 8电脑上安装Linux
- wap资费页面
- nginx 负载均衡相关知识
- 动态引入Js文件
- Spring talk简单配置
- python:open/文件操作
- 1086. Tree Traversals Again (25)
- Python:怎样用线程将任务并行化?
- ABP入门系列(1)——通过模板创建MAP版本项目
- 统计分析与R软件-chapter2-2
- Oracle中start with...connect by子句的用法
- SVM:SVM之Classification根据已有大量数据集案例,输入已有病例的特征向量实现乳腺癌诊断高准确率预测—Jason niu
- 基于 HTML5 的工业组态高炉炼铁 3D 大屏可视化
- 基于esp32的IIC通讯
- 关于casperjs的介绍
- cf623A. Graph and String(二分图 构造)
- 转	 Linux会话浅析(写得极好,表述清楚语言不硬)
- HDU 2082 找单词 (普通母函数)