Cent OS安装使用ffmpeg(完整版)
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..tar.gz
cd yasm-1.3.
./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---stable.tar.bz2
cd x264-snapshot---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) - the FFmpeg developers
built with gcc 4.8. (GCC) (Red Hat 4.8.-)
configuration: --prefix=/usr/local/ --enable-gpl --enable-version3 --enable-nonfree --enable-shared --enable-zlib --enable-bzlib --enable-libmp3lame --enable-libx264 --enable-pic
libavutil . 27.100 / . 27.100
libavcodec . 48.101 / . 48.101
libavformat . 40.101 / . 40.101
libavdevice . 0.101 / . 0.101
libavfilter . 46.102 / . 46.102
libswscale . 1.100 / . 1.100
libswresample . 1.100 / . 1.100
libpostproc . 0.100 / . 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-.jar
实际使用中,将 jar包导入项目,或者maven 本地仓库即可。
Cent OS安装使用ffmpeg(完整版)的更多相关文章
- redis安装以及主从复制完整版
redis安装以及主从复制完整版redis版本:redis-3.2.11主从复制模式:master--> slave1--> slave2 master:10.10.11.32 slave ...
- 二、cent OS安装配置tomcat
下载tomcat的tar包http://tomcat.apache.org/download-80.cgi 确保安装前已经安装JDKjava -version如果没有安装可以参考上一篇文章:http: ...
- 一、cent OS安装配置JDK
到oracle官网下载JDKhttp://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html 在cent OS ...
- Cent OS安装My Sql
因为公司的需要,所以就自己学习了一下在Linux上安装MySQL,但是翻查了好多博客,没有特别清楚,自己写下来好好总结一下 一.系统环境 CentOS-6.3-i386-bin-DVD1 二.下载My ...
- sql server2008安装说明 详细完整版
SQL Server 2008是一个重大的产品版本,它推出了许多新的特性和关键的改进,使得它成为至今为止的最强大和最全面的SQL Server版本. 在现今数据的世界里,公司要获得成功和不断发展,他们 ...
- Cent OS安装TL-WN725N 2.0 USB驱动
TP Link官方没有提供TL-WN725N 2.0的Linux驱动下载,折腾了我半天,试了各种方法.也有一部分原因是因为这机器还不能联网,导致有一些驱动因为缺少依赖并不成功安装. 后来终于在gith ...
- Linux_x64安装Oracle11g(完整版)
一.修改操作系统核心参数 在Root用户下执行以下步骤: 1)修改用户的SHELL的限制,修改/etc/security/limits.conf文件 输入命令:vi /etc/security/lim ...
- Git安装配置(完整版)
首先安装Windows客户端的git和TortoiseGit. 安装这两个软件还是蛮重要的,很多选项不能乱选. 为了写个完整的博客,我是装了又卸,卸了又装. 1.安装git 下载:https://gi ...
- cent os安装filebeat
先贴一下官方文档https://www.elastic.co/guide/en/beats/filebeat/6.6/filebeat-installation.html 我本次使用rpm的方式安装, ...
随机推荐
- 从一个例子入门Mysql储存过程
例子 -- 秒杀执行存储过程 DELIMITER $$ -- 将分隔符; 转换为 $$ -- 定义存储过程 -- 参数: in 输入参数; out 输出参数 -- row_count():返回上一条修 ...
- gulp + gulp-better-rollup + rollup 构建 ES6 开发环境
gulp + gulp-better-rollup + rollup 构建 ES6 开发环境 关于 Gulp 就不过多啰嗦了.常用的 js 模块打包工具主要有 webpack.rollup 和 bro ...
- 剑指Offer-- 二叉搜索树的第K个结点
给定一颗二叉搜索树,请找出其中的第k大的结点.例如, 5 / \ 3 7 /\ /\ 2 4 6 8 中,按结点数值大小顺序第三个结点的值为4. /* struct TreeNode { int va ...
- Windows下如何更新 CodeBlocks 中的 MinGW 使其支持新版本 C++
转自:http://blog.csdn.net/wtfmonking/article/details/17487705 虽然 CodeBlocks16.01 已经是最新版了,但其中的 MinGW 仍然 ...
- long double
long double 输入输出 scanf("%Lf",&a); printf("%.20Lf\n",a);
- 现代程序设计 homework-10
经过大半学期的学习和练习, 我们把学到的东西综合起来. 通过<现代程序设计>这门课,自己的确学到了好多东西.其实并不是说讲课有多棒,一是因为讲课的次数其实并不多,二是讲课的内容其实感觉并没 ...
- Python之加环境变量
1.python找文件是先去当前文件所在的文件夹下找,也就是bin目录下找 2.如果bin目录里找不到,再去python的环境变量里找 如果有pycharm,那么直接点右键-选择Mark Direct ...
- O(N) 求数组中最大子串和
int MaxSubSum3(int *arr, int len) { int i; long long MaxSum = 0; long long CurSum = 0; for(int i = 0 ...
- IdentityServer4【Topic】之确认(Consent)
Consent 确认 在授权请求期间,如果身份服务器需要用户同意,浏览器将被重定向到同意页面.也就是说,确认也算是IdentityServer中的一个动作.确认这个词直接翻译过来有一些古怪,既然大家都 ...
- java8新特性:interface中的static方法和default方法
java8中接口有两个新特性,一个是静态方法,一个是默认方法. static方法 java8中为接口新增了一项功能:定义一个或者多个静态方法. 定义用法和普通的static方法一样: public i ...