【ffmpeg】ffmpeg命令工具的使用

【ffmpeg】ffmpeg命令工具的使用

  • FFmpeg应用与特点
  • 命令行基础
  • FFmpeg命令行工具的获取
  • ffmpeg.exe的使用
    • 命令格式
    • 命令参数
    • 使用ffmpeg转码
  • ffplay.exe的使用
    • 命令格式
    • 快捷键
    • 使用ffplay播放flv效果
  • 参考资料

个人简介

个人主页:一二三o-0-O的博客
技术方向:C/C++客户端(直播+音视频剪辑)
专栏目标:务实的掌握FFmpeg相关专业知识
如果对您有帮助的话辛苦点赞支持。

音视频基础专栏系列

(一)【音视频基础】音频基础理论
(二)【音视频基础】视频基础理论
(三)【音视频基础】封装格式与编码数据

ffmpeg专栏系列

(一)【ffmpeg】ffmpeg命令工具的使用
(二)【ffmpeg】视频解码器
(三)【ffmpeg】SDL视频显示
(四)【ffmpeg】ffmpeg+SDL实现播放器

FFmpeg应用与特点

  • 使用广泛
    • 使用FFmpeg作为内核的视频播放器
      • MPlayer,射手播放器,暴风影音,KMPlayer,QQ影音…
    • 使用FFmpeg作为内核的转码器
      • 格式工厂,狸窝视频转换器,暴风转码…
    • 总而言之,FFmpeg式视频行业中的“瑞士军刀”
  • 特点
    • 基于命令行
      • FFmpeg界面不太人性化,操作相对复杂,但是也更加灵活。
    • 开源
      • 可以吸引全世界优秀的开发者加入其中进行开发。

命令行基础

  • 什么是命令行

    • 类似于DOS操作系统的命令行。“命令行”的对立面是“图形界面”。
      【ffmpeg】ffmpeg命令工具的使用_第1张图片
  • 为什么要使用命令行

    • 优点:灵活、方便批处理
    • 缺点:界面不友好
  • 打开的方式

    • 在运行窗口输入CMD
      【ffmpeg】ffmpeg命令工具的使用_第2张图片
  • 基本的DOS命令(熟悉linux命令操作也可以)

    • 最关键命令
      • 打开指定文件夹命令 cd {文件路径}
        • 切换到上一级文件夹 cd …
        • 切换到当前目录下名为xxx的文件夹 cd xxx
      • 改变当前盘符命令 c:
    • 其它命令
      • 查看目录内容命令 dir
      • 创建目录命令 md
      • 文件复制命令 copy
      • 删除文件命令 del
      • 清楚屏幕命令 cls
  • Windows系统提供的额外命令

    • 例如ping、ipconfig等等
    • 如果已经熟练linux下的命令行的操作,可以在Windows下安装git bash

FFmpeg命令行工具的获取

  • 下载地址:进入ffmpeg官网下载链接,选择下载Windows Package
    【ffmpeg】ffmpeg命令工具的使用_第3张图片

  • 使用

    • 将下载下来的压缩包解压
    • 打开命令行工具(在windows下安装了gitbash),切换到ffmpeg的bin文件夹
    • 命令行中输入ffmpeg.exe,查看弹出的信息
      【ffmpeg】ffmpeg命令工具的使用_第4张图片
      【ffmpeg】ffmpeg命令工具的使用_第5张图片

ffmpeg.exe的使用

命令格式

  • 功能:ffmpeg.exe用于视频的转码。
  • 最简单的命令

ffmpeg -i input.mp4 -b:v 720k output.mpeg

该命令将当前文件下的input.mp4文件转换为output.mpeg文件,并将output.ts文件视频的码率设置为720kbps。

  • 命令格式

ffmpeg -i {输入文件路径} -b:v {输出视频码率} {输出文件路径}

所有的参数都是以键值对的形式指定的。 例如输入文件参数是“-i”,而参数值是文件路径;输出视频码率参数是“-b:v”,而参数值是视频的码率值。但是注意位于最后面的输出文件路径前面不包含参数名称。

命令参数

常用参数说明:

  • -h: 帮助
  • -i filename: 输入文件
  • -t duration: 设置处理时间,格式为hh:mm:ss
  • -ss position:设置起始时间,格式为hh:mm:ss
  • -b:v bitrate: 设置视频码率
  • -b:a bitrate: 设置音频码率
  • -r fps: 设置帧率
  • -s wxh: 设置帧大小,格式为WxH
  • -c:v codec: 设置视频编码器
  • -c:a codec: 设置音频编码器
  • -ar freq: 设置音频采样率

更多命令行参数:ffmpeg文档

使用ffmpeg转码

进入ffmpeg的bin目录,将当前目录下的MP4视频转码为MPEG视频输出:

./ffmpeg.exe -i 那些年,我们一起追的女孩.mp4 -b:v 393k output.mpeg

【ffmpeg】ffmpeg命令工具的使用_第6张图片

ffplay.exe的使用

命令格式

  • 功能:ffplay.exe用于视频的播放
  • 最简单的命令

ffplay input.mp4

该命令将播放当前文件下的 input.mp4

  • 命令格式

ffplay {输入文件路径}

ffplay.exe的参数格式和ffmpeg.exe是类似的。所有的参数都是以键值对的形式指定的(由于不包含输出文件,所以只能指定输入参数)。注意位于最后面的输入文件路径前面不包含参数名称。

快捷键

快捷键说明:

  • q, ESC:退出
  • f :全屏
  • p, 空格: 暂停
  • 鼠标点击屏幕: 跳转到指定位置

更多命令行参数:ffmplay文档

使用ffplay播放flv效果

使用ffplay的命令以及相关快捷键进行练习
【ffmpeg】ffmpeg命令工具的使用_第7张图片

参考资料

【1】雷神博客)
【2】ffmpeg官方文档

你可能感兴趣的:(#,FFmpeg入门,音视频,ffmpeg,ffmpeg命令行,ffplay)