我正在编码一些视频,我想添加一个缩略图,这样加载速度会比文件系统浏览器使用默认方法自动生成缩略图更快。我找到了许多单独的工具,它们可以生成或添加现有缩略图,但我想要一个 ffmpeg 解决方案,因为我已经在使用它进行编码了。缩略图应该是视频时长的 25% 或 33% 的图像。
答案1
首先使用 ffprobe 获取编码文件的持续时间,
DURATION=$(ffprobe -show_entries format=duration -v 0 -of compact=p=0:nk=1 file.mp4)
和四分之一点
DUR=$(echo "$DURATION/4" | bc)
提取并附加缩略图,
ffmpeg -i file.mp4 -ss $DUR -i file.mp4 -map 1:v:0 -map 0 -filter:v:0 scale=320:-1,trim=end_frame=1 -c copy -c:v:0 mjpeg -disposition:0 attached_pic out.mp4