ffmpeg php linux,CENTOS 6.5安装ffpmeg和 ffmpeg-php 扩展(LNMPA)的方法

正 文:

ffmpeg是一种非常强大的多媒体处理插件。linux下没有默认集成,我们需要手动安装。

本文的环境:Centos 6.5 64位,LNMPA 1.2。

为了快速安装,我们直接采用yum安装的方法。

一、安装ffmpeg

由于ffmpeg不在yum默认源中,我们需要手工新建文件 dag.repo 放在 /etc/yum.repos.d/ 目录下,文件内容为:[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=0

enabled=1

快速安装 ffmpeg:yum install ffmpeg ffmpeg-devel

测试:

2baefb550a61c489668eb77c89332259.png

二、安装 ffmpeg-php 扩展wget http://downloads.sourceforge.net/project/ffmpeg-php/ffmpeg-php/0.6.0/ffmpeg-php-0.6.0.tbz2

tar -xjf ffmpeg-0.6.0.tbz2

cd ffmpeg-0.6.0

/usr/local/php/bin/phpize

./configure --with-php-config=/usr/local/php/bin/php-config

make && make install

返回类似下面信息:Build complete.

Don't forget to run 'make test'.

Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/

表明安装成功了。

【错误1:】如果在make 中发现错误提示:make: *** [ffmpeg_frame.lo] Error 1,是因为缺少ffmpeg_frame.lo文件,执行:

mv ffmpeg_frame.loT ffmpeg_frame.lo

【错误2:】

检查是否正常:php -r 'phpinfo();' | grep ffmpeg

如果出错提示:php: symbol lookup error: /usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/ffmpeg.so: undefined symbol: register_ffmpeg_frame_class

进一步检测:nm /usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/ffmpeg.so|grep register_ffmpeg_frame_class

#输出U register_ffmpeg_frame_class

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

然后重新编译:cd ffmpeg-0.6.0

/usr/local/php/bin/phpize

./configure --with-php-config=/usr/local/php/bin/php-config

make && make install

三、配置php扩展/usr/local/php/etc/php.ini 添加扩展:

extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/ffmpeg.so

重启apache,可以在phpinfo里看到:

7e6b42ff4a1d1364793152c8f059db74.png

至此,ffmpeg php扩展安装成功。

四、PHP代码里运行$folder=dirname(__FILE__);

$source=$folder."/1.amr";

$target=$folder."/1.mp3";

$res = shell_exec("ffmpeg -i $source $target 2>&1");

var_dump($res);

参考:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值