Ubuntu22.04.3LTS源码编译安装ffmpeg6.x

1.官网ffmpeg下载源码 https://ffmpeg.org/download.html#build-windows

安装 libx264 开发库(一个开源的视频压缩库,用于编码视频流为 H.264/MPEG-4 AVC 视频格式)。这是编译 FFmpeg 时如果要支持 H.264 编码必须的。

bash 复制代码
sudo apt install libx264-dev

安装编译工具(如 gcc 和 g++ 等)和一些必需的程序(如 make)。这是编译大多数从源代码构建的软件所必需的。

bash 复制代码
sudo apt install build-essential

一次性安装多个开发库:

bash 复制代码
sudo apt install libx264-dev libx265-dev libaom-dev libvorbis-dev libmp3lame-dev libfdk-aac-dev libass-dev

libx265-dev:提供对 H.265/HEVC 视频编码的支持。

libaom-dev:提供对 AV1 视频编码的支持。

libvorbis-dev:提供对 Vorbis 音频编码的支持。

libmp3lame-dev:提供对 MP3 音频编码的支持。

libfdk-aac-dev:提供对 AAC 音频编码的支持。

libass-dev:提供对字幕的支持。

安装 NASM,一个汇编语言编译器,某些库可能需要通过汇编代码来编译。

bash 复制代码
sudo apt install nasm

编译 FFmpeg

./configure 命令及其参数

这是配置编译选项的命令。它指定了 FFmpeg 要安装到的位置(--prefix=/usr/loacl/ffmpeg6.0),启用了 GPL 许可下的功能(--enable-gpl)。启用了多个库的支持,包括 libx264, libx265, libaom(视频编码库),libvorbis, libmp3lame, libfdk-aac(音频编码库),libass(字幕支持),并启用了 non-free 非免费库 --enable-nonfree(例如 libfdk-aac)。--extra-cflags 和 --extra-ldflags 是编译和链接时的额外选项。

bash 复制代码
./configure --prefix=/usr/local/ffmpeg6.0 --enable-gpl --enable-libx264 --enable-libx265 --enable-libaom --enable-libvorbis --enable-libmp3lame --enable-libfdk-aac --enable-libass --enable-nonfree --extra-cflags="-I/usr/include" --extra-ldflags="-L/usr/local/lib -lx264"

编译源代码。这一步会根据前面 ./configure 命令配置的选项编译 FFmpeg,可能会花费一些时间。

bash 复制代码
make

将编译好的 FFmpeg 程序安装到之前 ./configure 中指定的目录(/usr/loacl/ffmpeg6.0)。这需要超级用户权限,因为这个操作会向系统级别的目录写入数据。

bash 复制代码
sudo make install

将 /usr/local/ffmpeg6.0/bin 添加到 PATH 环境变量中,可以执行以下命令:

bash 复制代码
export PATH="/usr/local/ffmpeg6.0/bin:$PATH"

查看版本

bash 复制代码
ffmpeg -version
相关推荐
allnlei3 小时前
Opus In-Band FEC 详解:原理、实现与开源方案
ffmpeg·音视频·gstreamer
贵沫末4 小时前
Ubuntu——常用软件安装
linux·运维·ubuntu
阿钱真强道7 小时前
15 嵌入式操作系统 | 库的下载、编译、安装与验证(libubox / ubus / uci)
ubuntu·cmake·uci·ubus·libubox
云杂项9 小时前
tmux指南:安装、配置与高效使用(Ubuntu上)
linux·服务器·ubuntu
艸肅9 小时前
Ubuntu 安装 JDK (含手动安装)
java·ubuntu·jdk
zhangrelay14 小时前
ROS2 Lyrical实验5导航Nav2
linux·笔记·学习·ubuntu·机器人
VidDown15 小时前
从一堆脚本到能维护的系统:视频处理管道的工程化
服务器·ffmpeg·音视频·视频编解码
编码如写诗17 小时前
【k8s】全新Ubuntu 26.04 使用kt 超简单安装 k8s 最新1.37.1+KubeSphere4.1.3
ubuntu·容器·kubernetes
牢姐与蒯18 小时前
Linux信号(二).信号产生续 && 信号保存
linux·运维·服务器·ubuntu
阿钱真强道1 天前
22 嵌入式操作系统 | 串口命令行调试(socat / stty / printf / hexdump)
ubuntu·cmake·uci·ubus·libubox