Cent OS安裝使用ffmpeg
centos作為主流后台linux 系統,ffmpeg作為視頻流解析的主力,尤其是ffmpeg配合opencv使用,則是視覺操作的基礎
版本:
ffmpeg3.1 + opencv 2.4.13.6
1.ffmpeg安裝准備
1)安裝必要的擴展
yum install automake autoconf make gcc gcc-c++ libtool zlib zlib-devel curl curl-devel alsa-lib alsa-lib-devel gettext gettext-devel expat expat-devel nasm pkgconfig
2)安裝yasm - 支持編譯x264
wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz tar -zxvf yasm-1.3.0.tar.gz cd yasm-1.3.0 ./configure make -j8 make install
3)安裝gnutls、lame
yum install gnutls gnutls-devel
yum install lame lame-devel
4)安裝 x264庫
卸載系統自帶的舊版x264
yum remove x264 x264-devel
安裝 x264
wget -c ftp://ftp.videolan.org/pub/x264/snapshots/x264-snapshot-20120718-2245-stable.tar.bz2 # 未安裝 bzip2 則執行安裝命令 yum install bzip2 tar jxvf x264-snapshot-20120718-2245-stable.tar.bz2 cd x264-snapshot-20120718-2245-stable ./configure --enable-shared --enable-static make -j8 make install
2.安裝ffmpeg
wget http://www.ffmpeg.org/releases/ffmpeg-3.1.tar.gz tar -zxvf ffmpeg-3.1.tar.gz cd ffmpeg-3.1 ./configure --prefix=/usr/local/ --enable-gpl --enable-version3 --enable-nonfree --enable-shared --enable-zlib --enable-bzlib --enable-libmp3lame --enable-libx264 --enable-pic make -j8 make install
3.檢查ffmpeg 是否安裝成功
更新資源
updatedb # yum install mlocate
檢查ffmpeg版本
ffmpeg -v
如果提示找不到 libavdevice ... ,在 /etc/ld.so.conf 中配置 /usr/local/lib
vi /etc/ld.so.conf // 新增 : /usr/local/lib ldconfig
此時檢查ffmpeg版本則返回:
ffmpeg version 3.1 Copyright (c) 2000-2016 the FFmpeg developers built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-36) configuration: --prefix=/usr/local/ --enable-gpl --enable-version3 --enable-nonfree --enable-shared --enable-zlib --enable-bzlib --enable-libmp3lame --enable-libx264 --enable-pic libavutil 55. 27.100 / 55. 27.100 libavcodec 57. 48.101 / 57. 48.101 libavformat 57. 40.101 / 57. 40.101 libavdevice 57. 0.101 / 57. 0.101 libavfilter 6. 46.102 / 6. 46.102 libswscale 4. 1.100 / 4. 1.100 libswresample 2. 1.100 / 2. 1.100 libpostproc 54. 0.100 / 54. 0.100
4.opencv准備
Java的安裝 - 略
ant的安裝
yum install ant
5.opencv 安裝
wget https://github.com/opencv/opencv/archive/2.4.13.6.zip unzip opencv-2.4.13.6.zip # yum install zip unzip cd opencv-2.4.13.6 mkdir build && cd build
檢查opencv安裝依賴
cmake ..
如果沒有ffmpeg :
這里,參見 https://stackoverflow.com/questions/5492919/cmake-cant-find-ffmpeg-in-custom-install-path ,需配置 PKG_CONFIG_PATH 變量,而centos默認沒有locate,故有以下處理:
yum install mlocate // centos 下安裝locate locate pkgconfig export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
再去執行cmake即發現ffmpeg已就緒。
執行編譯、安裝
make -j8
make install
6.opencv檢查
檢查很簡單,build/lib 目錄下是否包含:
libopencv_java2413.so
需要用到 opencv - jar 的, build/bin 目錄下查看是否包含:
opencv-2413.jar
實際使用中,將 jar包導入項目,或者maven 本地倉庫即可。
