以下预装版本是ffmpeg4.2.11!!!!!
1、安装yasm:
wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
tar xvzf yasm-1.3.0.tar.gz
cd yasm-1.3.0
./configure
make
make install
yasm --version
2、安装nasm(2.13以上版本)
wget https://www.nasm.us/pub/nasm/releasebuilds/2.14.02/nasm-2.14.02.tar.bz2
tar xvf nasm-2.14.02.tar.bz2
cd nasm-2.14.02
./configure
make
make install
nasm --version
3、安装其他依赖(如果自己安装了就不用安装了)
检查是否安装(如果安装了会有输出)
cmake --version
未安装:
apt install cmake -y
4、编译x264(只编译静态库)
x264下载地址:
http://ftp.videolan.org/pub/videolan/x264/snapshots/
选择好下载的版本后,可以离线下载好,也可以wget在线下载,下方的命令需要对应你安装的文件名:
wget http://ftp.videolan.org/pub/videolan/x264/snapshots/x264-snapshot-20191024-2245-stable.tar.bz2
tar xvf x264-snapshot-20191024-2245-stable.tar.bz2
cd x264-snapshot-20191024-2245-stable
./configure --enable-static --prefix=../x264 --enable-pic
make -j16
make install
4、验证
x264 --version
看到输出版本号代表安装成功
5、编译安装ffmpeg
ffmpeg下载地址:Download FFmpeg
1、解压
tar -zxvf ffmpeg-4.2.tar.gz
2、配置(记得修改输出路径)
./configure --enable-shared --enable-swscale --enable-gpl --enable-nonfree --enable-pic --prefix=/home/nvidia/ffmpeg --enable-version3 --enable-postproc --enable-pthreads --enable-static --enable-libx264
3、编译&安装
make -j8 && sudo make install
4、配置环境变量(永久配置)
vim ~/.bashrc
# 将下面内容写入,路径按照2、配置中prefix的绝对路径填写
export PATH=/home/nvidia/ffmpeg/bin:$PATH
export LD_LIBRARY_PATH=/home/nvidia/ffmpeg/lib/
# 刷新配置
source ~/.bashrc
5、验证
ffmpeg --version
出现配置信息即安装成功
(py38) nvidia@xl:~$ ffmpeg
ffmpeg version 2ec7f8e Copyright (c) 2000-2025 the FFmpeg developers
built with gcc 9 (Ubuntu 9.4.0-1ubuntu1~20.04.2)
configuration: --enable-shared --enable-swscale --enable-gpl --enable-nonfree --enable-pic --prefix=/home/nvidia/ffmpeg --enable-version3 --enable-postproc --enable-pthreads --enable-static --enable-libx264
libavutil 56. 70.100 / 56. 70.100
libavcodec 58.134.100 / 58.134.100
libavformat 58. 76.100 / 58. 76.100
libavdevice 58. 13.100 / 58. 13.100
libavfilter 7.110.100 / 7.110.100
libswscale 5. 9.100 / 5. 9.100
libswresample 3. 9.100 / 3. 9.100
libpostproc 55. 9.100 / 55. 9.100
Hyper fast Audio and Video encoder
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...
Use -h to get full help or, even better, run 'man ffmpeg'
6、编译安装jetson-ffmpeg
1、编译与安装库
git clone https://github.com/Keylost/jetson-ffmpeg.git
如果因为网络原因无法clone,则离线下载后拷贝过来
(https://github.com/Keylost/jetson-ffmpeg/archive/refs/heads/master.zip)
cd jetson-ffmpeg
mkdir build
cd build
cmake ..
make
sudo make install
sudo ldconfig
2、打补丁并构建ffmpeg
git clone https://gitee.com/mirrors/ffmpeg.git -b release/4.2 --depth=1
(如果clone缓慢,直接用上面下载好的ffmpeg源码包,版本需一致)
3、获取与系统相匹配的补丁
拷贝ffmpeg_patches文件夹下的ffmpeg4.2_nvmpi.patch补丁文件到ffmpeg源码包内
4、应用对应ffmpeg版本的补丁
cd ffmpeg
git apply ../ffmpeg4.2_nvmpi.patch
####---------------------------------------------------------#####
#如果应用不成功,jetson-ffmpeg项目提供了一个自动补丁脚本,可以避免手动操作:
# 回到 jetson-ffmpeg 根目录
cd ~/Downloads/jetsonffmpeg/jetson-ffmpeg
chmod +x ffpatch.sh
# 使用补丁脚本(会自动处理路径问题)
./ffpatch.sh ./build/ffmpeg
返回以下代表应用补丁成功:
./build/ffmpeg/configure is successfully patched!
./build/ffmpeg/libavcodec/Makefile is successfully patched!
./build/ffmpeg/libavcodec/allcodecs.c is successfully patched!
Success!
####---------------------------------------------------------#####
5、进入 FFmpeg 源码目录
cd ./build/ffmpeg
6、配置文件(记得修改输出路径)
./configure \
--enable-shared \
--enable-swscale \
--enable-gpl \
--enable-nonfree \
--enable-pic \
--prefix=../jetsonffmpeg \
--enable-version3 \
--enable-postproc \
--enable-pthreads \
--enable-static \
--enable-libx264 \
--enable-nvmpi
7、编译及安装
make -j$(nproc)
sudo make install
8、配置环境变量(永久配置)
vim ~/.bashrc
#将下面内容写入,路径按照改成install后生成的jetsonffmpeg的绝对路径填写
export PATH=/home/nvidia/ffmpeg/bin:$PATH
export LD_LIBRARY_PATH=/home/nvidia/ffmpeg/lib/
#刷新配置
source ~/.bashrc
#更新动态链接库缓存
sudo ldconfig
8、验证
ffmpeg -version