首先先下載擴展包php
擴展下載地址: http://nchc.dl.sourceforge.net/project/ffmpeg-php/ffmpeg-php/0.6.0/ffmpeg-php-0.6.0.tbz2vim
進入 ffmpeg-php目錄 進行編譯擴展.net
/usr/local/php/bin/phpize hash
./configure --with-php-config=/usr/local/php/bin/php-configit
make 出錯io
報錯狀況編譯
make: *** [ffmpeg-php.lo] 錯誤 1table 解決:class # mv ffmpeg-php.loT ffmpeg-php.lo擴展
make: *** [ffmpeg_movie.lo] 錯誤 1 解決: # mv ffmpeg_movie.loT ffmpeg_movie.lo
make: *** [ffmpeg_frame.lo] 錯誤 1 解決: # mv ffmpeg_frame.loT ffmpeg_frame.lo
make: *** [ffmpeg_errorhandler.lo] 錯誤 1 解決: # mv ffmpeg_errorhandler.loT ffmpeg_errorhandler.lo
make: *** [ffmpeg_tools.lo] 錯誤 1 解決: # mv ffmpeg_tools.loT ffmpeg_tools.lo |
以下:
報錯:
make: *** [ffmpeg_movie.lo] Error 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),
更改以後,從新編譯php ffmpeg擴展
運行ffmpeg報錯以下:
ffmpeg: error while loading shared libraries: libavdevice.so.52: cannot open shared object file: No such file or directory
解決:
vim /etc/ld.so.conf
加入一行:/usr/local/lib
而後執行 ldconfig
在php.ini中加入extension=ffmpeg.so
重啓php。在 phpinfo()中查看有無ffmpeg信息。
有的話就OK
或者執行
/usr/local/php/bin/php -i |grep ffmpeg
要是有輸出的話OK
解決方法同上,而後重編譯安裝ffmpeg-php