FFmpeg 安装与使用教程

FFmpeg 是一个强大的多媒体处理工具,可以用于音视频的录制、转换和流播。它支持几乎所有流行的音视频格式和编解码器。本文将介绍如何在不同操作系统上安装 FFmpeg 以及一些常见的使用示例。

安装 FFmpeg

Windows 安装

第一步

第二步

第三步

  • 解压下载的压缩包,将其放在一个方便访问的位置(例如:D:\ffmpeg-7.0.1)。

解压记录位置

  • 将 FFmpeg 的 bin 目录添加到系统的环境变量中:

​ 右键点击“此电脑”,选择“属性”。

属性

  • 点击“高级系统设置”,然后点击“环境变量”。

高级系统设置

环境变量

  • 在“系统变量”部分,找到并选中“Path”,然后点击“编辑”。

系统变量

  • 点击“新建”,输入 FFmpeg 的 bin 目录路径,例如 D:\ffmpeg-7.0.1\bin,然后点击“确定”。

环境变量

  • 流程图:Windows 安装 FFmpeg
 graph LR
A[下载 FFmpeg] --> B[解压文件]
B --> C[将 FFmpeg 放到 D:\ffmpeg-7.0.1]
C --> D[添加 FFmpeg 到环境变量]

macOS 安装(macOS安装图略)

  • 在 macOS 上,你可以使用 Homebrew 来安装 FFmpeg:
1
brew install ffmpeg
  • 如果你还没有安装 Homebrew,可以先在终端中执行以下命令来安装 Homebrew:
1
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  • 流程图:macOS 安装 FFmpeg
graph LR
A[安装 Homebrew] --> B[运行 brew install ffmpeg]

Linux 安装(安装图略)

  • 在大多数 Linux 发行版上,你可以使用包管理器来安装 FFmpeg。

​ 对于 Debian/Ubuntu 系列:

1
2
sudo apt update
sudo apt install ffmpeg

​ 对于 CentOS/RHEL 系列:

1
2
sudo yum install epel-release
sudo yum install ffmpeg
  • 流程图:Linux 安装 FFmpeg
graph LR
A[运行 sudo apt/yum install ffmpeg] --> B[安装完成]

验证安装

  • 安装完成后,你可以通过在终端或命令提示符中输入以下命令来验证 FFmpeg 是否安装成功:
1
ffmpeg -version
  • 如果成功安装,你会看到 FFmpeg 的版本信息和编译配置。

  • 流程图:验证安装

graph LR
A[运行 ffmpeg -version] --> B[显示版本信息]

使用 FFmpeg

  • FFmpeg 的命令行工具非常强大,下面是一些常见的使用示例。

转换视频格式

  • 将一个 MP4 文件转换为 AVI 格式:
1
ffmpeg -i input.mp4 output.avi
  • 流程图:转换视频格式
graph LR
A[输入 MP4 文件] --> B[运行转换命令]
B --> C[输出 AVI 文件]

提取音频

  • 从视频文件中提取音频,并保存为 MP3 格式:
1
ffmpeg -i input.mp4 -q:a 0 -map a output.mp3
  • 流程图:提取音频
graph LR
A[输入视频文件] --> B[运行提取命令]
B --> C[输出音频文件]

合并视频文件

  • 将多个视频文件合并为一个文件:

    首先,创建一个文本文件 filelist.txt,内容如下:

1
2
3
file 'input1.mp4'
file 'input2.mp4'
file 'input3.mp4'

​ 然后使用以下命令合并视频文件:

1
ffmpeg -f concat -safe 0 -i filelist.txt -c copy output.mp4
  • 流程图:合并视频文件
graph LR
A[创建文件列表] --> B[运行合并命令]
B --> C[输出合并文件]

调整视频分辨率

  • 将视频文件调整为 1280x720 分辨率:
1
ffmpeg -i input.mp4 -vf scale=1280:720 output.mp4
  • 流程图:调整视频分辨率
graph LR
A[输入视频文件] --> B[运行调整命令]
B --> C[输出调整文件]

剪辑视频

  • 剪辑视频从 00:01:00 开始,持续 30 秒:
1
ffmpeg -i input.mp4 -ss 00:01:00 -t 30 -c copy output.mp4
  • 流程图:剪辑视频
graph LR
A[输入视频文件] --> B[设置起始时间和持续时间]
B --> C[输出剪辑文件]

添加水印

  • 在视频上添加一个图片水印(位置在右上角):
1
ffmpeg -i input.mp4 -i watermark.png -filter_complex "overlay=W-w-10:10" output.mp4
  • 流程图:添加水印
graph LR
A[输入视频文件和水印图片] --> B[运行添加水印命令]
B --> C[输出带水印文件]

压缩视频

  • 使用 H.264 编码压缩视频:
1
ffmpeg -i input.mp4 -vcodec libx264 -crf 28 output.mp4
  • 流程图:压缩视频
graph LR
A[输入视频文件] --> B[运行压缩命令]
B --> C[输出压缩文件]

创建 GIF

  • 从视频中创建 GIF 动画:
1
ffmpeg -i input.mp4 -vf "fps=10,scale=320:-1:flags=lanczos" output.gif
  • 流程图:创建 GIF
graph LR
A[输入视频文件] --> B[运行创建 GIF 命令]
B --> C[输出 GIF 文件]

分离音视频

  • 将视频和音频分离为两个文件:
1
2
ffmpeg -i input.mp4 -an -vcodec copy video.mp4
ffmpeg -i input.mp4 -vn -acodec copy audio.mp3
  • 流程图:分离音视频
graph LR
A[输入视频文件] --> B[分离视频命令]
B --> C[输出视频文件]
A --> D[分离音频命令]
D --> E[输出音频文件]

高级功能

添加字幕

  • 将 SRT 字幕文件添加到视频中:
1
ffmpeg -i input.mp4 -vf subtitles=subtitles.srt output.mp4
  • 流程图:添加字幕
graph LR
A[输入视频文件和字幕文件] --> B[运行添加字幕命令]
B --> C[输出带字幕文件]

制作缩略图

  • 从视频中提取缩略图(在第 10 秒):
1
ffmpeg -i input.mp4 -ss 00:00:10 -vframes 1 thumbnail.png
  • 流程图:制作缩略图
graph LR
A[输入视频文件] --> B[运行提取缩略图命令]
B --> C[输出缩略图文件]

添加音效

  • 将音频文件添加到视频中:
1
ffmpeg -i input.mp4 -i background.mp3 -c:v copy -c:a aac -strict experimental output.mp4
  • 流程图:添加音效
graph LR
A[输入视频文件和音频文件] --> B[运行添加音效命令]
B --> C[输出带音效文件]

FFmpeg 常用参数

  • -i:输入文件。
  • -vf:视频滤镜。
  • -af:音频滤镜。
  • -c:v:视频编码器。
  • -c:a:音频编码器。
  • -b:v:视频比特率。
  • -b:a:音频比特率。
  • -r:帧率。
  • -s:分辨率。
  • -ss:开始时间。
  • -t:持续时间。

结论

  • FFmpeg 是一个功能强大且灵活的多媒体处理工具,掌握它可以让你在

  • 音视频处理方面如虎添翼。希望这篇教程能帮助你入门 FFmpeg,并能够在日常工作中熟练使用它。

  • 如果你遇到任何问题或有更多的需求,FFmpeg 的官方文档是一个非常好的资源,里面有详尽的参数解释和使用示例。


声明:此教程仅供学习使用,请遵守相关法律法规和网站的使用条款,不要将此脚本用于非法用途或商业获利。如因不当使用引起的任何法律问题,作者不承担任何责任。