搞音视频开发,FFmpeg 是绕不过去的坎。不管是直播推流、视频转码、音频处理,还是搭建流媒体服务器,底层都有 FFmpeg 的身影。但很多人卡在第一步——装不上。各种依赖报错、编译失败、环境变量配不对,折腾一天还在原地。

本文手把手教你从源码编译安装 FFmpeg,覆盖 CentOSUbuntu 两大主流发行版,每个命令都有详细解释,最后还提供一键安装脚本,拿过去直接跑就行。


一、FFmpeg 是什么?

FFmpeg 是全球最强大的开源音视频处理框架,由 FFmpeg 项目团队维护,支持几乎所有的音视频格式和编码器。

一句话概括:FFmpeg 是音视频领域的"瑞士军刀",能解码、能编码、能转码、能推流、能拉流、能截图、能加水印,啥都能干。

FFmpeg 核心组件

组件

说明

ffmpeg

命令行工具,音视频转码、处理的核心程序

ffplay

简易媒体播放器,基于 SDL

ffprobe

多媒体流分析工具,查看视频信息

libavcodec

编解码库,支持 500+ 编解码器

libavformat

封装/解封装库,处理 MP4/FLV/MKV 等容器格式

libavfilter

滤镜库,加水印、缩放、去噪等

libavutil

通用工具库,哈希、数学运算、内存管理等

libswscale

图像缩放和像素格式转换库

libswresample

音频重采样库

安装方式对比

方式

优点

缺点

推荐度

源码编译

功能最全,可定制编码器

编译时间长

推荐

apt/yum 安装

简单快速

版本旧,缺少编码器

不推荐

Snap 安装

版本较新

权限受限,路径不灵活

一般

静态编译版本

免编译,开箱即用

不可定制

备选

生产环境建议用源码编译,可以启用 x264、x265、libmp3lame、libopus 等编码器,功能完整可控。

安装流程概览


二、环境准备

2.1 系统要求

项目

最低要求

推荐配置

操作系统

CentOS 7+ / Ubuntu 18.04+

CentOS 8+ / Ubuntu 22.04+

CPU

1 核

4 核+(编译加速)

内存

1 GB

4 GB+

磁盘

2 GB(编译临时空间)

10 GB+

网络

需要下载源码和依赖

2.2 检查系统版本

# 查看系统发行版 cat /etc/os-release # 查看内核版本 uname -r # 查看 CPU 核心数(编译时用来加速) nproc 

2.3 更新系统(可选但建议)

# CentOS / RHEL / Rocky Linux sudo yum update -y # Ubuntu / Debian sudo apt-get update && sudo apt-get upgrade -y 

为什么要更新? 确保系统已有的库是最新版本,避免编译时出现兼容性问题。


三、安装编译依赖

这是整个过程中最关键的一步。如果依赖没装全,后面编译一定报错。

3.1 安装基础编译工具

CentOS / RHEL / Rocky Linux:

# 安装 EPEL 仓库(Extra Packages for Enterprise Linux) # EPEL 是 Fedora 项目维护的高质量软件源,包含很多基础源没有的包 sudo yum install -y epel-release # 安装编译工具链 # gcc: C 编译器 # gcc-c++: C++ 编译器 # make: 构建工具 # cmake: 跨平台构建工具(部分库需要) # autoconf/automake/libtool: 自动化构建配置工具 # git: 版本管理,部分库需要从 GitHub 拉取 # nasm/yasm: 汇编编译器,x264 等编码器的汇编优化依赖它们 sudo yum install -y gcc gcc-c++ make cmake autoconf automake libtool git wget tar bzip2 nasm yasm pkg-config 

Ubuntu / Debian:

# 更新软件包索引 sudo apt-get update # build-essential: 包含 gcc、g++、make 等基础编译工具的元包 # nasm/yasm: 汇编编译器,提升 x264/x265 编码速度 # pkg-config: 编译时查找库的路径和编译参数的工具 sudo apt-get install -y build-essential cmake autoconf automake libtool git wget tar bzip2 nasm yasm pkg-config 

3.2 安装编解码器依赖库

这些库决定了 FFmpeg 支持哪些编码格式。缺了哪个,FFmpeg 编译时就无法启用对应的编码器。

CentOS / RHEL / Rocky Linux:

