搜档网
当前位置:搜档网 › Ubuntu-安装ffmpeg

Ubuntu-安装ffmpeg

Compile FFmpeg on Ubuntu, Debian, or Mint
参考:https://www.sodocs.net/doc/3b17216407.html,/wiki/CompilationGuide/Ubuntu
以下是在所用32位工作站上的安装 (64位系统需要在相应地方加上-fPIC,祥见后面的--enable-shared --enable-pic)
第一步:Get the Dependencies
sudo apt-get update
sudo apt-get -y install autoconf automake build-essential libass-dev libfreetype6-dev libgpac-dev \
libsdl1.2-dev libtheora-dev libtool libva-dev libvdpau-dev libvorbis-dev libx11-dev \
libxext-dev libxfixes-dev pkg-config texi2html zlib1g-dev
mkdir /export/software/ffmpeg/ffmpeg_sources
第二步:Yasm
sudo apt-get install yasm
or
cd /export/software/ffmpeg/ffmpeg_sources
wget https://www.sodocs.net/doc/3b17216407.html,/projects/yasm/releases/yasm-1.2.0.tar.gz
tar xzvf yasm-1.2.0.tar.gz
cd yasm-1.2.0
./configure --prefix="/export/software/ffmpeg/ffmpeg_build" --bindir="/usr/local/bin"
make
make install
make distclean
第三步:libx264 (注意:官方文档中,configure语句有误,应该用--enable-shared而非--enable-static)
cd /export/software/ffmpeg/ffmpeg_sources
wget https://www.sodocs.net/doc/3b17216407.html,/pub/x264/snapshots/last_x264.tar.bz2
tar xjvf last_x264.tar.bz2
cd x264-snapshot*
PATH="$PATH:/usr/local/bin" ./configure --prefix="/export/software/ffmpeg/ffmpeg_build" --bindir="/usr/local/bin" --enable-shared
PATH="$PATH:/usr/local/bin" make
sudo make install
make distclean
第四步:libfdk-aac
sudo apt-get install unzip
cd /export/software/ffmpeg/ffmpeg_sources
wget -O fdk-aac.zip https://https://www.sodocs.net/doc/3b17216407.html,/mstorsjo/fdk-aac/zipball/master
unzip fdk-aac.zip
cd mstorsjo-fdk-aac*
autoreconf -fiv
./configure --prefix="/export/software/ffmpeg/ffmpeg_build" --disable-shared
make
sudo make install
make distclean
第五步:libmp3lame
sudo apt-get install libmp3lame-dev
第六步:libopus
sudo apt-get install libopus-dev
第七步:libvpx
cd /export/software/ffmpeg/ffmpeg_sources
wget https://www.sodocs.net/doc/3b17216407.html,/files/libvpx-v1.3.0.tar.bz2
tar xjvf libvpx-v1.3.0.tar.bz2
cd libvpx-v1.3.0
./configure --prefix="/export/software/ffmpeg/ffmpeg_build" --disable-examples
make
sudo make install
make clean
第八步:ffmpeg
cd /export/software/ffmpeg/ffmpeg_sources
wget https://www.sodocs.net/doc/3b17216407.html,/releases/ffmpeg-snapshot.tar.bz2
tar xjvf ffmpeg-snapshot.tar.bz2
cd ffmpeg
PATH="$PATH:/usr/local/bin" PKG_CONFIG_PATH="/export/software/ffmpeg/ffmpeg_build/lib/pkgconfig" ./configure \
--prefix="/export/software/ffmpeg/ffmpeg_build" \
--extra-cflags="-I/export/software/ffmpeg/ffmpeg_build/include" \
--extra-ldflags="-L/export/software/ffmpeg/ffmpeg_build/lib" \
--bindir="/usr/local/bin" \
--extra-libs="-ldl" \
--enable-gpl \
--enable-libass \
--enable-libfdk-aac \
--enable-libfreetype \
--enable-libmp3lame \
--enable-libopus \
--enable-libtheora \
--enable-libvorbis \
--enable-libvpx \
--enable-libx264 \
--enable-nonfree \
--enable-x11grab
PATH="$PATH:/usr/local/bin" make
sudo make install
make distclean
hash -r
第九步:目录处理
安装完成后

