FFmpeg&Linux开发环境开荒

前言

各位朋友,在上一篇中我们完成了 Mac 平台上 FFmpeg 的编译安装,这一节我们分享 Linux 上的 FFmpeg 编译安装(以 Ubuntu 为例),如果需要其他发行版的文档可以私信我。

为了方便后续的实战代码编写,我们会保证不同平台上安装目录的名字一样。

老规矩,代码传送门在文末!

安装依赖

安装ffmpeg需要使用到一些编译工具以及一些第三方库,需要通过命令安装。

# 更新
sudo apt update
sudo apt upgrage

# 安装需要的组件
sudo apt install \
autoconf \
automake \
build-essential \
cmake \
git-core \
libass-dev \
libfreetype6-dev \
libsdl2-dev \
libtool \
libva-dev \
libvdpau-dev \
libvorbis-dev \
libxcb1-dev \
libxcb-shm0-dev \
libxcb-xfixes0-dev \
pkg-config \
texinfo \
wget \
zlib1g-dev

sudo apt-get install libasound2-dev
sudo apt-get install libgl1-mesa-dev
sudo apt-get install libglew-dev
sudo apt-get install libglm-dev
sudo apt-get install mercurial libnuma-dev

sudo apt install nasm \
yasm \
libx264-dev \
libx265-dev \
libvpx-dev \
libfdk-aac-dev \
libmp3lame-dev \
libopus-dev 

FFmpeg 编译安装

下载 FFmpeg4.2 版本

cd ~/Downloads
# 克隆源码
git clone https://gitee.com/mirrors/ffmpeg.git
cd ffmpeg
# 选择4.2版本
git checkout remotes/origin/release/4.2

配置编译选项

./configure \
--prefix="$HOME/ffmpeg_build" \
--extra-libs="-lpthread -lm" \
--pkg-config-flags="--static" \
--enable-gpl \
--enable-libass \
--enable-libfreetype \
--enable-libvorbis \
--enable-pic \
--enable-shared \
--enable-static \
--enable-nonfree \
--enable-libx264 \
--enable-libx265 \
--enable-libvpx \
--enable-libfdk-aac \
--enable-libmp3lame \
--enable-libopus \
--enable-sdl2 \
--enable-ffplay \
--disable-optimizations \
--disable-stripping \
--enable-debug=3

这里没有做编译优化,目的是学习过程中方便debug

配置完之后如下如:

开始编译:

make -j32
make install

安装好后效果如下:

添加环境变量

我们没有安装到系统目录,而是自己指定了安装目录,我们现在需要把 可执行文件添加到环境变量。

修改 ~/.bashrc添加内容如下:

export PATH="$HOME/ffmpeg_build/bin:$PATH"
export LD_LIBRARY_PATH="$HOME/ffmpeg_build/lib:$LD_LIBRARY_PATH"
export PATH="$HOME/ffmpeg_build/include:$PATH"

立刻生效运行下面的语句,或者重新开一个终端:

source ~/.bashrc

简单测试

ffplay -version

安装 QT

在这里安装 QT 主要是为了后续开发音视频播放器,其实 FFmpeg 就已经安装完成了。

首先从下载地址下载对应的 QT 在线安装包,从 QT6 开始 QT 就没有离线安装包了。但是在线安装包需要特殊网络环境,所以我们这里依然采用镜像源安装的方法。

下载完后从终端进入目录,运行安装文件并附加参数:

./qt-online-installer-linux-x64-online.run --mirror https://mirrors.ustc.edu.cn/qtproject

进入后下一步指导这个界面(没有账号的可能需要注册一下)

然后就是一路点击下一步直到下载安装完成。

Hello FFmpeg

下面我们来编写一个小程序,检测 FFmpeg 的安装。

朋友们,这里就看个人喜好,用自己喜欢的编辑器就可以,源代码我会放在文章结尾,大家可以自行下载。

我这里默认使用本文的安装目录,所以请做好以上前置步骤哦。

代码传送门
参考资料:https://github.com/0voice

Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