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
相关推荐
星马梦缘8 小时前
如何切换window-ubuntu双系统【方案二】
linux·运维·ubuntu
WaiSaa12 小时前
Ubuntu配置Git免密操作
git·ubuntu·gitee
星马梦缘14 小时前
如何切换window-ubuntu双系统【方案一】
linux·ubuntu·双系统
老姚---老姚14 小时前
编译支持HEVC/H.265 over RTMP / Enhanced RTMP 的 ffmpeg
ffmpeg·h.265·hevc·rtmp·enhanced
醇氧18 小时前
WSL 安装 Ubuntu 完整步骤(Windows 10/11 通用,极简无脑版)
linux·windows·ubuntu
酸钠鈀21 小时前
AI M61SDK Ubuntu 环境搭建
linux·运维·ubuntu
Riu_Peter21 小时前
【技巧】如何在 Ubuntu 中安装 .deb 软件包
linux·chrome·ubuntu
HABuo1 天前
【linux(四)】套接字编程--基于UDP协议的客户端服务端
linux·服务器·c++·网络协议·ubuntu·udp·centos
_只道当时是寻常1 天前
【Codex】Ubuntu 安装 Codex CLI 并解决 Clash 代理与账号认证问题
linux·ubuntu·chatgpt
嵌入式×边缘AI:打怪升级日志1 天前
全志T113嵌入式Linux开发环境搭建(VMware + Ubuntu 18.04)详细步骤
linux·ubuntu