Install FFMPEG and FFMPEG-PHP in CentOS 6 with Virtualmin

 1 year ago -  by Daniel -  howto centos virtualmin ffmpeg ffmpeg-php

The other day I was requested to set-up few requirements for a client such as mod_rewriteGD libraryPHP Dombcmath 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

  1. Update the system
  2. Install Development Tools
  3. Protect base repositories
  4. Add dag's repository
  5. Install FFMPEG
  6. Install FFMPEG-PHP
  7. 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.repoCentOS-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的更多相关文章

  1. Linux下源码安装ffmpeg及ffmpeg的简单使用说明

    一.编译安装 ffmpeg在安装时依赖的包和版本都很让人头疼,不同编译环境也各不相同.公司之前封装了一个又各种出错. 其实办法很简单,就是到官网一步一步按着做就行了:http://trac.ffmpe ...

  2. (转载)[FFmpeg]使用ffmpeg从各种视频文件中直接截取视频图片

    你曾想过从一个视频文件中提取图片吗?在Linux下就可以,在这个教程中我将使用ffmpeg来从视频中获取图片. 什么是ffmpeg?What is ffmpeg? ffmpeg是一个非常有用的命令行程 ...

  3. 【FFMPEG】ffmpeg 中添加264支持

    ffmpeg 中带有264的解码,没有编码,需要添加x264: 参考百度上的"windows_ffmpeg编译 " 文档 下载ffmpeg 代码合x264代码, ffmpeg 代码 ...

  4. 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 ...

  5. 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 ...

  6. 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 ...

  7. 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 ...

  8. 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 ...

  9. 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 ...

随机推荐

  1. android-Okhttp初步使用

    自从谷歌把android的请求框架换成Okhttp后,android开发人员对其的讨论就变的越来越火热,所有咱作为一枚吊丝android程序员,也不能太落后,所以拿来自己研究一下,虽然目前项目开发用的 ...

  2. 复制过来的东西也不靠谱,微信公众号第三方平台的API

    API:https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&veri ...

  3. OutputCache 如何使用本地缓存 【转】

    注意!ASP.NET MVC 3 的一个 OutputCache 问题   在用 ASP.NET MVC 3 重写博客园网站首页时,特地留意了一下这个缓存问题,通过这篇博文分享一下. 在 ASP.NE ...

  4. 模版页面通过get传参数http://.../good_id/2;控制中可以直接使用echo $good_id;//2

  5. 添加数据之后不跳页面显示一个漂亮的提示信息(非ajax提交数据)

    1.在后台设置一个添加成功与否的提示 2.在添加页面设置提示信息 (自己喜欢什么样式就条成什么样式) 3.写js控制提示信息的显示与消失

  6. ios项目接入sdk事项

    使用cocos2d-x引擎创建的项目在xcode里可以看到都带有一个ios目录,把要接入的sdk的包含.framework库文件和.bundle的资源文件的父目录拖入到xcode项目里的这个ios目录 ...

  7. Ingress qdisc

    Ingress qdisc All qdiscs discussed so far are egress qdiscs. Each interface however can also have an ...

  8. 关于只针对ie7浏览器的css问题

    如代码: .centerDiv .search_k2{ margin-left: 18px; *margin-left: 9px; margin-top: 10px; height: 40px;} 中 ...

  9. apktool反编译apk文件

    1.首先下载apktool文件,可以从我的网盘下载:http://pan.baidu.com/s/1nvPdbVb 2.将你的apk文件和apktool文件放到一个文件夹下,这里就放到D:\study ...

  10. POJ-3261 Milk Patterns(后缀数组)

    题目大意:找出至少出现K次的子串的最长长度. 题目分析:二分枚举长度x,判断有没有最长公共前缀不小于x的并且连续出现了至少k次的有序子串区间. 代码如下: # include<iostream& ...