从视频制作缩略图

Sig*_*iga 11 thumbnails command-line

如何从视频中进行简单的捕获。最好从命令行?

想法:拍摄9个偶数(在时间轴上)时间的9张快照,并将它们保存为JPG

例子:

Movie length = 10 min
T1= snapshot of 1 min
T2= snapshot of 2 min
......
T9= snapshot of 9 min
   |   |
 T1| T2| T3
---+---+---
 T4| T5| T6
---+---+---
 T7| T8| T9
   |   |
Run Code Online (Sandbox Code Playgroud)

什么是最好的程序来做到这一点?有没有开源程序?

Oll*_*lli 5

ffmpeg是一个优秀的开源工具,用于处理视频,包括提取帧。

要从特定时间戳中提取单个帧,您可以使用类似的命令

ffmpeg -i video.avi -r 1  -t 00:01:00 -f image2 image%05d.png
Run Code Online (Sandbox Code Playgroud)

-r 是帧率。您还可以使用类似的命令

ffmpeg -i video.avi -r 1/1440 -f image2 image%05d.png
Run Code Online (Sandbox Code Playgroud)

每分钟获取一帧(假设视频为 24FPS)。%05d 表示每个缩略图图像的序号应使用 5 位数字进行格式化。

如果要将图像组合为蒙太奇(您的网格),可以在使用 ffmpeg 提取帧后使用 imagemagick。