ffmpeg
万能音视频处理工具
补充说明
ffmpeg命令 是一个强大的跨平台音视频处理工具,支持录制、转换、流式传输等多种功能。它几乎是所有音视频处理任务的标准工具。
语法
ffmpeg [全局选项] {[输入选项] -i 输入} ... {[输出选项] 输出}
常用选项
-c:v 编解码器 # 视频编解码器(libx264, libx265, copy 等)
-c:a 编解码器 # 音频编解码器(aac, mp3, copy 等)
-b:v 比特率 # 视频比特率
-b:a 比特率 # 音频比特率
-r 帧率 # 帧率(fps)
-s 分辨率 # 分辨率(1920x1080)
-t 时长 # 处理时长
-ss 时间 # 起始时间
-vf 滤镜 # 视频滤镜
-af 滤镜 # 音频滤镜
-y # 覆盖输出文件
-map # 选择流
实例
# 基本格式转换
ffmpeg -i input.mp4 output.avi
# 压缩视频(H.264)
ffmpeg -i input.mp4 -c:v libx264 -crf 23 -c:a aac output.mp4
# 提取音频
ffmpeg -i video.mp4 -q:a 0 -map a audio.mp3
# 截取视频片段(从10秒开始,持续30秒)
ffmpeg -ss 10 -i input.mp4 -t 30 output.mp4
# 调整分辨率
ffmpeg -i input.mp4 -s 1280x720 output.mp4
# 添加水印
ffmpeg -i input.mp4 -i logo.png -filter_complex "overlay=10:10" output.mp4
# 截取视频帧为图片
ffmpeg -i video.mp4 -ss 00:01:00 -vframes 1 screenshot.png
# 合并多个视频
ffmpeg -f concat -i filelist.txt -c copy output.mp4
# 将图片序列合成视频
ffmpeg -framerate 24 -i frame_%04d.png output.mp4
# 录制屏幕
ffmpeg -f x11grab -s 1920x1080 -i :0.0 -c:v libx264 screen.mp4
# 转换 GIF
ffmpeg -i video.mp4 -vf "fps=10,scale=320:-1" output.gif
# 查看媒体文件信息
ffprobe input.mp4