# zlib: 数据压缩库,很多格式依赖它 # bzip2: 压缩库 # openssl: 加密库,RtmpS 等协议需要 sudo yum install -y zlib-devel bzip2-devel openssl-devel # libx264: H.264 视频编码器(最常用的高质量编码器) sudo yum install -y libx264-devel # libx265: H.265/HEVC 视频编码器(更高压缩率,新一代标准) sudo yum install -y libx265-devel # lame: MP3 音频编码器(最广泛使用的音频格式) sudo yum install -y lame-devel # libass: 字幕渲染库(SSA/ASS 字幕格式) sudo yum install -y libass-devel # FreeType: 字体渲染引擎( burned-in 字幕需要) # fribidi: 双向文字排版库(阿拉伯语希伯来语等) sudo yum install -y freetype-devel fribidi-devel # libvorbis: OGG Vorbis 音频编码器(开源高品质音频格式) sudo yum install -y libvorbis-devel # libtheora: Theora 视频编码器(OGG 容器的视频编码) sudo yum install -y libtheora-devel # Opus: Opus 音频编码器(低延迟、高品质,WebRTC 推荐编码器) sudo yum install -y opus-devel 

Ubuntu / Debian:

sudo apt-get install -y \ zlib1g-dev libbz2-dev libssl-dev \ libx264-dev libx265-dev libnuma-dev \ libmp3lame-dev libass-dev \ libfreetype6-dev libfribidi-dev \ libvorbis-dev libtheora-dev \ libopus-dev 

参数说明:-dev(Ubuntu)或 -devel(CentOS)后缀的包是开发头文件和静态库,编译时需要。运行时只需要不带后缀的包。

3.3 依赖库速查表

库名

功能

对应编码器

CentOS 包名

Ubuntu 包名

x264

H.264 编码

libx264

libx264-devel

libx264-dev

x265

H.265 编码

libx265

libx265-devel

libx265-dev

lame

MP3 编码

libmp3lame

lame-devel

libmp3lame-dev

opus

Opus 编码

libopus

opus-devel

libopus-dev

vorbis

Vorbis 编码

libvorbis

libvorbis-devel

libvorbis-dev

ass

ASS 字幕

libass

libass-devel

libass-dev

freetype

字体渲染

libfreetype

freetype-devel

libfreetype6-dev


四、下载 FFmpeg 源码

4.1 选择下载方式

方式一:官网下载(推荐)

# 进入临时目录 cd /tmp # 下载指定版本的源码包 # -c: 断点续传,下载中断后可以继续 wget -c # 解压 # -x: 解压 # -j: 处理 bzip2 压缩 # -f: 指定文件 tar -xjf ffmpeg-7.1.1.tar.bz2 # 进入源码目录 cd ffmpeg-7.1.1 

方式二:Git 克隆(获取最新开发版)

# --depth 1: 只拉取最近一次提交,节省下载时间和磁盘空间 git clone --depth 1 cd ffmpeg 

建议生产环境使用稳定版本,开发版可能有未修复的 bug。可在 查看所有版本。

4.2 版本选择建议

版本

发布日期

推荐场景

7.1.x

2024

最新稳定版,功能最全

6.1.x

2023

长期支持版本,稳定性好

5.1.x

2022

老项目兼容


五、编译配置(./configure)

这是最关键的一步,决定了 FFmpeg 的功能和性能。

5.1 configure 核心参数详解

./configure \ --prefix=/usr/local/ffmpeg \ --enable-GPL \ --enable-nonfree \ --enable-shared \ --enable-pthreads \ --enable-libx264 \ --enable-libx265 \ --enable-libmp3lame \ --enable-libass \ --enable-libfreetype \ --enable-libvorbis \ --enable-libtheora \ --enable-libopus \ --enable-small \ --enable-version3 \ --extra-cflags="-I/usr/local/ffmpeg/include" \ --extra-ldflags="-L/usr/local/ffmpeg/lib" 

5.2 参数逐条解释

参数

说明

--prefix=/usr/local/ffmpeg

安装路径,所有文件会安装到这个目录下

--enable-gpl

启用 GPL 许可的组件(x264、x265 属于 GPL),必须开启

--enable-nonfree

启用非免费组件,某些编码器需要

--enable-shared

编译动态链接库(.so),其他程序可以调用 FFmpeg 的库

--enable-pthreads

启用多线程支持,利用多核 CPU 加速编解码

--enable-libx264

启用 H.264 编码器,视频转码必备

--enable-libx265

启用 H.265/HEVC 编码器,同画质体积减少约 40%

--enable-libmp3lame

