Install FFMPEG and FFMPEG-PHP in CentOS 6 with Virtualmin
Install FFMPEG and FFMPEG-PHP in CentOS 6 with Virtualmin
The other day I was requested to set-up few requirements for a client such as mod_rewrite
, GD library
, PHP Dom
, bcmath
etc.. and among these in the list there was theFFMPEG
library and the FFMPEG-PHP
extension. OK, no big deal, but this box has CentOS 6 (RHEL6) with Virtualmin/Webmin
set-up on top of it using the base repositories only, so let's do it I said...
ok, I took the following steps in order to install and set-up FFMPEG and FFMPEG-PHP in CentOS 6 with Virtualmin
- Update the system
- Install Development Tools
- Protect base repositories
- Add dag's repository
- Install FFMPEG
- Install FFMPEG-PHP
- Load FFMPEG-PHP extension
1. Make sure the CentOS 6 system is fully up-to-date
yum update
2. Install Development Tools
yum groupinstall "Development tools"
3. Protect the base repositories so the packages don't get updated by the unprotected ones
Install the ProtectBase yum plugin
by
yum install yum-protectbase
and then navigate to /etc/yum.repos.d
cd /etc/yum.repos.d/
before doing any changes to the repositories, always do backup of the original ones.
cp -prv ../yum.repos.d{,.orig}
in order for a repository to be protected, a line protect=1
needs to be added to each repository section in CentOS-Base.repo
, CentOS-Media.repo
and virtualmin.repo
.
So, edit these files using your favourite editor or do the sed
if you're feeling brave
sed -i '/gpgkey=/a\protect=1' CentOS-{Base,Media}.repo
sed -i '/gpgkey=/a\protect=1' virtualmin.repo
4. Add dag's repository by adding the following to /etc/yum.repos.d/dag.repo
[dag]
name=Dag RPM Repository for Red Hat Enterprise Linux
baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag
gpgcheck=1
gpgkey=http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt
enabled=1
protect=0
next import dag's rpm gpg
key by
wget http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt -P /tmp
rpm --import /tmp/RPM-GPG-KEY.dag.txt
5. Proceed with installing FFMPEG and some development packages
yum install ffmpeg-devel php-devel re2c php-xml ffmpeg
verify FFMPEG
is installed successfully by executing
ffmpeg
you should get something like
FFmpeg version 0.6.5, Copyright (c) 2000-2010 the FFmpeg developers
built on Jan 29 2012 17:52:15 with gcc 4.4.5 20110214 (Red Hat 4.4.5-6)
configuration: --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64 --mandir=/usr/share/man --incdir=/usr/include --disable-avisynth --extra-cflags='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -fPIC' --enable-avfilter --enable-avfilter-lavf --enable-libdc1394 --enable-libdirac --enable-libfaac --enable-libfaad --enable-libfaadbin --enable-libgsm --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-librtmp --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libx264 --enable-gpl --enable-nonfree --enable-postproc --enable-pthreads --enable-shared --enable-swscale --enable-vdpau --enable-version3 --enable-x11grab
libavutil 50.15. 1 / 50.15. 1
libavcodec 52.72. 2 / 52.72. 2
libavformat 52.64. 2 / 52.64. 2
libavdevice 52. 2. 0 / 52. 2. 0
libavfilter 1.19. 0 / 1.19. 0
libswscale 0.11. 0 / 0.11. 0
libpostproc 51. 2. 0 / 51. 2. 0
Hyper fast Audio and Video encoder
6. Compile and install the FFMPEG-PHP extension
mkdir /srv/build
cd /srv/build
wget http://downloads.sourceforge.net/project/ffmpeg-php/ffmpeg-php/0.6.0/ffmpeg-php-0.6.0.tbz2
tar -xjf ffmpeg-php-0.6.0.tbz2
cd ffmpeg-php-0.6.0/
phpize
./configure
now run the following to prevent compilation failure with something like ffmpeg_frame.c:421: error: ‘PIX_FMT_RGBA32’ undeclared (first use in this function)
sed -i 's#PIX_FMT_RGBA32#PIX_FMT_RGB32#' ./ffmpeg_frame.c
and compile and install using
make
make install
you should end up with something like
Installing shared extensions: /usr/lib64/php/modules/
7. Load the FFMPEG-PHP extension and reload Apache
echo -e "extension=ffmpeg.so\n" > /etc/php.d/ffmpeg.ini
restart the webserver by
/etc/init.d/httpd restart
verify that the FFMPEG-PHP
extension is loaded
php -i | grep ffmpeg
php -m | grep ffmpeg
Install FFMPEG and FFMPEG-PHP in CentOS 6 with Virtualmin的更多相关文章
- Linux下源码安装ffmpeg及ffmpeg的简单使用说明
一.编译安装 ffmpeg在安装时依赖的包和版本都很让人头疼,不同编译环境也各不相同.公司之前封装了一个又各种出错. 其实办法很简单,就是到官网一步一步按着做就行了:http://trac.ffmpe ...
- (转载)[FFmpeg]使用ffmpeg从各种视频文件中直接截取视频图片
你曾想过从一个视频文件中提取图片吗?在Linux下就可以,在这个教程中我将使用ffmpeg来从视频中获取图片. 什么是ffmpeg?What is ffmpeg? ffmpeg是一个非常有用的命令行程 ...
- 【FFMPEG】ffmpeg 中添加264支持
ffmpeg 中带有264的解码,没有编码,需要添加x264: 参考百度上的"windows_ffmpeg编译 " 文档 下载ffmpeg 代码合x264代码, ffmpeg 代码 ...
- Install MongoDB on Red Hat Enterprise, CentOS, Fedora, or Amazon Linux
Install MongoDB on Red Hat Enterprise, CentOS, Fedora, or Amazon Linux¶ Overview Use this tutorial t ...
- Install Apache, PHP And MySQL On CentOS 7 (LAMP)
This tutorial shows how you can install an Apache2 webserver on a CentOS 7.0 server with PHP5 suppor ...
- Transaction check error: file /etc/rpm/macros.ghc-srpm from install of redhat-rpm-config-9.1.0-80.el7.centos.noarch conflicts with file from package epel-release-6-8.noarch Error Summary ----------
./certbot-auto certonly 报错: Transaction check error: file /etc/rpm/macros.ghc-srpm from install of ...
- How to Install Apache Tomcat 8.5 on CentOS 7.3
How to Install Apache Tomcat 8.5 on CentOS 7.3 From: https://www.howtoforge.com/tutorial/how-to-inst ...
- How to Install Apache Solr 4.5 on CentOS 6.4
By Shay Anderson on October 2013 Knowledge Base / Linux / How to Install Apache Solr 4.5 on Cent ...
- Install .NET Core SDK on Linux CentOS / Oracle x64 | .NET
原文:Install .NET Core SDK on Linux CentOS / Oracle x64 | .NET Linux发行版 CentOS / Oracle添加dotnet产品Feed ...
随机推荐
- mod_cluster启用https协议的步骤
1.生成SSL证书与私钥 Generate Private Key on the Server Running Apache + mod_ssl First, generate a private k ...
- 高性能Mysql
高性能 高可用 易伸缩 安全 高并发 定义 吞吐量(单位时间内多少次查询) MTBF(平均失效时间) MTTR(平均恢复时间) 同时工作的线程数或连接数 系统 事务 表锁.行级 ...
- c/c++面试题(6)运算符重载详解
1.操作符函数: 在特定条件下,编译器有能力把一个由操作数和操作符共同组成的表达式,解释为对 一个全局或成员函数的调用,该全局或成员函数被称为操作符函数.该全局或成员函数 被称为操作符函数.通过定义操 ...
- Python显示函数调用堆栈
网上找到如下几个思路: 1.用inspect模块 2.用sys._getframe模块 3.用sys.exc_traceback,先抛一个异常,然后抓出traceback #!/usr/bin/env ...
- iOS学习之沙盒
1.iOS沙盒 iOS应用程序只能在为该改程序创建的文件系统中读取文件,不可以去其它地方访问,此区域被成为沙盒,所以所有的非代码文件都要保存在此,例如图像,图标,声音,映像,属性列表,文本文件等. 1 ...
- C++ Daily 《3》----构造函数可否是虚函数
C++ 中构造函数可否是虚函数? 绝不要!! 而且,在构造函数中调用虚函数也是不提倡的行为,因为会引发预想不到的结果. 因为,在 derived class 对象构造的过程中,首先调用的是基类的构造函 ...
- 图片加载完后执行js
<script> window.onload=function(){ var liwidth = $('.imgul ...
- dashboard
http://www.htmleaf.com/pins/chart-doc/index.html http://www.flotcharts.org/flot/examples/ https://gi ...
- HTML标签小记
<body> </body>标签,网页内容放在这里 <p> </p>标签,网页的段落 <hx> </hx>标签,网页的标题 &l ...
- JavaScript学习中的挑战
当人们尝试学习 JavaScript , 或者其他编程技术的时候,常常会遇到同样的挑战: 有些概念容易混淆,特别是当你学习过其他语言的时候.很难找到学习的时间(有时候是动力).一旦当你理解了一些东西的 ...