,应该将/export/software/ffmpeg/ffmpeg_build下的lib,include等目录移植到/usr/local下。
类似”error while loading shared libraries: lib*.so*: cannot open shared object file: No such file or directory“问题的解决:
安装共享库后要注意共享库路径设置问题, 如下:
1) 如果共享库文件安装到了/lib或/usr/lib目录下, 那么需执行一下ldconfig命令
ldconfig命令的用途, 主要是在默认搜寻目录(/lib和/usr/lib)以及动态库配置文件/etc/ld.so.conf内所列的目录下, 搜索出可共享的动态链接库(格式如lib*.so*), 进而创建出动态装入程序(ld.so)所需的连接和缓存文件. 缓存文件默认为/etc/ld.so.cache, 此文件保存已排好序的动态链接库名字列表.
2) 如果共享库文件安装到了/usr/local/lib(很多开源的共享库都会安装到该目录下)或其它"非/lib或/usr/lib"目录下, 那么在执行ldconfig命令前, 还要把新共享库目录加入到共享库配置文件/etc/ld.so.conf中, 如下:
# cat /etc/ld.so.conf
include ld.so.conf.d/*.conf
# echo "/usr/local/lib" >> /etc/ld.so.conf
# ldconfig
3) 如果共享库文件安装到了其它"非/lib或/usr/lib" 目录下, 但是又不想在/etc/ld.so.conf中加路径(或者是没有权限加路径). 那可以export一个全局变量LD_LIBRARY_PATH, 然后运行程序的时候就会去这个目录中找共享库.
LD_LIBRARY_PATH的意思是告诉loader在哪些目录中可以找到共享库. 可以设置多个搜索目录, 这些目录之间用冒号分隔开. 比如安装了一个mysql到/usr/local/mysql目录下, 其中有一大堆库文件在/usr/local/mysql/lib下面, 则可以在.bashrc或.bash_profile或shell里加入以下语句即可:
export LD_LIBRARY_PATH=/usr/local/mysql/lib:$LD_LIBRARY_PATH
一般来讲这只是一种临时的解决方案, 在没有权限或临时需要的时候使用.
=======================================================================================================================================================
=======================================================================================================================================================
以下是在所用64位工作站上的安装 (下面先是针对32位系统,64位系统需要在相应地方加上-fPIC,祥见后面的--enable-shared --enable-pic)
第一步:Get the Dependencies
sudo apt-get update
sudo apt-get -y install autoconf automake build-essential libass-dev libfreetype6-dev libgpac-dev \
libsdl1.2-dev libtheora-dev libtool libva-dev libvdpau-dev libvorbis-dev libx11-dev \
libxext-dev libxfixes-dev pkg-config texi2html zlib1g-dev
mkdir /export/software/ffmpeg/ffmpeg_sources
第二步:Yasm
sudo apt-get install yasm
or
cd /export/software/ffmpeg/ffmpeg_sources
wget https://www.sodocs.net/doc/3b17216407.html,/projects/yasm/releases/yasm-1.2.0.tar.gz
tar xzvf yasm-1.2.0.tar.gz
cd yasm-1.2.0
./configure --prefix="/export/software/ffmpeg/ffmpeg_build" --bindir="/usr/

local/bin"
make
make install
make distclean
第三步:libx264 (注意:官方文档中,configure语句有误,应该用--enable-shared而非--enable-static)
cd /export/software/ffmpeg/ffmpeg_sources
wget https://www.sodocs.net/doc/3b17216407.html,/pub/x264/snapshots/last_x264.tar.bz2
tar xjvf last_x264.tar.bz2
cd x264-snapshot*
PATH="$PATH:/usr/local/bin" ./configure --prefix="/export/software/ffmpeg/ffmpeg_build" --bindir="/usr/local/bin" --enable-shared --enable-pic
PATH="$PATH:/usr/local/bin" make
sudo make install
make distclean
第四步:libfdk-aac
sudo apt-get install unzip
cd /export/software/ffmpeg/ffmpeg_sources
wget -O fdk-aac.zip https://https://www.sodocs.net/doc/3b17216407.html,/mstorsjo/fdk-aac/zipball/master
unzip fdk-aac.zip
cd mstorsjo-fdk-aac*
autoreconf -fiv
./configure --prefix="/export/software/ffmpeg/ffmpeg_build" --enable-shared --enable-pic
make
sudo make install
make distclean
第五步:libmp3lame
sudo apt-get install libmp3lame-dev
第六步:libopus
sudo apt-get install libopus-dev
第七步:libvpx
cd /export/software/ffmpeg/ffmpeg_sources
wget https://www.sodocs.net/doc/3b17216407.html,/files/libvpx-v1.3.0.tar.bz2
tar xjvf libvpx-v1.3.0.tar.bz2
cd libvpx-v1.3.0
./configure --prefix="/export/software/ffmpeg/ffmpeg_build" --disable-examples --enable-shared --enable-pic
make
sudo make install
make clean
第八步:ffmpeg
cd /export/software/ffmpeg/ffmpeg_sources
wget https://www.sodocs.net/doc/3b17216407.html,/releases/ffmpeg-snapshot.tar.bz2
tar xjvf ffmpeg-snapshot.tar.bz2
cd ffmpeg
PATH="$PATH:/usr/local/bin" PKG_CONFIG_PATH="/export/software/ffmpeg/ffmpeg_build/lib/pkgconfig" ./configure \
--prefix="/export/software/ffmpeg/ffmpeg_build" \
--extra-cflags="-I/export/software/ffmpeg/ffmpeg_build/include" \
--extra-ldflags="-L/export/software/ffmpeg/ffmpeg_build/lib" \
--bindir="/usr/local/bin" \
--extra-libs="-ldl" \
--enable-gpl \
--enable-libass \
--enable-libfdk-aac \
--enable-libfreetype \
--enable-libmp3lame \
--enable-libopus \
--enable-libtheora \
--enable-libvorbis \
--enable-libvpx \
--enable-libx264 \
--enable-nonfree \
--enable-x11grab --enable-shared --enable-pic
PATH="$PATH:/usr/local/bin" make
sudo make install
make distclean
hash -r

相关主题