一、ffmpeg、ffplay、ffprobe区别
ffmpeg:超快音视频编码器(类似爱剪辑)
ffplay:简单媒体播放器
ffprobe:简单多媒体流分析器
二、帮助文档查看
2.1 ffmpeg查看帮助文档
基本信息:ffmpeg -h
高级信息:ffmpeg -h long
所有信息:ffmpeg -h full
2.2 ffplay、ffprobe帮助文档
ffplay:ffpay -h
ffprobe:ffprobe -h
注意:ffmpeg、ffplay、ffprobe部分参数通用,部分不通用
三、ffmpeg命令处理流程
如下一条命令将1920×1080的MP4文件转码成1280×720的flv文件
ffmpeg -i test_1920x1080.mp4 -acodec copy -vcodec libx264 -s 1280x720 test_1280x720.flv
![音视频开源基础 - ffmpeg命令](http://img.jiangsulong.com/220622/1119415103-0.jpg)
文章插图
将test_1920×1080的文件解复用成音频和视频(demuxer)
将数据包解码成数据帧(decoder)
将帧处理成不同分辨率(filter)
将处理后的数据帧编码成数据包(encoder)
将编码后的音频和视频数据包输出到文件(muxer)
四、 ffmpeg命令
4.1 命令分类查询
命令分页:windows下可采取
ffmpeg -formats | more
命令查找:# windowsffmpeg -formats | findstr flv#linuxffmpeg -formats | grep flv
查询具体分类所支持的参数# 语法ffmepg -h type=name# 示例1ffmpeg -h muxer=flv# 示例2ffmpeg -h filter=atempo
![音视频开源基础 - ffmpeg命令](http://img.jiangsulong.com/220622/111941D17-1.jpg)
文章插图
【免费分享】整理了一些学习资料、教学视频和学习路线图,资料包括《Andoird音视频开发必备手册+音视频学习视频+学习文档资料包+大厂面试真题+2022最新学习路线图》等有需要可以点击
FFmpegWebRTCRTMPRTSPHLSRTP播放器-音视频流媒体高级开发
![音视频开源基础 - ffmpeg命令](http://img.jiangsulong.com/220622/1119411438-2.jpg)
文章插图
![音视频开源基础 - ffmpeg命令](http://img.jiangsulong.com/220622/1119412245-3.jpg)
文章插图
formats:如图所示(此命令包含muxers和demuxers),其中第一个参数为支持的复用器 。其中D为支持解复用器,E为支持复用器
![音视频开源基础 - ffmpeg命令](http://img.jiangsulong.com/220622/1119414X0-4.jpg)
文章插图
devices
![音视频开源基础 - ffmpeg命令](http://img.jiangsulong.com/220622/1119415G1-5.jpg)
文章插图
- dshow:支持录制设备(比如摄像头、麦克风)lavfi:虚拟设备sdl,sdl2:代表支持sdl输出vfwcap:摄像头采集
- codes
![音视频开源基础 - ffmpeg命令](http://img.jiangsulong.com/220622/1119413426-6.jpg)
文章插图
其中第一个参数代表每个字母代表含义如下:
D…:解码支持
.E…:编码支持
…V…:视频编解码器(Video)
…A…:音频编解码器(Audio)
…S…:字母编解码器(Subtitle)
…I…:内幕帧编解码器,不需要参考别的帧(Intra frame-only )
…L.:有损的压缩(Lossy)
…S:无损的压缩(Lossless)
decoders
![音视频开源基础 - ffmpeg命令](http://img.jiangsulong.com/220622/111941E39-7.jpg)
文章插图
encoders
![音视频开源基础 - ffmpeg命令](http://img.jiangsulong.com/220622/111941Eb-8.jpg)
文章插图
bsfs
![音视频开源基础 - ffmpeg命令](http://img.jiangsulong.com/220622/1119411462-9.jpg)
文章插图
protocols
![音视频开源基础 - ffmpeg命令](http://img.jiangsulong.com/220622/1119412J9-10.jpg)
文章插图
filters
![音视频开源基础 - ffmpeg命令](http://img.jiangsulong.com/220622/111941H07-11.jpg)
文章插图
pix_fmts
![音视频开源基础 - ffmpeg命令](http://img.jiangsulong.com/220622/11194153c-12.jpg)
文章插图
layouts
![音视频开源基础 - ffmpeg命令](http://img.jiangsulong.com/220622/111941N29-13.jpg)
文章插图
sample_fmts
![音视频开源基础 - ffmpeg命令](http://img.jiangsulong.com/220622/1119413593-14.jpg)
文章插图
colors
![音视频开源基础 - ffmpeg命令](http://img.jiangsulong.com/220622/11194121P-15.jpg)
文章插图
4.2 ffmpeg转封装4.2.1 截取视频
- -i 设定输入流
- -f 设定输出格式
- -ss 开始时间
- -t 时间长度(毫秒)
ffmpeg -i .test.mp4 -codec copy -ss 10 -t 20 -f flv
4.2.2音频处理