js截取视频第一帧_别逗了!短视频时代你还在手工截图?我整理了4个指令带你上路...

前言

短视频是当下最火热的话题素材,用户消费力巨大,作为内容创作者,掌握一些效率工具极为重要

谁能以最快的速度做出高质量的素材,谁就有可能抢占信息流的前锋,成为真正的视频之王。

传统人工处理图片,视频,音频,极为繁琐而专业,耗费公司人力物力,结果并不一定好,这是高昂的隐形成本

35321a9b753a86a8da7125b0963cf94f.png

计算机的问题,交给计算机处理

短视频来自移动端,PC端,或其他影音设备,本身就是计算机的产物,因此这些素材也必须交给计算机处理,才是在相同的当量上作文章。

本文重点介绍视频处理和转换工具ffmpeg在提取视频图片中的应用。一共4个指令,各个都很有用,让你的工作彻底自动化起来。

0b2e2755750dbbfea08d8f1ba102b13e.png

四条指令

1 - 截取一张特定时间点的图片

ffmpeg -ss hh:mm:ss -i $INPUT_FILE -vframes 1 output.jpg

参数

  • -ss 指定了视频的时分秒,
  • -i 指定输入文件,
  • -vframes 1 表示视频的第一帧。

上述指令,会自动选取最接近设定时间点的位置,并执行截屏。这个速度非常快。

当然也可以使用 -q:v 1,用于指定在时间点附近,选取图像质量最高的那一张。

2 - 每秒钟截取一张

ffmpeg -i input.flv -vf fps=1 image_%d.png

特殊地,

  • -vf fps=1 表示 frame per second截取一张
  • image_%d.png 会生成类似 image_1.png iamge_2.png等文件。

3 - 每间隔X时间截取一张

有了上面的每秒一张,很容易写出每X秒一张的指令:

ffmpeg -i input.flv -vf fps=1/450 image_%d.png

可以猜测的到,这个指令是,每间隔450秒,截取一张图片。

4 - 每间隔X个关键帧截取一张

这个挺实用:

ffmpeg -i input.flv -vf "select='eq(pict_type,PICT_TYPE_I)'" -vsync vfr image_%d.png

上述指令会选取间隔帧选取一张图像元素完整,没有缺损的帧,并截屏返回。在做图片故事梗概的时候很有用。

结语

ffmpeg在视频流处理,文件处理,音视频图像处理方面,是当今世界的基石,数量掌握参数技巧,无疑会大幅提升生产力,提高幸福指数。

Happy coding :-)

【本文由 @程序员小助手 发布,持续分享编程故事,欢迎关注】

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值