在Linux上安装FFmpeg的步骤和一些报错的解决

本文详细指导如何在Linux系统上编译安装FFmpeg,包括下载源码、配置选项、处理编译时遇到的nasm/yasm等库缺失问题,确保最终成功安装并验证其功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

编译安装

建议各位跟这个教程之前先卸载安装失败的FFmpeg。再创建一个安装目录,之后将所有配置都安装到此目录下:

sudo mkdir -p /usr/local/ffmpeg/lib

1.下载ffmpeg源码

#下载源码
http://ffmpeg.org/download.html
#解压源码//版本替换为你所下载的版本
tar -jxf ffmpeg-4.3.2.tar.bz2
#配置ffmpeg 
#注意!!1.此步骤将重复多次,之后提到的配置ffmpeg都是这段代码,并不再赘述。2.是直接使用整段
#3. 配置ffmepg的过程是在解压后的ffmpeg文件夹中进行,并非安装目录中
./configure --prefix="/usr/local/ffmpeg/" \
--enable-gpl \
--enable-nonfree \
--enable-ffplay \
--enable-libfdk-aac \
--enable-libmp3lame \
--enable-libx264 \
--enable-libx265 \
--enable-filter=delogo \
--enable-debug \
--disable-optimizations \
--enable-libspeex \
--enable-shared \
--enable-pthreads \
--enable-version3 \
--enable-hardcoded-tables \
--extra-ldflags=-L/usr/local/ffmpeg/lib

报错:nasm/yasm not found or too old:

sudo apt-get install yasm

在官网下载源码:http://www.tortall.net/projects/yasm/releases/
依次执行如下命令安装:

tar zxvf yasm-1.3.0.tar.gz
cd yasm-1.3.0
./configure
make
sudo make install

再次运行配置ffmpeg,报错:libfdk_aac not found
下载fdk_aac源码:链接

在解压后的fdk_aac文件夹中依次执行如下命令进行配置安装:

./configure --prefix=/usr/local/ffmpeg/ --enable-shared
make -j8
sudo make install

解压后的ffmpeg文件夹中修改环境变量:

export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/ffmpeg/lib/pkgconfig/

再次运行配置ffmpeg,报错:libmp3lame >=3.98.3 not found
下载源码:链接
在解压后的lame-3.100文件夹中依次执行如下命令进行配置安装:

./configure --prefix=/usr/local/ffmpeg/ --enable-shared
make -j8
sudo make install

再次运行配置ffmpeg,报错:speex not found
下载源码:链接
在解压后的speex文件夹中依次执行如下命令进行配置安装:

./configure --prefix=/usr/local/ffmpeg
sudo make -j8
sudo make install

再次运行配置ffmpeg,报错:libx264 not found
下载源码:链接
在解压后的libx264文件夹中依次执行如下命令进行配置安装:

./configure --prefix=/usr/local/ffmpeg/ --enable-shared --disable-asm
sudo make -j8
sudo make install

再次运行配置ffmpeg,报错:libx265 not found
下载源码:链接
在解压后的libx265文件夹中依次执行如下命令进行配置安装:

cd build/linux
sudo apt-get install cmake
./make-Makefiles.bash
sudo make -j8
sudo make install

2.安装SDL

ffplay依赖于SDL,因此,需要安装SDL
下载源码:链接
在解压后的libx265文件夹中依次执行如下命令进行配置安装:

./configure --prefix=/usr/local/ffmpeg/ --enable-shared
sudo make -j8
sudo make install

再次运行配置ffmpeg,显示如下结果证明安装成功:
在这里插入图片描述
再运行如下指令,对ffmpeg进行安装编译:

sudo make -j8
sudo make install

在/usr/local/ffmpeg/bin文件夹中可以看到如下应用程序:
在这里插入图片描述

3.验证安装是否成功

在终端run:

ffmpeg

显示:
在这里插入图片描述
在一个有视频文件的目录下,使用ffplay播放视频:

ffplay test.mp4

若**报错:no available video device**
依次输入以下指令:

sudo apt-get install libasound2-dev
sudo apt-get install libpulse-dev
sudo apt-get install libx11-dev
sudo apt-get install xorg-dev

重新编译安装SDL

./configure --prefix=/usr/local/ffmpeg/ --enable-shared --enable-video-x11 --enable-x11-shared --enable-video-x11-vm
make -j8
sudo make install

重新编译安装FFmpeg

./configure --prefix="/usr/local/ffmpeg/" \
--enable-gpl \
--enable-nonfree \
--enable-ffplay \
--enable-libfdk-aac \
--enable-libmp3lame \
--enable-libx264 \
--enable-libx265 \
--enable-filter=delogo \
--enable-debug \
--disable-optimizations \
--enable-libspeex \
--enable-shared \
--enable-pthreads \
--enable-version3 \
--enable-hardcoded-tables \
--extra-ldflags=-L/usr/local/ffmpeg/lib



make -j8

sudo make install

再在一个有视频文件的目录下,使用ffplay播放视频:

ffplay test.mp4

便可以播放视频啦!
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值