使用ffmpeg命令实现视频文件间隔提取帧图片

将视频按每隔五秒从视频中提取一张图片

使用 ffmpeg 工具,通过设置 -vf(视频过滤器)和 -vsync 选项

命令格式

复制代码
ffmpeg -i input_video.mp4 -vf "fps=1/5" output_%03d.png

解释:

  • -i input_video.mp4:指定输入的视频文件。
  • -vf "fps=1/5":这个视频过滤器设置每 5 秒提取一帧。fps=1/5 表示每隔 5 秒抽取一帧图像。
  • output_%03d.png:输出文件名的格式,%03d 是一个占位符,它会将数字格式化为三位数字(例如 output_001.png, output_002.png),根据需要修改输出格式。

其他常见选项:

  • 输出图片的格式 :你可以修改输出格式为 .jpg.png 或其他图像格式,例如:output_%03d.jpg
  • 图片质量 :对于JPEG格式的图片,可以使用 -q:v 参数来设置图片质量,例如:-q:v 2(质量从 1311 为最好质量)。

完整命令示例(输出JPEG格式图像):

复制代码
ffmpeg -i video.mp4 -vf "fps=1/5" -q:v 2 output_%03d.jpg

注意:

  • 如果视频非常长,使用此命令可能会生成大量图片文件
  • fps=1/5 也可以替换成 -vf "select='not(mod(n\,150))'",其中 150 代表每隔 150 帧(即大约每 5 秒)提取一帧。这种方法比较灵活,可以控制帧的间隔。
相关推荐
刘广睿4 小时前
视频字幕从提取到烧录:SRT/ASS 格式与 ffmpeg 字幕滤镜全流程
ffmpeg·音视频·效率工具·剪辑·字幕
可乐鸡翅yeah_7 小时前
FFmpeg 与浏览器 HLS 播放表现差异,定位跨客户端兼容问题
ffmpeg·音视频·m3u8·m3u8在线·音视频在线播放
刘广睿2 天前
断点续传与分片下载是怎么实现的?Range 请求在视频下载中的工程实践
okhttp·ffmpeg·音视频·下载·python3.11
IvanCodes3 天前
FFmpeg安装与使用教程
ffmpeg
betazhou6 天前
mysql shell8.4.10+mysql 8.4.10搭建MySQL replicaset主从
数据库·mysql·ffmpeg·replicaset·mysql shell
VidDown7 天前
# VP9 还是 H.265?一次压缩选型翻车后的复盘
ffmpeg·音视频·h.265·视频编解码·视频·vp9
heqingchun167 天前
RK3568 交叉编译与部署:MPP + FFmpeg 硬解全流程
ffmpeg·视频编解码
云贝贝贝8 天前
OceanBase 生产运维 7 个高频现场:从连不上到误删兜底
运维·ffmpeg·oceanbase
≮傷£≯√8 天前
ffmpeg 2个图片合并为视频
ffmpeg·音视频
zone_z11 天前
07 · 等待事件与 OWI 方法:从 OSW 到 BUG 的完整破案实录
linux·数据库·oracle·ffmpeg·bug·troubleshooting