启用 MP3 编码器

--enable-libass

启用 ASS/SSA 字幕渲染

--enable-libfreetype

启用 FreeType 字体引擎(字幕烧录需要)

--enable-libvorbis

启用 Vorbis 音频编码器

--enable-libtheora

启用 Theora 视频编码器

--enable-libopus

启用 Opus 音频编码器

--enable-small

优化生成文件大小,去除冗余符号表

--enable-version3

启用 (L)GPL v3 许可的组件

--extra-cflags

额外的 C 编译参数,指定头文件搜索路径

--extra-ldflags

额外的链接参数,指定库文件搜索路径

GPL 注意事项:启用 --enable-gpl 后,使用 FFmpeg 的程序也需要遵循 GPL 协议开源。如果需要闭源商用,去掉 --enable-gpl 和 --enable-libx264 等 GPL 组件。

5.3 其他常用可选参数

# 启用 NVIDIA GPU 硬件加速(需要安装 NVIDIA 驱动和 CUDA) --enable-cuda-nvcc --enable-cuvid --enable-nvenc # 启用 Intel QSV 硬件加速 --enable-libmfx # 启用 VAAPI(Linux 通用硬件加速) --enable-vaapi # 禁用不需要的功能,减小体积 --disable-doc # 不生成文档 --disable-htmlpages # 不生成 HTML 文档 --disable-manpages # 不生成 man 手册 --disable-podpages # 不生成 POD 文档 --disable-txtpages # 不生成文本文档 # 编译优化 --enable-optimizations # 启用编译器优化 --enable-stripping # 去除调试符号 

六、编译与安装

6.1 编译

# 使用多核编译,大幅缩短时间 # $(nproc) 会自动获取 CPU 核心数 # 例如 4 核 CPU 就相当于 make -j4,同时运行 4 个编译任务 make -j$(nproc) 

编译时间参考:4 核 CPU 约 10-15 分钟,单核约 30-60 分钟。

6.2 安装

# 将编译好的文件安装到 --prefix 指定的目录 # 包括可执行文件、头文件、动态库、pkg-config 文件等 sudo make install 

安装后的目录结构:

/usr/local/ffmpeg/ ├── bin/ │ ├── ffmpeg # 主程序 │ ├── ffplay # 播放器 │ └── ffprobe # 分析工具 ├── include/ # 头文件(开发用) │ └── libavcodec/ │ └── libavformat/ │ └── ... ├── lib/ # 动态链接库 │ ├── libavcodec.so │ ├── libavformat.so │ └── ... ├── lib64/ # 64位库 └── share/ └── ffmpeg/ # 预设文件 

七、配置环境变量

安装完成后,需要让系统能找到 FFmpeg 的可执行文件和动态库。

7.1 配置动态链接库路径

# 将 FFmpeg 库路径写入 ld 配置 # ldconfig 会读取这个文件,把 /usr/local/ffmpeg/lib 加入动态链接器的搜索路径 # 这样其他程序运行时就能找到 libavcodec.so 等库文件 echo "/usr/local/ffmpeg/lib" | sudo tee /etc/ld.so.conf.d/ffmpeg.conf # 刷新动态链接库缓存 # -v: 显示详细过程,可以看到新添加的库被识别 sudo ldconfig -v 

为什么要配 ldconfig? 如果不配,运行 ffmpeg 时会报 error while loading shared libraries: libavcodec.so 这样的错误。

7.2 配置 PATH 环境变量

方式一:写入系统 profile(推荐,所有用户生效)

# 创建环境变量脚本到 profile.d 目录 # 系统启动时会自动执行这个目录下的 .sh 文件 sudo tee /etc/profile.d/ffmpeg.sh << 'EOF' export FFMPEG_HOME=/usr/local/ffmpeg export PATH=$FFMPEG_HOME/bin:$PATH EOF # 立即生效 source /etc/profile.d/ffmpeg.sh 

方式二:写入用户 ~/.bashrc(仅当前用户)

echo 'export FFMPEG_HOME=/usr/local/ffmpeg' >> ~/.bashrc echo 'export PATH=$FFMPEG_HOME/bin:$PATH' >> ~/.bashrc source ~/.bashrc 

两种方式的区别:/etc/profile.d/ 对所有用户生效,~/.bashrc 只对当前用户生效。服务器环境推荐用方式一。


八、验证安装

8.1 基础验证

# 查看 FFmpeg 版本和编译配置 ffmpeg -version 

