二章FFmpeg命令行工具的使用
在阅读这章节之前建议先读:FFmpeg+SDL-----学习大纲
目录
• 背景
• 命令行基础
• FFmpeg命令行工具的获取
• ffmpeg.exe的使用:转码
• ffplay.exe的使用:播放
• 练习
背景
1、使用广泛
- 使用FFmpeg作为内核的视频播放器:Mplayer,射手播放器,暴风影音,KMPlayer,QQ影音…
- 使用FFmpeg作为内核的转码器:格式工厂,狸窝视频转换器,暴风转码…
- 总而言之,FFmpeg是视频行业中的“瑞士军刀”
2、特点 - 基于命令行:Fmpeg界面不太人性化,操作相对复杂,但是也更加灵活。
- 开源:可以吸引全世界优秀的开发者加入其中进行开发。
命令行基础
1、什么是命令行
类似于DOS操作系统的命令窗。“命令行”的对立面是“图形界面。
2、为什么要使用命令行
优点:灵活、方便批处理
缺点:界面不友好
3、打开的方式
点击“开始→程序→附件→命令提示符”或者在运行窗口输入“CMD”。
4、基本的DOS命令
- 最关键命令
- 打开指定文件夹命令 cd {文件路径}
- 切换到上一级文件夹 cd …
- 改变当前盘符命令 c:
- 其他命令
- 查看目录内容命令 dir
- 创建目录命令 md
- 文件复制命令 copy
- 删除文件命令 del
- 清除屏幕命令 cls
- Windows系统提供的额外命令
- 例如ping, ipconfig等等
FFmpeg命令行工具的获取
1、下载地址
访问FFmpeg官网(http://ffmpeg.org)→选择Download→选择Windows Package→进入Zeranoe FFmpeg站。(注意不要直接从FFmpeg官网下载源代码。)
2、版本说明
Zeranoe网站中的FFmpeg分为3个版本:
(1)Static:只包含3个体积很大的exe。
(2)Shared:除了3个体积较小的exe之外,还包含了dll动态库文件。
(3)Dev:只包含了开发用的头文件(.h)和导入库文件(.lib)。
PS: 命令行使用的时候下载Static或者Shared版本就可以了。
3、简单使用
将下载下来的压缩包解压到任意目录(例如D:\ffmpeg),打开命令行工具,切换到ffmpeg的bin文件夹,命令行中输入ffmpeg.exe,查看弹出的信息。
ffmpeg.exe的使用
命令格式
1、功能
ffmpeg.exe用于视频的转码。
2、最简单的命令
ffmpeg -i input.avi -b:v 640k output.ts //该命令将当前文件夹下的input.avi文件转换为output.ts文件,并将output.ts文件视频的码率设置为640kbps。
ffmpeg.exe -ss 15 -i cuc_ieschool.mkv -s 1280*720 -r 7 -t 5 cuc_ieschool.mp4 //设置从15秒开始截取5s,设置帧率为7,帧尺寸为1280*720
3、命令格式
ffmpeg -i {输入文件路径} -b:v {输出视频码率} {输出文件路径}
所有的参数都是以键值对的形式指定的。例如输入文件参数是“-i”,而参数值是文件路径;输出视频码率参数是“-b:v”,而参数值是视频的码率值。但是注意位于最后面的输出文件路径前面不包含参数名称
命令参数
PS:详细的参数可以访问http://ffmpeg.org/ffmpeg.html
ffplay.exe的使用
命令格式
1、功能
ffplay.exe用于视频的播放。
2、最简单的命令
ffplay input.avi //该命令将播放当前文件夹下的input.avi文件。
3、命令格式
ffplay {输入文件路径}
ffplay.exe的参数格式和ffmpeg.exe是类似的。所有的参数都是以键值对的形式指定的(由于不包含输出文件,所以只能指定输入参数)。注意位于最后面的输入文件路径前面不包含参数名称。
快捷键
PS:详细的参数可以访问http://ffmpeg.org/ffplay.html