You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AVC/HEVC解码后VUI信息存储位置问询:是否存于*.yuv文件?

关于AVC/HEVC解码后VUI信息存储的问题解答

问题背景与疑问

视频可用性信息(VUI)是可插入AVC(h.264)或HEVC(h.265)视频码流的额外信息,AVC与HEVC的定义文档明确要求解码器提取该信息,其编解码参考软件为JM(AVC)和HM(HEVC)。

疑问点:

  • AVC/HEVC解码完成后,VUI信息存储在何处?
  • 是否会被存入输出的*.yuv文件中?

用户已研究两款参考软件,但无法追踪提取后VUI的后续去向,寻求专业建议。

核心解答

1. VUI信息不会写入*.yuv文件

*.yuv文件仅存储原始像素数据(亮度Y、色度U/V分量),属于纯像素载体,不包含任何码流元数据。VUI作为描述视频属性的元数据(如色彩空间、时序信息、扫描方式等),不会被写入YUV输出文件。

2. 参考软件中VUI的存储去向

  • AVC JM解码器:提取后的VUI信息会被存储在SeqParameterSet(序列参数集,简称SPS)结构体的vui_parameters成员中,该结构体保存在解码器的运行内存上下文里,主要用于指导解码流程(比如色彩空间转换、帧率同步等),不会被导出到外部文件。
  • HEVC HM解码器:逻辑与JM一致,VUI信息封装在SPS的vui_parameters结构体成员中,仅作为解码过程的控制参考数据存在于内存中,不会随像素数据输出。

追踪VUI流程的建议

  • 在JM代码中,可在decoder/src/seq_parameter_set.c(负责解析SPS和VUI)、decoder/src/decoder.c(解码主流程)中搜索vui_parameters关键字,查看其赋值、引用逻辑,能看到它仅服务于解码环节,未进入YUV输出的代码分支。
  • 在HM代码中,可查看source/Lib/TLibDecoder/TDecSPS.cpp(SPS解析)、source/Lib/TLibDecoder/TDecDecoder.cpp(解码主逻辑)中的VUI处理代码,同样能确认其仅作为内部控制数据使用。

内容的提问来源于stack exchange,提问作者JosefMaier93

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 09:25:07