FFmpeg从入门到精通-2.ffmpeg常用命令

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

相关推荐
2023自学中16 小时前
imx6ull开发板 移植 ffmpeg 4.2.11 + x264 视频编码库
linux·ffmpeg·音视频·嵌入式·开发板
feibaoqq1 天前
光电视频监控技术(GB28181/ONVIF/私有协议)
ffmpeg·音视频·低空安防
feiyangqingyun2 天前
使用ffmpeg播放不同节目/实时切换节目并推流/推流不同的节目流
ffmpeg·推节目流·广播节目
左直拳3 天前
利用海康CVR实现视频流历史回放
ffmpeg·cvr·视频回放·历史视频
MR.欻4 天前
ZLMediaKit 源码分析(四):RTP/RTCP 协议栈实现分析
c++·人工智能·vscode·ffmpeg·音视频
晓py4 天前
音视频基础概念入门_FFmpeg学习笔记
学习·ffmpeg·音视频
daqinzl4 天前
Mpegts.js+FFmpeg+WebSocket+Node实时视频流实现方案
websocket·ffmpeg·node·mpegts.js
qq_369224335 天前
打开剪辑/直播/播放器提示ffmpeg.dll丢失?专属场景修复方法汇总
ffmpeg·dll·dll修复·dll错误
愿天垂怜5 天前
【C++脚手架】ffmpeg 库的介绍与使用
linux·服务器·开发语言·c++·ide·git·ffmpeg
韶博雅5 天前
oracle优化用到的sql
sql·oracle·ffmpeg