音视频ubuntu安装ffmpeg6.0简略笔记

该文提供了一套在Ubuntu系统上手动编译安装FFmpeg6.0的详细步骤,包括安装基础依赖、补充安装、第三方库的编译与安装,以及解决编译过程中遇到的问题,如libmp3lame的版本问题,最后还涉及到了环境变量的设置和命令行缓存的更新。
摘要由CSDN通过智能技术生成

1:安装相关基础依赖

sudo apt-get -y 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

2:补充安装

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

3:安装相关第三方库

用到汇编相关的程序  nasm
wget https://www.nasm.us/pub/nasm/releasebuilds/2.14.02/nasm-2.14.02.tar.bz2
tar jxvf nasm-2.14.02.tar.bz2
cd nasm-2.14.02
./autogen.sh
./configure --prefix="$HOME/ffmpeg6.0_build" --bindir="$HOME/ffmpeg6.0_bin"
make -j4
make install

ln -s $HOME/ffmpeg6.0_bin/nasm /usr/bin/nasm

同样汇编库  Yasm
wget -O yasm-1.3.0.tar.gz https://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
tar xzvf yasm-1.3.0.tar.gz
cd yasm-1.3.0
./configure CFLAGS="-fPIC" CPPFLAGS="-fPIC" --prefix="$HOME/ffmpeg6.0_build" --bindir="$HOME/ffmpeg6.0_bin"
make
make install

ln -s $HOME/ffmpeg6.0_bin/yasm /usr/bin/yasm 

libx264  要求编译ffmpeg时配置:--enable-gpl --enable-libx264.
cd ~/ffmpeg6.0_sources
git clone --depth 1 https://github.com/mirror/x264.git
cd x264
PKG_CONFIG_PATH="$HOME/ffmpeg6.0_build/lib/pkgconfig" ./configure --prefix="$HOME/ffmpeg6.0_build" --bindir="$HOME/ffmpeg6.0_bin" --enable-static --enable-shared --enable-pic
make
make install

libx265 要求编译ffmpeg时配置:--enable-gpl --enable-libx265
cd ~/ffmpeg6.0_sources
git clone https://gitee.com/mirrors_videolan/x265.git
cd x265/build/linux
cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX="$HOME/ffmpeg6.0_build" -D ENABLE_SHARED=on -DENABLE_PIC=on -DBIN_INSTALL_DIR="$HOME/ffmpeg6.0_bin" ../../source
make
make install

libvpx: 要求编译ffmpeg时配置: --enable-libvpx
cd ~/ffmpeg6.0_sources
git clone --depth 1 https://github.com/webmproject/libvpx.git
cd libvpx
./configure --prefix="$HOME/ffmpeg6.0_build" --disable-examples --disable-unit-tests --enable-vp9-highbitdepth --as=yasm --enable-pic --enable-shared
make
make install

libfdk-aac  要求编译ffmpeg时配置:--enable-libfdk-aac ( 如果你已经配置了 --enable-gpl则需要加上--
enable-nonfree).
cd ~/ffmpeg6.0_sources
git clone --depth 1 https://github.com/mstorsjo/fdk-aac.git
cd fdk-aac
autoreconf -fiv
./configure CFLAGS="-fPIC" CPPFLAGS="-fPIC" --prefix="$HOME/ffmpeg6.0_build" --bindir="$HOME/ffmpeg6.0_bin" 
make
make install


libmp3lame   MP3⾳频编码器.   要求编译ffmpeg时配置:--enable-libmp3lame.
cd ~/ffmpeg6.0_sources
git clone --depth 1 https://gitee.com/hqiu/lame.git
cd lame
./configure --prefix="$HOME/ffmpeg6.0_build" --bindir="$HOME/ffmpeg6.0_bin" --enable-nasm --with-pic
make
make install

libopus  Opus⾳频编解码器.     要求编译ffmpeg时配置:--enable-libopus
cd ~/ffmpeg6.0_sources
git clone --depth 1 https://github.com/xiph/opus.git
cd opus
./autogen.sh
./configure --prefix="$HOME/ffmpeg6.0_build" -with-pic
make
make install

ln -s $HOME/ffmpeg6.0_bin/lame /usr/bin/lame 

ffmpeg6.0的安装
cd ~/ffmpeg6.0_sources
git clone https://github.com/FFmpeg/FFmpeg.git
cd FFmpeg
git checkout remotes/origin/release/6.0
PKG_CONFIG_PATH="$HOME/ffmpeg6.0_build/lib/pkgconfig" ./configure  --prefix="$HOME/ffmpeg6.0_build"  --extra-libs="-lpthread -lm"  --bindir="$HOME/ffmpeg6.0_bin"  --pkg-config-flags="--static"  --extra-cflags="-I/home/ubuntu/ffmpeg6.0_build/include"  --extra-cflags="-I/home/ubuntu/ffmpeg6.0_build/include/fdk-aac"  --extra-ldflags="-L/home/ubuntu/ffmpeg6.0_build/lib"  --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

解决ERROR: libmp3lame >= 3.98.3 not found 问题 
--extra-ldflags=-L/home/ubuntu/ffmpeg6.0_build/lib


编辑和修改/etc/ld.so.conf
sudo vim /etc/ld.so.conf
增加
/home/ubuntu/ffmpeg6.0_build/lib

使环境变量生效,然后:
sudo ldconfig


添加环境变量,⽐如
sudo vim /etc/profile
然后加上
export PATH=$PATH:/home/ubuntu/ffmpeg6.0_bin
source /etc/profile

另外的指令

#使用hash -d存入缓存,下次不再查找相关系统路径,直接访问缓存
hash -d ffmpeg
ln -s /home/ubuntu/ffmpeg6.0_bin/ffmpeg /usr/bin/ffmpeg
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值