【问题标题】:Tile filter for libav/avconvlibav/avconv 的平铺过滤器
【发布时间】:2018-04-16 14:50:04
【问题描述】:

有没有办法使用 libav/avconv 来复制 FFMPEG 中 tile 过滤器的效果?

我正在尝试为每十秒的视频输入创建一个从左到右的图像条带。

我的计划是首先生成图像,然后创建图像条。最好我想在 ffmpeg 上使用 libav。到目前为止,我已经创建了这个:

avconv -i video.mp4 -vf scale=320:-1,fps=1/10 -q:v 6 img%03d.jpg

创建图像。但后来我只知道如何使用 ffmpeg 创建图像:

ffmpeg -i img%03d.jpg -filter_complex tile=6x1 output.jpg

因此,如果有人对如何重写第二个或两个命令以使用 avconv 有任何提示,我欢迎任何建议 :)

【问题讨论】:

  • 你为什么不想用ffmpeg来代替?
  • @LordNeckbeard 运行它的服务器使用的是 Google Cloud App Engine docker 映像,我认为该映像基于 Ubunto 14.XX,并且不附带 ffmpeg。因此,使用 avconv 可以节省我在 dockerfile 中设置完整的手动下载
  • 不能使用static build吗?
  • @LordNeckbeard 当然。我只是希望避免它。我不擅长创建 docker 文件,并且发现从静态构建安装二进制文件有点混乱和耗时
  • avconv 缺少ffmpeg 中的许多功能,包括平铺过滤器(以及数百个其他功能)。一个草率、单调的解决方案是使用颜色源过滤器作为背景,每个图像使用一个叠加过滤器来手动放置每个图像。或者使用其他工具,例如 imagemagick 中的 montage,如果它在您的 docker 东西中可用。

标签: ffmpeg libav avconv


【解决方案1】:

由于 libav/avconv 没有任何过滤器支持我的要求,因此切换到 ffmpeg 的静态构建是最简单的解决方案。

然后命令变成:

ffmpeg -i video.mp4 -vf scale=320:-1,fps=1/10 -q:v 6 img%03d.jpg

ffmpeg -i img%03d.jpg -filter_complex tile=6x1 output.jpg

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-02-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-17
    • 1970-01-01
    相关资源
    最近更新 更多