zoukankan      html  css  js  c++  java
  • 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_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=/aprotect=1' CentOS-{Base,Media}.repo
    sed -i '/gpgkey=/aprotect=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
    " > /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
  • 相关阅读:
    hadoop入门学习系列之一hadoop伪分布式模式下安装及运行
    redis主从复制搭建
    Struts2 配置文件result的name属性和type属性
    context:exclude-filter spring事宜【经典-转】
    Incorrect column count: expected 1, actual 2
    SQL must not be null(低级错误)
    Injection of resource dependencies failed解决办法总结
    SpringMVC Controller 介绍【转】
    Json格式化工具 JsonViewer下载
    STS或eclipse安装SVN插件
  • 原文地址:https://www.cnblogs.com/qdlixuecai/p/5106671.html
Copyright © 2011-2022 走看看