音视频入门基础:H.264专题(8)——H.264官方文档的描述符

=================================================================

音视频入门基础:H.264专题系列文章:

音视频入门基础:H.264专题(1)------H.264官方文档下载

音视频入门基础:H.264专题(2)------使用FFmpeg命令生成H.264裸流文件

音视频入门基础:H.264专题(3)------EBSP, RBSP和SODB

音视频入门基础:H.264专题(4)------NALU Header:forbidden_zero_bit、nal_ref_idc、nal_unit_type简介

音视频入门基础:H.264专题(5)------FFmpeg源码中 解析NALU Header的函数分析

音视频入门基础:H.264专题(6)------FFmpeg源码:从H.264码流中提取NALU Header、EBSP、RBSP和SODB

音视频入门基础:H.264专题(7)------FFmpeg源码中 指数哥伦布编码的解码实现

音视频入门基础:H.264专题(8)------H.264官方文档的描述符

=================================================================

H.264官方文档《T-REC-H.264-202108-I!!PDF-E.pdf》第42页,对NALU的描述符进行了说明:

描述符指定了NALU中每个语法元素的解析过程,也就是NALU中每个属性使用什么编码方式,占用多少空间。

其中:

f(n):n位固定模式比特串(由左至右),左位在先。

u(n):n位无符号整数。

FFmpeg源码中通过get_bits1和get_bits函数读取f(n)和u(n)类型的属性。关于这两个函数的用法可以参考《FFmpeg中位操作相关的源码:GetBitContext结构体,init_get_bits函数、get_bits1函数和get_bits函数分析》。

ue(v):无符号指数哥伦布编码。

FFmpeg源码中通过get_ue_golomb、get_ue_golomb_long、get_ue_golomb_31等函数实现 对无符号指数哥伦布编码的解码。关于这两个函数的用法可以参考《音视频入门基础:H.264专题(7)------FFmpeg源码中 指数哥伦布编码的解码实现》

se(v):有符号指数哥伦布编码。FFmpeg源码中通过get_se_golomb和get_se_golomb_long等函数实现对 有符号指数哥伦布编码的解码。

描述符一般会在描述码流的结构的表格的第三列显示:

相关推荐
智能直播8 天前
RK3528 V4L2 框架 UVC 接口自动获取 H.264 / MJPEG / YUYV 格式:从内核采集到硬解分发
java·网络·实时音视频·视频编解码·h.264
@嵌入式扫地僧9 天前
FFmpeg 解码 H.264 流提取 SEI 用户数据实战
ffmpeg·h.264·流媒体开发·sei 解析·自定义 sei
the3clipse20 天前
H.265:为什么我们需要新一代视频编码标准?——从H.264到HEVC的技术演进解析
视频编码·h.265·hevc·h.264·视频压缩·流媒体技术·带宽优化
cuijiecheng20182 个月前
RK3588 WebRTC 实时流卡顿优化:从视频桥接到 H.264 PTS 回退
音视频·webrtc·h.264
我不会JAVA!2 个月前
【无标题】
嵌入式硬件·h.264
桐桐桐3 个月前
按目标大小压缩视频:码率反推公式、H.264/H.265 实测与 FFmpeg 自动化
音视频·h.265·h.264
沐禾安信3 个月前
H.264 和H.265 有什么区别,如何相互转换
h.265·h.264
阿拉斯攀登4 个月前
视频编解码(二):H.264 是怎么把 10GB 压成 100MB 的?
音视频·视频编解码·h.264
爱吃骨头的鱼儿4 个月前
h264码流结构
音视频·h.264
网管NO.15 个月前
视频核心技术 03:H.264 / H.265 / AV1 编码标准对比 —— 压缩率、复杂度、适用场景
音视频·h.265·h.264