安装php扩展 ffmpeg-php

环境: CentOS 6.5 PHP5.6  安装前php 已加载GD 模块(yum install php-gd)
1、添加ffmpeg和ffmpeg-devel源
cat > /etc/yum.repos.d/dag.repo <<EOF
[dag]
name=Dag RPM Repository for Red Hat Enterprise Linux
baseurl=http://www.mirrorservice.org/sites/apt.sw.be/redhat/el$releasever/en/$basearch/dag
gpgcheck=1
enabled=1
EOF

导入签名认证
rpm --import http://www.mirrorservice.org/sites/apt.sw.be/RPM-GPG-KEY.dag.txt
rpm -ivh http://www.mirrorservice.org/sites/apt.sw.be/redhat/el6/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm

 

2、安装ffmpeg

yum install ffmpeg ffmpeg-devel

#ffmpeg -version
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 FFmpeg 0.6.5 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

3、下载 ffmpeg-fpm-0.6.0

svn co svn://svn.code.sf.net/p/ffmpeg-php/code/branches/ffmpeg-php/ffmpeg-php-0.6.0/   /usr/local/src/ffmpeg-php-0.6.0

4、安装

cd /usr/local/src/ffmpeg-php-0.6.0 

/usr/bin/phpize

./configure  --enable-skip-gd-check   (不启用此选项的话 安装完会显示 ffmpeg-php gd support  => disabled)

make

到这里会报错 ,如下

make: *** [ffmpeg_movie.lo] 错误 1

解决办法: 

vim ffmpeg_movie.c

row 311: list_entry *le; 改为zend_rsrc_list_entry *le;
row 346: list_entry new_le;改为 zend_rsrc_list_entry new_le;
row 360: hashkey_length+1, (void *)&new_le, sizeof(list_entry),改为hashkey_length+1, (void *)&new_le,sizeof(zend_rsrc_list_entry),

重新make

报错如下:

解决办法:

sed -i  's/PIX_FMT_RGBA32/PIX_FMT_RGB32/g'    ffmpeg_frame.c

重新make

 

make install

#make install
Installing shared extensions:     /usr/lib64/php/modules/

添加PHP配置文件

echo  "extension = ffmpeg.so"  /etc/php.d/50-ffmpeg.ini

service php-fpm reload

#php -m|grep ffmpeg
ffmpeg

 

posted @ 2016-12-16 19:16  snale1989  阅读(12483)  评论(0编辑  收藏  举报