【问题标题】:FFmpeg take screenshots from videos with variable durationFFmpeg 从具有可变持续时间的视频中截取屏幕截图
【发布时间】:2015-05-09 17:39:42
【问题描述】:

我有一堆相当长的视频,所以我截取了第 10 秒的屏幕截图 (-ss 00:00:10)。有时视频很短,比如 5 秒,-ss 00:00:10 失败。

我没有计算视频大小的选项,因为没有完整下载它们的选项(视频托管在 S3 上并通过 CloudFront 用作流)。

也许我忽略了一些内置选项?

我真正不想做的是在失败时逐渐缩短 -ss 选项,所以这将是最后的手段。

【问题讨论】:

    标签: ffmpeg


    【解决方案1】:

    一个班轮:

    ffprobe -show_entries format=filename,duration -of default=noprint_wrappers=1:nokey=1 /path/to/input/file -loglevel 0 | awk 'BEGIN {RS="";FS="\n"}{system("ffmpeg -ss "$2/2" -i "$1" -vframes 1 out.png") }'

    意思:

    使用ffprobe 以秒为单位获取文件持续时间,然后通过管道传输到awk 并使用等于duration/2 的寻道时间执行帧提取ffmpeg 命令

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-05
      • 2013-01-11
      • 1970-01-01
      • 1970-01-01
      • 2021-07-12
      • 2018-09-28
      相关资源
      最近更新 更多