预期输出类似:

ffmpeg version 7.1.1 Copyright (c) 2000-2024 the FFmpeg developers built with gcc 8.5.0 (GCC) configuration: --prefix=/usr/local/ffmpeg --enable-gpl --enable-nonfree --enable-shared ... 

8.2 查看支持的编码器

# 查看所有可用的编码器 # -encoders: 列出所有编码器 ffmpeg -encoders # 查看是否支持 H.264 编码 ffmpeg -encoders | grep x264 # 查看是否支持 H.265 编码 ffmpeg -encoders | grep x265 # 查看是否支持 MP3 编码 ffmpeg -encoders | grep mp3lame # 查看是否支持 Opus 编码 ffmpeg -encoders | grep opus 

8.3 查看支持的解码器

ffmpeg -decoders | grep h264 

8.4 查看支持的容器格式

ffmpeg -formats | grep mp4 

九、快速测试:第一个转码命令

# 基础转码:将 input.avi 转为 output.mp4 # -i input.avi: 指定输入文件 # -c:v libx264: 视频使用 H.264 编码 # -c:a aac: 音频使用 AAC 编码 # output.mp4: 输出文件 ffmpeg -i input.avi -c:v libx264 -c:a aac output.mp4 # 查看视频信息 ffprobe -v quiet -print_format json -show_streams output.mp4 # 从视频中截取一张图片(第 5 秒) # -ss 5: 跳转到第 5 秒 # -frames:v 1: 只取一帧 ffmpeg -i input.mp4 -ss 5 -frames:v 1 thumbnail.jpg # 提取视频中的音频 # -vn: 不处理视频 # -acodec libmp3lame: 使用 MP3 编码 ffmpeg -i input.mp4 -vn -acodec libmp3lame output.mp3 

十、一键安装脚本

不想一步步操作?直接用一键脚本:

# 下载脚本(假设你已将脚本上传到服务器) # 或者直接复制上面的 ffmpeg-install.sh 内容到服务器 # 赋予执行权限 chmod +x ffmpeg-install.sh # 以 root 权限执行 sudo bash ffmpeg-install.sh 

脚本功能说明

功能

说明

系统检测

自动识别 CentOS/Ubuntu/Debian,安装对应依赖

源码下载

自动下载 FFmpeg 7.1.1 稳定版,支持断点续传

编译配置

预置常用编码器(x264/x265/mp3lame/opus/vorbis/ass)

多核编译

自动检测 CPU 核心数,并行编译加速

环境配置

自动配置 ldconfig 和 PATH 环境变量

安装验证

编译完成后自动验证,失败则提示查看日志

日志记录

全程记录到 /tmp/ffmpeg-install.log,方便排错

临时清理

安装完成后自动清理源码和压缩包


十一、常见问题与解决方案

问题 1:yasm/nasm not found

# CentOS sudo yum install -y nasm yasm # Ubuntu sudo apt-get install -y nasm yasm 

问题 2:ERROR: libx264 not found

# 原因:x264 开发包没装或路径不对 # CentOS sudo yum install -y libx264-devel # Ubuntu sudo apt-get install -y libx264-dev # 如果系统源没有,可以从源码编译 x264 cd /tmp git clone --depth 1 cd x264 ./configure --prefix=/usr/local --enable-shared --enable-static make -j$(nproc) && sudo make install sudo ldconfig 

问题 3:error while loading shared libraries: libavcodec.so

# 原因:动态库路径没配或没生效 echo "/usr/local/ffmpeg/lib" | sudo tee /etc/ld.so.conf.d/ffmpeg.conf sudo ldconfig # 验证库是否能被找到 ldconfig -p | grep libavcodec 

问题 4:ffmpeg: command not found

# 原因:PATH 没配或没生效 source /etc/profile.d/ffmpeg.sh # 或者直接用绝对路径 /usr/local/ffmpeg/bin/ffmpeg -version 

问题 5:编译时间太长

# 查看核心数 nproc # 使用更多核心编译 make -j8 # 8核 # 如果内存不够,减少并行数 make -j2 # 只用2核 

问题 6:CentOS 7 的 GCC 版本太旧

# CentOS 7 默认 GCC 4.8,FFmpeg 新版本需要 GCC 6+ # 安装 devtoolset-8(GCC 8) sudo yum install -y centos-release-scl sudo yum install -y devtoolset-8 # 临时启用(仅当前终端生效) scl enable devtoolset-8 bash # 验证 gcc --version 

