提取视频帧显示时间和帧数

提取视频帧显示时间和帧数

我想提取每个帧及其显示时间。目的是稍后比较两个视频(参考/原始视频和传输的视频)之间的输出,并查看缺少哪些帧。我计划使用 Big Buck Bunny (http://download.blender.org/peach/bigbuckbunny_movies/) 作为我的样本视频。

FFMPEG 似乎是用于此目的的工具,但我还没有找到适合我的用例的正确选项组合。

我期望我的输出类似于以下内容:

    frame = 1, time = 0
    frame = 2, time = 2
    frame = 3, time = 3
    ...
    frame 14315, time = 596

我希望质量下降的视频能够通过其输出显示出质量下降的迹象,如缺少帧和时间不同步。

答案1

尝试过滤显示信息。看来这就是你所需要的。例如:

ffmpeg -i 1.ts -vf "showinfo" -f null /dev/null

答案2

为什么不探测视频?ffprobe是用于此目的的绝佳工具,与 捆绑在一起ffmpeg

ffprobe -select_streams v:0 FILE_PATH -show_frames

相关内容