StreamParser
打开工具
Parameter Sets

SPS、PPS、VPS 是什么?

参数集是解码器理解码流的基础。播放器要正确解码视频,通常需要先获得序列、图像或视频级参数。缺少参数集、参数集错位或字段读取错误,都会导致无法解码、分辨率错误或帧类型判断异常。

H.264 中的 SPS 和 PPS

H.264 的 SPS 保存序列级配置,例如 profile_idclevel_idcpic_width_in_mbs_minus1pic_height_in_map_units_minus1、裁剪窗口、VUI 和 HRD。PPS 保存图像级配置,例如熵编码模式、参考索引默认值、初始 QP、去块滤波和 slice group 信息。

H.265 中的 VPS、SPS 和 PPS

H.265 增加 VPS,用于描述视频参数集级信息。SPS 继续描述序列级属性,例如 chroma_format_idcpic_width_in_luma_samplesprofile_tier_level 和 VUI。PPS 描述图像级编码配置,例如 tiles、SAO、QP 偏移、去块滤波和扩展字段。

常见排查字段

为什么字段要按协议顺序解析

SPS/PPS/VPS 中大量字段由前面的 flag 控制是否出现。例如某个 flag 为 0 时,后续一组字段根本不存在。如果解析器跳过条件或字段顺序错误,后续所有 bit 都会错位,表现为字段值异常、二进制高亮不对应或帧统计错误。