Ubuntu安装ffmpeg
如:ffmpeg2.8.6
https://blog.csdn.net/qq_34607973/article/details/121963340
①编译生成 ffplay 播放器首先需要安装 SDL 的库文件
sudo apt-get install libsdl1.2-dev
sudo apt-get install libsdl-image1.2-dev
sudo apt-get install libsdl-mixer1.2-dev
sudo apt-get install libsdl-ttf2.0-dev
sudo apt-get install gfx1.2-dev
②安装 yasm,执行以下命令:
sudo apt-get install yasm
③安装 ffmpeg 依赖的几个编解码库,依次执行以下命令:
sudo apt-get install libx264-dev
sudo apt-get install libfaac-dev
sudo apt-get install libvo-aacenc-dev
sudo apt-get install libmp3lame-dev
sudo apt-get install libfaad-dev
④安装其他依赖库:
sudo apt-get install build-essential subversion git-core checkinstall libtheora-dev libx11-dev
⑤解压
tar -xvf ffmpeg_4.2.2.orig.tar.xz
⑥安装依赖
sudo apt install -y yasm
sudo apt-get update && sudo apt-get -y install \
autoconf \
texi2htmlautomake \
build-essential \
cmake \
git-core \
git \
libass-dev \
libfreetype6-dev \
libgnutls28-dev \
libmp3lame-dev \
libsdl2-dev \
libtool \
libva-dev \
libvdpau-dev \
libvorbis-dev \
libxcb1-dev \
libxcb-shm0-dev \
libxcb-xfixes0-dev \
meson \
ninja-build \
pkg-config \
texinfo \
wget \
yasm \
zlib1g-dev \
libunistring-dev
安装 NASM
sudo apt-get install nasm
支持 h264 编码
sudo apt-get install libx264-dev
支持 h265
sudo apt-get install libx265-dev libnuma-dev
支持 VP8/VP9 编码
sudo apt-get install libvpx-dev
支持 aac 编码
sudo apt-get install libfdk-aac-dev
支持 opus 编码
sudo apt-get install libopus-dev
支持 dash demuxersudo apt-get install libxml2
sudo apt-get install libxml2-dev
⑦进入 ffmpeg,设置编译项(终端提醒不需要什么去掉即可)
./configure \
--enable-gnutls \
--extra-libs="-lpthread -lm" \
--enable-libass \
--enable-libmp3lame \
--enable-libx264 \
--enable-libfdk-aac \
--enable-libopus \
--enable-libx265 \
--ld="g++" \
--enable-gpl \
--enable-libfreetype \
--enable-libvorbis \
--enable-libvpx \
--enable-nonfree \
--enable-gpl \
--enable-nonfree \
--enable-pthreads \
--enable-libfaac \
--enable-libvo-aacenc \
--enable-libmp3lame \
--enable-libtheora \
--enable-x11grab \
--disable-optimizations \
--disable-asm \
--enable-version3 \
--enable-ffplay \
--enable-shared \
--prefix=/usr/local/ffmpeg \
--enable-nonfree
⑧编译,安装
make -j8
sudo make install
⑨建立软连接(可去 usr/local/bin 查看是否有 ffplay)
sudo ln -s /usr/local/ffmpeg/bin/ffmpeg /usr/bin/ffmpeg
sudo ln -s /usr/local/ffmpeg/bin/ffprobe /usr/bin/ffprobe
sudo ln -s /usr/local/ffmpeg/bin/ffplay /usr/bin/ffplay
⑩配置 ffmpeg 依赖环境
sudo gedit /etc/ld.so.conf
在其中添加路径:/usr/local/ffmpeg/lib
如果文件里已有路径就另起一行
sudo ldconfig
#更新环境变量
⑾查看版本
ffmpeg -v
可能遇到的问题:
https://blog.csdn.net/chendongpu/article/details/124148630
报 x264_bit_depth 声明未找到的问题,导致编译失败。
修改 libx264.c 文件,
代码为:
在 ffmpeg-2.8.6 中
cd libavcodec/
sudo gedit libx264.c
后将此文件中的所有 x264_bit_depth 直接替换为 X264_BIT_DEPTH,
然后重新进行 make -j8 编译。