vps交流

[经验] 使用ffmpeg在vps上生成视频预览图


本帖最后由 汤家凤 于 2022-8-14 16:59 编辑

以debian为例,首先安装ffmpeg

  1. apt install ffmpeg

复制代码

进入视频所在位置,执行命令

  1. ffmpeg  -i input.mp4 -r 0.0033 -vf scale=-1:720 -vcodec png capture-%003d.png

复制代码

其中input.mp4是需要生成预览图的视频

0.0033是间隔时间比率,这个数越小代表间隔时间越长,0.0033代表每5分钟左右截一张图片,如果调成0.0023大概就是7分钟一张图片

-1:720代表生成图片短边的长度,这里就是 ? x 720, ? 取决于视频的比例

capture-%003d.png代表文件名,生成的文件就以capture-001.png,capture-002.png…..为文件名,如果设置成capture-%002d.png,则文件名就是capture-01.png,capture-02.png…..

其实也可以生成那种拼盘式的,一张图片里面包含所有预览图的,但是考虑到小鸡性能普遍较弱,这样一张一张的可以看到生成到那个地方了,不至于跑崩了竹篮打水一场空。

附带一个视频生成一个文件夹的bash代码

  1. for x in ./*.mp4; do
  2.   mkdir "${x%.*}" && mv "$x" "${x%.*}"
  3. done

复制代码

*.mp4改成你需要生成文件夹文件后缀名

这种方式同样适合挂载的云盘,亲测用rclone 挂载的 OneDrive可以用这种方法生成。

PS:经过实验,一般来说前两张应该是截开头的地方,从第三张开始才能截取到5分钟时的内容,如果你用了之后发现前两张是全黑或者全白,请耐心等第三张出来之后有没有问题在进行判断有没有问题

文件夹下批量生成 *.mp4的代码来一个啊
这玩意儿支持远程视频吗
挺不错的。。。。
牛逼。。。。。。。
能干啥用啊 。。。

一美元 发表于 2022-8-14 17:32
能干啥用啊 。。。

很简单,从视频中每隔几分钟截取一张图片保存,这样就可以只看图片就知道是不是自己要找的那个视频,而不用点开视频看

推荐使用mtn,在生成缩略图方面速度快又好

汤家凤 发表于 2022-8-14 17:35
很简单,从视频中每隔几分钟截取一张图片保存,这样就可以只看图片就知道是不是自己要找的那个视频,而不 …

能否在右下角带上此截图的时间轴,另外想要把所有小图合成一张大图的命令,就像那些电影预览图一样。

https://github.com/Revan654/movie-thumbnailer-mtn/releases