我想获取h.264视频每一帧的引用列表。例如,我想获取如下列表:
帧 0:参考帧 0
帧 1:参考帧 0
帧 2:参考帧 1,3
第 3 帧:参考帧 0
我可以使用 ffmpeg 或 ffprobe 获取上述参考信息吗?我用谷歌搜索过,但收获甚少。或者有什么软件可以做到这一点吗?谢谢你的回复!
List 0 和 List 1 引用的直接打印被预处理器防护隐藏。但是,您可以通过打印解码器的内存管理操作来接近
ffmpeg -debug mmco -i INPUT -an -f null -
这将以以下格式打印读数。
[h264 @ 000001c7cf382340] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
[h264 @ 000001c7cf382340] short term list:
[h264 @ 000001c7cf382340] 0 fn:7 poc:65552 000001c7d1090d80
[h264 @ 000001c7cf382340] 1 fn:6 poc:65556 000001c7d0da4600
[h264 @ 000001c7cf382340] 2 fn:5 poc:65548 000001c7d0b00500
[h264 @ 000001c7cf382340] long term list:
fn
指的是解码顺序中的帧索引。 poc
是显示顺序(基本偏移量为 65536)。