#安装ffmpeg aac libx264 libx265
#进入家目录创建ffmpeg_install文件夹
cd ~
mkdir ffmpeg_install
cd ffmpeg_install
#安装依赖
sudo apt-get install autoconf automake build-essential libass-dev libfreetype6-dev \
libsdl1.2-dev libtheora-dev libtool libva-dev libvdpau-dev libvorbis-dev \
libxcb1-dev libxcb-shm0-dev libxcb-xfixes0-dev pkg-config texinfo wget zlib1g-dev cmake
#安装nasm2.14 以上版本
wget https://www.nasm.us/pub/nasm/releasebuilds/2.14/nasm-2.14.tar.bz2
tar xjvf nasm-2.14.tar.bz2
cd nasm-2.14
./autogen.sh
PATH="$HOME/bin:$PATH" ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin"
make
make install
make distclean
#把nasm加入环境变量
export PATH="$HOME/bin:$PATH" >> ~/.bashrc
source ~/.bashrc
#验证nasm是否安装成功
nasm -v
#安装libx264
#回到ffmpeg_install文件夹
cd ~/ffmpeg_install
git clone http://git.videolan.org/git/x264.git #如果下载失败请更换地址
cd x264
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --enable-static --enable-shared --enable-pic --enable-strip --enable-lto
make
make install
make distclean
#安装fdk-aac
#回到ffmpeg_install文件夹
cd ~/ffmpeg_install
wget http://downloads.sourceforge.net/opencore-amr/fdk-aac-2.0.1.tar.gz
tar xzvf fdk-aac-2.0.1.tar.gz
cd fdk-aac-2.0.1
./configure --prefix="$HOME/ffmpeg_build" --enable-shared --enable-pic --enable-strip --enable-lto
make
make install
make distclean #清理编译文件 make distclean和make clean的区别是make distclean会删除configure生成的文件,而make clean只是删除编译生成的文件
#安装x265
#回到ffmpeg_install文件夹
cd ~/ffmpeg_install
wget http://anduin.linuxfromscratch.org/BLFS/x265/x265_3.4.tar.gz
tar xzvf x265_3.4.tar.gz
cd x265_3.4/build/linux
cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX="$HOME/ffmpeg_build" -DENABLE_SHARED:bool=on ../../source
make
make install
make clean
#添加环境变量
export LD_LIBRARY_PATH="$HOME/ffmpeg_build/lib:$LD_LIBRARY_PATH" >> ~/.bashrc
export PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig:$PKG_CONFIG_PATH" >> ~/.bashrc
source ~/.bashrc
#安装ffmpeg4.4
#回到ffmpeg_install文件夹
cd ~/ffmpeg_install
wget https://ffmpeg.org/releases/ffmpeg-4.4.tar.gz
#更改国内源
tar xzvf ffmpeg-4.4.tar.gz
cd ffmpeg-4.4
PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig"
# 下面的使能根据选择添加 --enable-libfdk-aac --enable-libx264 --enable-libx265是我们现在需要的
./configure \
--prefix="$HOME/ffmpeg_build" \
--pkg-config-flags="--static" \
--extra-cflags="-I$HOME/ffmpeg_build/include" \
--extra-ldflags="-L$HOME/ffmpeg_build/lib" \ #extra-ldflags是链接库的路径
--extra-libs="-lpthread -lm" \ # extra-libs是链接库的名称
--bindir="$HOME/bin" \
--enable-gpl \
--enable-libass \
--enable-libfdk-aac \
--enable-libfreetype \
--enable-libmp3lame \ # mp3编码器
--enable-libopus \ # opus编码器
--enable-libtheora \ # theora编码器
--enable-libvorbis \ # vorbis编码器
--enable-libvpx \ # vp8编码器
--enable-libx264 \ # x264编码器
--enable-libx265 \
--enable-nonfree
# ./configure生成一行文件
# ./configure --prefix="$HOME/ffmpeg_build" --pkg-config-flags="--static" --extra-cflags="-I$HOME/ffmpeg_build/include" --extra-ldflags="-L$HOME/ffmpeg_build/lib" --extra-libs="-lpthread -lm" --bindir="$HOME/bin" --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libx264 --enable-libx265 --enable-nonfree
make
make install
make distclean
ffmpeg在ubuntu上面的sh脚本 建议一行一行运行
最新推荐文章于 2023-01-13 08:20:38 发布