第1讲:FFmpeg 是什么?安装与环境配置
本讲目标
理解 FFmpeg 是什么、能干什么
在你的电脑上成功安装 FFmpeg
跑通第一条 FFmpeg 命令
一、FFmpeg 是什么?
一句话概括:FFmpeg 是世界上最强大的开源音视频处理工具。
它能做的事情包括但不限于:
场景 | 用 FFmpeg 怎么做 |
|---|---|
把 MKV 格式的视频转成 MP4 | 一条命令 |
把 2GB 的视频压缩到 500MB | 一条命令 |
从视频中截取一段精彩片段 | 一条命令 |
把视频里的音频提取出来存为 MP3 | 一条命令 |
给视频加上文字或图片水印 | 一条命令 |
把视频片段转成 GIF 动图 | 一条命令 |
几乎所有视频处理软件(格式工厂、剪映、PR 等)底层都在用 FFmpeg。
但它有一个缺点:没有图形界面,全靠命令行操作。
这就是本专栏存在的意义——带你一条一条命令掌握它。
二、几个必须搞懂的名词(一句话版)
在正式开始之前,先搞清楚三个经常出现的词:
名词 | 一句话解释 |
|---|---|
容器 | 就是你看到的文件后缀名,比如 |
编码 | 就是把视频压缩成数字信号的方式。常见的视频编码有 H.264、H.265,音频编码有 AAC、MP3。 |
转码 | 改变编码方式的过程。比如把一个视频从 H.265 转成 H.264,因为后者兼容性更好。 |
现在不理解没关系,后面用到的时候会反复提到,慢慢就熟了。
三、安装 FFmpeg
3.1 Windows 安装
第一步:下载
打开浏览器,访问 FFmpeg 官方下载页面:
https://ffmpeg.org/download.html点击 Windows 图标,进入下载页面后,找到"Windows builds from gyan.dev" 这个链接。
在打开的页面中,往下翻,找到ffmpeg-release-full.7z 这个文件,点击下载。
如果官网访问慢,可以用国内镜像:
Builds - CODEX FFMPEG @ gyan.dev
第二步:解压
下载得到一个.7z压缩包,用 7-Zip 或 WinRAR 解压到你想要的位置。
比如解压到:C:\ffmpeg
解压后的目录结构应该是这样的:
C:\ffmpeg\ ├── bin\ │ ├── ffmpeg.exe │ ├── ffprobe.exe │ └── ffplay.exe ├── doc\ └── ...第三步:配置环境变量
右键此电脑 →属性
点击高级系统设置
点击环境变量
在系统变量 中找到
Path,双击打开点击新建,输入
C:\ffmpeg\bin点击确定,关闭所有窗口
第四步:验证是否成功
按
Win + R,输入cmd,回车打开命令行输入以下命令并回车:
ffmpeg -version如果看到类似下面的输出,说明安装成功:
ffmpeg version 7.0.2 Copyright (c) 2000-2024 the FFmpeg developers built with gcc 14.1.0 (Rev2, Built by MSYS2 project) configuration: --enable-gpl ... libavutil 59. 8.100 / 59. 8.100 ...如果提示
'ffmpeg' 不是内部或外部命令,说明环境变量没配好,检查一下路径是否正确。
3.2 macOS 安装
macOS 推荐用 Homebrew 安装,最简单:
brew install ffmpeg等待安装完成后验证:
ffmpeg -version3.3 Linux 安装
Ubuntu/Debian:
sudo apt update sudo apt install ffmpegCentOS/RHEL:
sudo yum install epel-release sudo yum install ffmpeg验证:
ffmpeg -version四、跑通第一条命令
安装完成后,我们来跑第一条 FFmpeg 命令。
4.1 准备一个测试视频
在桌面上新建一个文件夹,命名为ffmpeg_test。
找一个你电脑上的视频文件(MP4、MOV 都行),复制到这个文件夹里。
如果没有现成的视频,可以去网上下载一个短片,或者用手机拍一段。
4.2 查看视频信息
打开命令行,切换到测试文件夹:
cd Desktop\ffmpeg_test然后输入:
ffmpeg -i 你的视频文件名.mp4比如你的视频叫test.mp4:
ffmpeg -i test.mp4你会看到类似这样的输出:
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'test.mp4': Metadata: major_brand : isom minor_version : 512 compatible_brands: isomiso2avc1mp41 Duration: 00:01:23.45, start: 0.000000, bitrate: 5821 kb/s Stream #0:0[0x1](und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 1920x1080 [SAR 1:1 DAR 16:9], 5423 kb/s, 30 fps, 30 tbr, 15360 tbn (default) Stream #0:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 317 kb/s (default)这里面有很多信息,但你现在只需要关注这几行:
信息 | 含义 |
|---|---|
| 视频时长 1 分 23 秒 |
| 分辨率是 1920×1080(全高清) |
| 视频编码是 H.264 |
| 音频编码是 AAC |
| 帧率是 30 帧/秒 |
4.3 执行第一次转码
现在我们把刚才那个视频转成另一种格式。
把 MP4 转成 MKV:
ffmpeg -i test.mp4 output.mkv你会看到命令行滚动输出信息,等待它完成。
完成后,你会发现文件夹里多了一个output.mkv文件。
恭喜!你已经完成了第一次 FFmpeg 转码。
五、常用参数速查(这一讲先认识它们)
参数 | 作用 | 示例 |
|---|---|---|
| 指定输入文件 |
|
| 覆盖输出文件(不询问) |
|
| 不要视频(只保留音频) |
|
| 不要音频(只保留视频) |
|
| 指定处理时长(秒) |
|
| 指定起始时间 |
|
现在不用记,后面每讲都会反复用到,用几次就记住了。
六、本讲总结
知识点 | 掌握程度 |
|---|---|
FFmpeg 是什么、能干什么 | ✅ 已了解 |
容器、编码、转码的概念 | ✅ 初步了解 |
Windows 安装与环境变量配置 | ✅ 已完成 |
macOS/Linux 安装 | ✅ 已了解 |
查看视频信息 | ✅ 已实践 |
执行第一次转码 | ✅ 已实践 |
七、课后练习
找一个你电脑上的视频,用
ffmpeg -i查看它的信息,看看分辨率、时长、编码格式分别是什么把这个视频从 MP4 转成 AVI 格式(命令:
ffmpeg -i 你的视频.mp4 输出.avi)对比一下转码前后的文件大小,看看有什么变化
遇到问题可以在评论区留言,我会在 24 小时内回复。
下一讲预告: 视频格式转换——MP4 / MKV / MOV / WebM 随便转。
