如何使用 ffmpeg 输出截图图库/马赛克?

如何使用 ffmpeg 输出截图图库/马赛克?

我想知道如何使用 ffmpeg 创建类似这样的视频缩略图(取自 VLC 论坛):

7x3 的视频静态网格

我知道 totem 可以做到这一点,但 totem 不支持我使用的视频格式

本文说ffmpeg可以做到这一点。

答案1

使用以下方法创建电影截图马赛克:ffmpeg

创建屏幕截图马赛克

如果你正在使用比 Ubuntu 15.04 更早的版本,那么存储库中所谓的“ ffmpeg”软件包指的是来自 Libav fork 的假版本,它不具备你需要的功能,所以你必须下载静态构建ffmpeg或关注一步一步指导编译ffmpeg

使用的示例命令selectscale, 和tile过滤器:

./ffmpeg -i input -vf "select=gt(scene\,0.4),scale=160:-1,tile" -frames:v 1 \
-qscale:v 3 preview.jpg

在此示例中,输出将为960x450。如果要更改,可以添加额外的比例过滤器,或者可以更改每个图块的大小。600 像素宽输出的示例:

./ffmpeg -i input -vf "select=gt(scene\,0.4),scale=160:-1,tile,scale=600:-1" \
-frames:v 1 -qscale:v 3 preview.jpg

您甚至可以在输出中添加文本。此示例将在图像顶部添加 24 像素的黑色填充,并在填充的中心添加文本“钢铁侠”。

./ffmpeg -i input -vf "select=gt(scene\,0.4), \
  scale=160:-1, \
  tile, \
  scale=600:-1, \
  pad=iw:ih+24, \
  drawtext=fontsize=30:box=1:fontfile=/usr/share/fonts/TTF/Vera.ttf:text='Iron Man':x=(w-text_w)/2:0"
  -frames:v 1 -qscale:v 3 preview.jpg

其他的东西

  • 您可以使用 控制输出质量-qscale:v。有效范围是 2-31 的线性比例;其中 2 为最佳质量。

  • 查看select过滤文档了解更多信息。

相关内容