ffmpeg ffmpeg-php 安装及出错解决办法

在centos 5.4环境下安装 FFMPEG 和 FFMPEG-PHP 。

  1. 下载ffmepg及ffmpeg-php
    wget http://www.ffmpeg.org/releases/ffmpeg-export-snapshot.tar.bz2
    wget http://downloads.sourceforge.net/project/ffmpeg-php/ffmpeg-php/0.6.0/ffmpeg-php-0.6.0.tbz2?use_mirror=ncu
  2. 安装ffmpeg
    1 tar -xjf ffmpeg-export-snapshot.tar.bz2
    2 #进入解压后的源文件目录
    3 cd ffmpeg-export-2010-03-02/
    4 ./configure --prefix=/usr/local   --enable-shared
    5 make
    6 make install

    测试是否能正常使用:

    1 [root@mail ffmpeg-export-2010-03-02]# ffmpeg
    2 FFmpeg version SVN-r22144-snapshot, Copyright (c) 2000-2010 the FFmpeg developers
    3   built on Mar 30 2010 23:53:53 with gcc 4.1.2 20080704 (Red Hat 4.1.2-46)
    4   configuration: --prefix=/usr/local --enable-shared
    5   libavutil     50. 9. 0 / 50. 9. 0
    6   libavcodec    52.55. 0 / 52.55. 0
    7   libavformat   52.54. 0 / 52.54. 0
    8   libavdevice   52. 2. 0 / 52. 2. 0
    9   libswscale     0.10. 0 /  0.10. 0

    如果提示:“ffmpeg: error while loading shared libraries: libavdevice.so.52: cannot open shared object file: No such file or directory”

    1 vi /etc/ld.so.conf.d/ffmpeg.conf
    2 #在里面加入:usr/local/lib,这个目录,为ffmpeg安装后libavdevice.so.52等lib文件所在目录。
    3 ldconfig -v
  3. 安装ffmpeg-php
    1 tar -xjf ffmpeg-php-0.6.0.tbz2
    2 cd ffmpeg-php-0.6.0
    3 /usr/local/php/bin/phpize
    4 ./configure --with-php-config=/usr/local/php/bin/php-config  --with-ffmpeg=/usr/local
    5 make test
    6 make
    7 make install
    8 #在php.ini中加入extension=ffmpeg.so

    如果在make test中发现错误提示:make: *** [ffmpeg_frame.lo] Error 1
    则:

    1 mv ffmpeg_frame.loT ffmpeg_frame.lo

    测试是否安装成功:

    01 php -r 'phpinfo();' grep ffmpeg
    02 ffmpeg
    03 ffmpeg-php version => 0.6.0-svn
    04 ffmpeg-php built on => Mar 31 2010 14:17:14
    05 ffmpeg-php gd support  => enabled
    06 ffmpeg libavcodec version => Lavc52.55.0
    07 ffmpeg libavformat version => Lavf52.54.0
    08 ffmpeg swscaler version => SwS0.10.0
    09 ffmpeg.allow_persistent => 0 => 0
    10 ffmpeg.show_warnings => 0 => 0

    如果有ffmepg-php模块错误提示:php: symbol lookup error: /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/ffmpeg.so: undefined symbol: register_ffmpeg_frame_class

    1 nm /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/ffmpeg.so|grep register_ffmpeg_frame_class
    2 #输出U register_ffmpeg_frame_class

    则修改ffmpeg_frame.c,将3处的PIX_FMT_RGBA32 更改为PIX_FMT_RGB32即可。

    1 vi ffmpeg_frame.c
    2 :%s/PIX_FMT_RGBA32/PIX_FMT_RGB32
    3 :w
    4 :q!
    5 ./configure --with-php-config=/usr/local/php/bin/php-config  --with-ffmpeg=/usr/local
    6 make test
    7 make
    8 make install

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值