# FFMPEG使用笔记

本文介绍了FFMPEG的常用操作,包括视频切分、提取帧、压缩视频以及如何用图片生成新视频。通过示例命令,展示了如何高效地处理视频文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

# FFMPEG使用笔记

## 简介
最近用YOLO做一些项目,涉及到一些视频文件的处理,重新看了一些FFMPEG的资料,记录一些常用的操作及指令

### 将视频切分成不同的文件
$ ffprobe VIDEO_FILE.mp4
将输出视频VIDEO_FILE.mp4的metadata信息:时长,bitrate, Video format, resolution, fps等。
$ ffmpeg -i source-file.foo -ss 0 -t 600 -copy first-10-min.m4v$ ffmpeg -i source-file.foo -ss 600 -t 600 -copy second-10-min.m4v
或者先用播放器定位到想要的位置,然后再切。比如:
$ ffmpeg -i source.m4v -ss 0 -t 593.3 -c copy part1.m4v$ ffmpeg -i source.m4v -ss 593.3 -t 551.64 -c copy part2.m4v
也可以将之整合一下,加个loop做成脚本
同样,这种方法也可以用于在最终结果中对视频进行截取,剪切出最有代表性的片断。

### 提取视频帧 & 关键帧
1. 提取所有的帧,通常可用来做为所有结果的检查
ffmpeg -i video.webm thumb%04d.jpg -hide_banner
2. 只提取一帧
ffmpeg -i video.webm -ss 00:00:07.000 -vframes 1 thumb.jpg
3. 提取从特定时间开始的3帧
ffmpeg -i video.webm -ss 00:00:07.000 -vframes 3 thumb%04d.jpg -hide_banner
4. 每秒提取一帧
ffmpeg -i video.webm -vf fps=1 thumb%04d.jpg -hide_banner
5. 每5秒提取一帧
ffmpeg -i video.webm -vf fps=1/5 thumb%04d.jpg -hide_banner
6. 提取video文件中的所有关键帧
ffmpeg -i video.webm -vf "select=eq(pict_type\,I)" -vsync vfr thumb%04d.jpg -hide_banner
* 使用  "select=eq(pict_type\,I)" 会使用过滤器选择所有的关键帧
* -vsync vfr:  告诉过滤器使用可变的bitrate视频同步,这个参数是必须的

### 对视频进行压缩
针对检测的结果,由于是无压缩直接生成的,视频会比较大,此时可以使用ffmpeg进行压缩.
ffmpeg -i input.mp4 -c:v libx264 -crf 24 -b:v 1M -c:a aac output.mp4

### 用多个图片生成新的视频
这个在做最后的演示的时候会需要用到
TODO:ADD Some Commands

## Reference


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值