十二、卸载 FFmpeg

如果需要卸载源码编译的 FFmpeg:

# 进入源码目录(需要保留或重新解压) cd /tmp/ffmpeg-7.1.1 # 执行卸载 sudo make uninstall # 清理环境变量 sudo rm /etc/profile.d/ffmpeg.sh sudo rm /etc/ld.so.conf.d/ffmpeg.conf sudo ldconfig # 清理安装目录 sudo rm -rf /usr/local/ffmpeg 

十三、总结

步骤

命令

耗时

安装依赖

yum install


/


apt-get install

2-5 分钟

下载源码

wget

1-3 分钟

编译配置

./configure

1-2 分钟

编译

make -j$(nproc)

10-30 分钟

安装

make install

1 分钟

配置环境

ldconfig


+


export

1 分钟

合计

15-40 分钟

关键点回顾

  1. 依赖要装全 — 缺了哪个库,对应的编码器就用不了
  2. configure 参数要对 — --enable-gpl 是启用 x264/x265 的前提
  3. ldconfig 不能忘 — 否则运行时报找不到动态库
  4. 多核编译提速 — make -j$(nproc) 比单核快好几倍
  5. 用一键脚本省事 — 脚本做了错误处理和日志记录,比手动操作更稳

ffmpeg-install.sh

