音视频入门基础: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等函数实现对 有符号指数哥伦布编码的解码。

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

相关推荐
小柯博客13 天前
STM32MP1 没有硬件编解码,如何用 CPU 实现 H.264 编码支持 WebRTC?
c语言·stm32·嵌入式硬件·webrtc·h.264·h264·v4l2
撬动未来的支点1 个月前
【音视频】H.264关键帧识别
音视频·h.264
戴草帽的大z1 个月前
交叉编译FFmpeg:从x264到RK3588部署实战
linux·ffmpeg·rk3588·h.264·aarch64
plmm烟酒僧1 个月前
RK3588 使用 FFmpeg 硬件解码输出到 DRM Prime (DMA Buf) 加速数据传输
ffmpeg·rk3588·h.264·瑞芯微·硬件解码·rga
MThinker2 个月前
02-Media-11-video_player.py 对H.264或H.265格式视频播放器的示例程序
python·音视频·h.265·h.264·micropython·canmv·k230
q2498596932 个月前
h.265格式的视频在浏览器无法正常播放,使用ffprobe转为h.264
音视频·h.265·h.264
浆果02072 个月前
.h264或.264视频文件转化成mp4视频
python·ffmpeg·h.264
却道天凉_好个秋3 个月前
音视频学习(六十):H264中的PPS
音视频·h.264·pps
melonbo4 个月前
正向矩阵(DCT)变换后还是一个矩阵,怎么减少存储空间
音视频·h.264
看兵马俑的程序员4 个月前
H.264视频的RTP有效载荷格式(翻译自:RFC6184 第5节 RTP有效载荷格式)
网络·音视频·h.264