2.1基础命令
查看版本
ffmpeg -version
查看帮助
ffmpeg -h
查看详细帮助
ffmpeg -h full
查看文件信息
ffmpeg -i input.mp4
或:
ffprobe input.mp4
2.2格式转换
MP4转AVI
ffmpeg -i input.mp4 output.avi
MOV转MP4
ffmpeg -i input.mov output.mp4
MKV转MP4
ffmpeg -i input.mkv output.mp4
FLV转MP4
ffmpeg -i input.flv output.mp4
2.3视频编码
H264编码
ffmpeg -i input.mp4 -c:v libx264 output.mp4
H265编码
ffmpeg -i input.mp4 -c:v libx265 output.mp4
指定码率
ffmpeg -i input.mp4 -b:v 2000k output.mp4
指定帧率
ffmpeg -i input.mp4 -r 60 output.mp4
CRF压缩(常用)
ffmpeg -i input.mp4 -crf 23 output.mp4
CRF 越小:画质越高 文件越大
2.4音频处理
提取MP3
ffmpeg -i input.mp4 output.mp3
提取 AAC
ffmpeg -i input.mp4 -vn -acodec copy output.aac
WAV转MP3
ffmpeg -i input.wav output.mp3
修改音量
ffmpeg -i input.mp3 -filter:a "volume=2.0" output.mp3
修改采样率
ffmpeg -i input.mp3 -ar 44100 output.mp3
修改声道
ffmpeg -i input.mp3 -ac 2 output.mp3
2.5删除音视频
删除音频
ffmpeg -i input.mp4 -an output.mp4
删除视频
ffmpeg -i input.mp4 -vn output.mp3
2.6视频裁剪
截取前30秒
ffmpeg -i input.mp4 -t 30 output.mp4
从10秒开始截取20秒
ffmpeg -ss 10 -i input.mp4 -t 20 output.mp4
精确截取
ffmpeg -ss 00:01:00 -to 00:02:00 -i input.mp4 output.mp4
2.7视频缩放
修改分辨率
ffmpeg -i input.mp4 -s 1280x720 output.mp4
scale滤镜
ffmpeg -i input.mp4 -vf scale=1920:1080 output.mp4
等比例缩放
ffmpeg -i input.mp4 -vf scale=1280:-1 output.mp4
2.8截图与抽帧
截图
ffmpeg -i input.mp4 -ss 10 -vframes 1 output.jpg
每秒一帧
ffmpeg -i input.mp4 -r 1 image_%03d.jpg
指定数量抽帧
ffmpeg -i input.mp4 -vf fps=5 image_%03d.png
2.9GIF制作
视频转GIF
ffmpeg -i input.mp4 output.gif
高质量GIF
ffmpeg -i input.mp4 -vf "fps=10,scale=320:-1:flags=lanczos" output.gif
或
ffmpeg -i input.mp4 \
-vf "fps=10,scale=320:-1:flags=lanczos" \
output.gif
2.10字幕处理
添加字幕
ffmpeg -i input.mp4 -vf subtitles=sub.srt output.mp4
提取字幕
ffmpeg -i input.mkv -map 0:s:0 sub.srt
2.11视频合并
concat 合并
创建
list.txt
内容
file '1.mp4' file '2.mp4'
执行
ffmpeg -f concat -safe 0 -i list.txt -c copy output.mp4
2.12画面裁切
裁剪区域
ffmpeg -i input.mp4 -vf crop=640:480:100:100 output.mp4
宽:高:x:y(坐标)
2.13旋转视频
顺时针90°
ffmpeg -i input.mp4 -vf transpose=1 output.mp4
2.14改变播放速度
2倍速视频
ffmpeg -i input.mp4 -filter:v "setpts=0.5*PTS" output.mp4
2倍速音频
ffmpeg -i input.mp3 -filter:a "atempo=2.0" output.mp3
2.15录屏
Windows录屏
ffmpeg -f gdigrab -i desktop output.mp4
macOS录屏
ffmpeg -f avfoundation -i "1" output.mp4
Linux录屏
ffmpeg -f x11grab -i :0.0 output.mp4
2.16摄像头录制
macOS摄像头
ffmpeg -f avfoundation -i "0:0" output.mp4
2.17推流
RTMP推流
ffmpeg -re -i input.mp4 \
-c:v libx264 \
-f flv \
rtmp://server/live/stream
或
ffmpeg -re -i input.mp4 -c:v libx264 -f flv rtmp://server/live/stream
2.18HLS直播切片
ffmpeg -i input.mp4 \
-hls_time 10 \
-hls_list_size 0 \
output.m3u8
或
ffmpeg -i input.mp4 -hls_time 10 -hls_list_size 0 output.m3u8
2.19滤镜(非常重要)
模糊
ffmpeg -i input.mp4 -vf boxblur output.mp4
灰度
ffmpeg -i input.mp4 -vf hue=s=0 output.mp4
镜像
ffmpeg -i input.mp4 -vf hflip output.mp4
2.20查看支持信息
查看编码器
ffmpeg -encoders
查看解码器
ffmpeg -decoders
查看格式
ffmpeg -formats
查看滤镜
ffmpeg -filters
查看设备
ffmpeg -devices