#!/bin/bash # # FFmpeg 一键编译安装脚本 # 支持 CentOS 7/8/9、Ubuntu 18.04/20.04/22.04/24.04、Debian 10/11/12 # 使用方法: sudo bash ffmpeg-install.sh # set -e FFMPEG_VERSION="7.1.1" INSTALL_PREFIX="/usr/local/ffmpeg" LOG_FILE="/tmp/ffmpeg-install.log" THREADS=$(nproc) RED='\033[0;31m' GREEN='\033[0;32m' YELLOW='\033[1;33m' BLUE='\033[0;34m' NC='\033[0m' log_info() { echo -e "${GREEN}[INFO]${NC} $1"; } log_warn() { echo -e "${YELLOW}[WARN]${NC} $1"; } log_error() { echo -e "${RED}[ERROR]${NC} $1"; } log_step() { echo -e "\n${BLUE}=====> $1${NC}\n"; } check_root() { if [ "$EUID" -ne 0 ]; then log_error "请使用 root 用户或 sudo 执行此脚本" exit 1 fi } detect_os() { if [ -f /etc/os-release ]; then . /etc/os-release OS=$ID VERSION=$VERSION_ID elif [ -f /etc/redhat-release ]; then OS="centos" VERSION=$(rpm -q --queryformat '%{VERSION}' centos-release 2>/dev/null || echo "7") else log_error "无法检测操作系统版本" exit 1 fi log_info "检测到操作系统: $OS $VERSION" } install_dependencies_centos() { log_step "安装 CentOS/RHEL 系统依赖" yum install -y epel-release >> $LOG_FILE 2>&1 yum install -y \ gcc gcc-c++ make cmake autoconf automake libtool \ git wget tar bzip2 nasm yasm \ libtool pkg-config \ zlib-devel bzip2-devel openssl-devel \ libx264-devel libx265-devel \ lame-devel libass-devel \ freetype-devel fribidi-devel \ libvorbis-devel libtheora-devel \ opus-devel >> $LOG_FILE 2>&1 log_info "CentOS/RHEL 依赖安装完成" } install_dependencies_ubuntu() { log_step "安装 Ubuntu/Debian 系统依赖" apt-get update >> $LOG_FILE 2>&1 apt-get install -y \ build-essential cmake autoconf automake libtool \ git wget tar bzip2 nasm yasm \ pkg-config \ zlib1g-dev libbz2-dev libssl-dev \ libx264-dev libx265-dev libnuma-dev \ libmp3lame-dev libass-dev \ libfreetype6-dev libfribidi-dev \ libvorbis-dev libtheora-dev \ libopus-dev >> $LOG_FILE 2>&1 log_info "Ubuntu/Debian 依赖安装完成" } install_dependencies() { detect_os case $OS in centos|rhel|rocky|almalinux) install_dependencies_centos ;; ubuntu|debian|linuxmint) install_dependencies_ubuntu ;; *) log_error "不支持的操作系统: $OS" exit 1 ;; esac } download_ffmpeg() { log_step "下载 FFmpeg $FFMPEG_VERSION 源码" cd /tmp if [ -d "ffmpeg-$FFMPEG_VERSION" ]; then log_warn "检测到已存在的源码目录,跳过下载" return fi local url="" log_info "下载地址: $url" wget -c "$url" -O "ffmpeg-${FFMPEG_VERSION}.tar.bz2" >> $LOG_FILE 2>&1 tar -xjf "ffmpeg-${FFMPEG_VERSION}.tar.bz2" >> $LOG_FILE 2>&1 log_info "FFmpeg 源码下载并解压完成" } configure_ffmpeg() { log_step "配置 FFmpeg 编译选项" cd "/tmp/ffmpeg-$FFMPEG_VERSION" ./configure \ --prefix="$INSTALL_PREFIX" \ --enable-gpl \ --enable-nonfree \ --enable-shared \ --enable-pthreads \ --enable-libx264 \ --enable-libx265 \ --enable-libmp3lame \ --enable-libass \ --enable-libfreetype \ --enable-libvorbis \ --enable-libtheora \ --enable-libopus \ --enable-small \ --enable-version3 \ --extra-cflags="-I${INSTALL_PREFIX}/include" \ --extra-ldflags="-L${INSTALL_PREFIX}/lib" >> $LOG_FILE 2>&1 log_info "配置完成" } build_ffmpeg() { log_step "编译 FFmpeg (使用 $THREADS 线程)" cd "/tmp/ffmpeg-$FFMPEG_VERSION" make -j"$THREADS" >> $LOG_FILE 2>&1 log_info "编译完成" } install_ffmpeg() { log_step "安装 FFmpeg" cd "/tmp/ffmpeg-$FFMPEG_VERSION" make install >> $LOG_FILE 2>&1 log_info "安装完成" } configure_environment() { log_step "配置环境变量" echo "$INSTALL_PREFIX/lib" > /etc/ld.so.conf.d/ffmpeg.conf ldconfig >> $LOG_FILE 2>&1 if ! grep -q "FFMPEG_HOME" /etc/profile.d/ffmpeg.sh 2>/dev/null; then cat > /etc/profile.d/ffmpeg.sh << 'ENVEOF' export FFMPEG_HOME=/usr/local/ffmpeg export PATH=$FFMPEG_HOME/bin:$PATH ENVEOF chmod +x /etc/profile.d/ffmpeg.sh fi source /etc/profile.d/ffmpeg.sh 2>/dev/null || true log_info "环境变量配置完成" } verify_installation() { log_step "验证安装结果" if "$INSTALL_PREFIX/bin/ffmpeg" -version >> $LOG_FILE 2>&1; then echo "" "$INSTALL_PREFIX/bin/ffmpeg" -version | head -3 echo "" log_info "FFmpeg 安装成功!" else log_error "FFmpeg 安装验证失败,请检查 $LOG_FILE" exit 1 fi } cleanup() { log_step "清理临时文件" rm -rf "/tmp/ffmpeg-${FFMPEG_VERSION}" "/tmp/ffmpeg-${FFMPEG_VERSION}.tar.bz2" log_info "清理完成" } print_summary() { echo "" echo -e "${GREEN}========================================${NC}" echo -e "${GREEN} FFmpeg 安装完成!${NC}" echo -e "${GREEN}========================================${NC}" echo -e " 安装路径: ${YELLOW}$INSTALL_PREFIX${NC}" echo -e " FFmpeg版本: ${YELLOW}$FFMPEG_VERSION${NC}" echo -e " 编码器支持: ${YELLOW}x264 / x265 / mp3lame / opus / vorbis${NC}" echo "" echo -e " ${BLUE}使用方法:${NC}" echo -e " source /etc/profile.d/ffmpeg.sh # 加载环境变量" echo -e " ffmpeg -version # 查看版本" echo -e " ffmpeg -i input.mp4 -c:v libx264 output.mp4 # 转码示例" echo "" echo -e " ${BLUE}日志文件: ${YELLOW}$LOG_FILE${NC}" echo "" } main() { echo -e "${BLUE}" echo " ╔═══════════════════════════════════════╗" echo " ║ FFmpeg 一键编译安装脚本 ║" echo " ║ 版本: $FFMPEG_VERSION ║" echo " ╚═══════════════════════════════════════╝" echo -e "${NC}" check_root install_dependencies download_ffmpeg configure_ffmpeg build_ffmpeg install_ffmpeg configure_environment verify_installation cleanup print_summary } main "$@"
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。