FFmpeg 安装(Linux 静态版)
简介
FFmpeg 是业界最常用的开源音视频处理工具集(转码、剪辑、推流、提取音频等)。本文采用 johnvansickle.com 提供的 静态编译版本:
- 免编译、自带依赖,解压即可用,避免了在服务器上逐项安装
libx264、libx265等编码库的麻烦。 - 适用于 amd64 架构 的 Linux(CentOS / Ubuntu / Debian 等均可用)。
- 包含
ffmpeg(处理程序)与ffprobe(媒体信息探针)两个核心可执行文件。
适用场景:服务器无 root 编译环境、希望快速部署、或不关心最新版特性、只求稳定可用的场景。
安装步骤
依次执行以下命令即可完成下载、解压、安装与软链:
bash
# 1. 下载静态编译包(需提前安装 wget,见下方「注意事项」)
wget https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz
# 2. 解压(tar.xz 用 -xf 即可,无需额外指定 -J)
tar -xf ffmpeg-release-amd64-static.tar.xz
# 3. 将解压出的目录移动到 /usr/local/ffmpeg
# 解压目录名含版本号,用通配符 * 匹配,避免写死具体版本
mv ffmpeg-*-amd64-static /usr/local/ffmpeg
# 4. 建立软链接,使 ffmpeg / ffprobe 在任意目录可直接调用
ln -sf /usr/local/ffmpeg/ffmpeg /usr/local/bin/ffmpeg
ln -sf /usr/local/ffmpeg/ffprobe /usr/local/bin/ffprobe
# 5. 验证安装
ffmpeg -version验证
执行 ffmpeg -version 应输出类似如下信息(版本号可能不同):
text
ffmpeg version 7.0.2-static https://johnvansickle.com/ffmpeg/ Copyright (c) 2000-2024 the FFmpeg developers
built with gcc 8 (Debian 8.3.0-6)
configuration: --enable-gpl --enable-version3 --enable-static --disable-debug --disable-ffplay --disable-indev=sndio --disable-outdev=sndio --cc=gcc --enable-fontconfig --enable-frei0r --enable-gnutls --enable-gmp --enable-libgme --enable-gray --enable-libaom --enable-libfribidi --enable-libass --enable-libvmaf --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librubberband --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libvorbis --enable-libopus --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libdav1d --enable-libxvid --enable-libzvbi --enable-libzimg
libavutil 59. 8.100 / 59. 8.100
libavcodec 61. 3.100 / 61. 3.100
libavformat 61. 1.100 / 61. 1.100
libavdevice 61. 1.100 / 61. 1.100
libavfilter 10. 1.100 / 10. 1.100
libswscale 8. 1.100 / 8. 1.100
libswresample 5. 1.100 / 5. 1.100
libpostproc 58. 1.100 / 58. 1.100同时可验证探针工具:
bash
ffprobe -version若能正常输出版本号,说明安装成功,ffmpeg 与 ffprobe 已加入 PATH(/usr/local/bin)。
注意事项
- 安装 wget:部分最小化系统没有
wget,先安装:- CentOS / RHEL:
yum install -y wget - Ubuntu / Debian:
apt-get install -y wget - 若更习惯
curl,可把第 1 步换成:curl -OL https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz
- CentOS / RHEL:
- 权限问题:
/usr/local通常需要写权限,若当前不是 root,请在涉及mv/ln的命令前加sudo。 - 目录名匹配:第 3 步使用
ffmpeg-*-amd64-static通配符,是因为解压后目录名形如ffmpeg-6.1.1-amd64-static,写死版本号在升级时会失效,用通配符更通用。 - 仅 amd64:该静态包只适用于 64 位 x86 架构;ARM(如树莓派、鲲鹏)请改用系统包管理器安装(如
apt install ffmpeg)或交叉编译。 - 更新版本:重新下载新包、解压并覆盖
/usr/local/ffmpeg即可,软链接无需改动。
常用示例
bash
# 视频转码(mp4 -> 转为适合 web 的 h264)
ffmpeg -i input.mp4 -c:v libx264 -c:a aac output.mp4
# 提取音频
ffmpeg -i input.mp4 -vn -c:a copy output.aac
# 查看媒体文件信息(无需解码,速度快)
ffprobe -v error -show_format -show_streams input.mp4