安装yasm,一般这个 yum 仓库会有这个包,可以直接安装
1 | yum install yasm |
安装ffmpeg
svn checkout svn: //svn .ffmpeg.org /ffmpeg/trunk ffmpeg cd ffmpeg/ . /configure --prefix= /usr/local/ffmpeg -- enable -shared make make install |
可以使用ffmpeg命令查看是否安装成功:
成功会返回如下信息
FFmpeg version SVN-r26402, Copyright (c) 2000-2011 the FFmpeg developers built on Aug 16 2017 18:44:48 with gcc 4.4.7 20120313 (Red Hat 4.4.7-18) configuration: -- enable -shared WARNING: library configuration mismatch avutil configuration: --prefix= /usr/local/ffmpeg -- enable -shared avcore configuration: --prefix= /usr/local/ffmpeg -- enable -shared avcodec configuration: --prefix= /usr/local/ffmpeg -- enable -shared avformat configuration: --prefix= /usr/local/ffmpeg -- enable -shared avdevice configuration: --prefix= /usr/local/ffmpeg -- enable -shared avfilter configuration: --prefix= /usr/local/ffmpeg -- enable -shared swscale configuration: --prefix= /usr/local/ffmpeg -- enable -shared libavutil 50.36. 0 / 50.36. 0 libavcore 0.16. 1 / 0.16. 1 libavcodec 52.108. 0 / 52.108. 0 libavformat 52.93. 0 / 52.93. 0 libavdevice 52. 2. 3 / 52. 2. 3 libavfilter 1.74. 0 / 1.74. 0 libswscale 0.12. 0 / 0.12. 0 Hyper fast Audio and Video encoder usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}... Use -h to get full help or, even better, run 'man ffmpeg' |
我在安装的时候出现了报错:
ffmpeg: error while loading shared libraries: libavdevice.so.52 : cannot open shared object file : No such file or directory 解决方法: 在 /etc/ld .so.conf 中最后一行添加你的ffmpeg的安装目录,并确保安装目录下有此文件 lib /libavdevice .so.52 在运行 ldconfig 重新加载信息 |
下面安装php-ffmpeg
下载地址:http://ffmpeg-php.sourceforge.net/
版本为:ffmpeg-php-0.6.0.tbz2
支持的最低版本:
ffmpeg-0.4.9_pre1 or higher.
php-4.3.0 or higher
gd-2.0 or higher (the version of GD bundled with PHP works too)
如果没有 phpize ,则需要安装 php-devel
tar xjf ffmpeg-php-0.6.0.tbz2 cd ffmpeg-php-0.6.0/ phpize . /configure --with-ffmpeg= /usr/local/ffmpeg 可以先使用 make test 查看是否有报错 然后在使用 make clean 重新编译 make make install |
在安装 php-ffmpeg 出现如下报错
/root/ffmpeg-php-0 .6.0 /ffmpeg_frame .c:336: error: ‘PIX_FMT_RGBA32’ undeclared (first use in this function ) /root/ffmpeg-php-0 .6.0 /ffmpeg_frame .c:336: error: (Each undeclared identifier is reported only once /root/ffmpeg-php-0 .6.0 /ffmpeg_frame .c:336: error: for each function it appears in .) /root/ffmpeg-php-0 .6.0 /ffmpeg_frame .c: In function ‘zim_ffmpeg_frame_ffmpeg_frame’: /root/ffmpeg-php-0 .6.0 /ffmpeg_frame .c:421: error: ‘PIX_FMT_RGBA32’ undeclared (first use in this function ) make : *** [ffmpeg_frame.lo] Error 1 /root/ffmpeg-php-0 .6.0 /ffmpeg_frame .c: In function ‘zim_ffmpeg_frame_toGDImage’: |
需要将 ffmpeg_frame.c 里面的 PIX_FMT_RGBA32 替换为 PIX_FMT_RGB32,总共有三处
所有编译服务安装完成之后,需要在 php.ini 中最后一行加入:extension=ffmpeg.so
重启 php 使生效
使用下面方式可以查看是否生效:
php -m| grep ffmpeg php -r 'phpinfo();' | grep ffmpeg |
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