有没有办法从 FFMPEG 或类似程序中提取帧内并按原样保留它们?我知道您可以使用-f image2. 但这些是每个帧的完整图像。我只想导出运动变化的图像,所以我会让 P 和 B 帧只显示运动变化,排除或掩盖图像的未变化区域。
这可能吗?
我正在使用的基本帧导出命令。这为我提供了每帧的全帧图像,以指定的 FPS。
ffmpeg -i input.mp4 -r 12 -an -b 1024k -y -f image2 frame%4d.jpg
我希望导出帧,以便我有一个帧文件夹,其中第一帧将是完整图像,下一帧将仅是需要重绘图像的图像数据。暴露两个帧之间的时间冗余(这不是 I、P、B 帧所做的吗?)
小智 7
要提取 certin 类型的框架,请使用select过滤器:
select=eq(pict_type\,<x>)
其中<x>是下列之一:pict_type (video only) the type of the filtered frame, can assume one of the following values: I, P, B, S, SI, SP, BI
例如:
ffmpeg -i <inputfile> -vf '[in]select=eq(pict_type\,B)[out]' b.frames.mp4
要了解有关输出的更多信息,请添加showinfo过滤器:
ffmpeg -i <inputfile> -vf '[in]select=eq(pict_type\,B),showinfo[out]' b.frames.mp4
| 归档时间: |
|
| 查看次数: |
16280 次 |
| 最近记录: |