我需要在我的localhost上安装ffmpeg PHP扩展,这样我可以测试一些我的脚本,但是我很难搞清楚如何做到这一点。
我有WampServer 2.0和PHP 5.2.9-2,我的操作系统是Windows XP。请有人给我一步一步的指示。
我在这里找到了一些Windows版本:http://sourceforge.net/projects/ffmpeg-php/files/
但我不知道下载哪一个以及如何处理文件。
编辑:
到目前为止我做了什么:
使用此代码后出现错误:
$extension = 'ffmpeg';
$extension_soname = 'php_ffmpeg.dll';
$extension_fullname = PHP_EXTENSION_DIR . "/" . $extension_soname;
// load extension
if(false === extension_loaded($extension)) {
if (false === dl($extension_soname))
throw new Exception("Can't load extension $extension_fullname\n");
}
错误:
Warning: dl() [function.dl]: Not supported in multithreaded Web servers - use extension=ffmpeg.dll in your php.ini in C:\wamp\www\hunnyhive\application\modules\default\controllers\MyAccountController.php on line 314
另外,我也从上面得到例外。
答案 0 :(得分:5)
将此行添加到您的php.ini文件
[PHP_ffmpeg]
extension=php_ffmpeg.dll
答案 1 :(得分:2)
http://sergey89.ru/files/ffmpeg-php-win32-all.zip
答案 2 :(得分:1)
答案 3 :(得分:1)
看起来问题不在于ffmpeg ...警告是关于使用dl函数的。多线程PHP不支持任何PHP扩展的动态加载,所以你需要确保它的.dll文件放在你的其他php模块所在的任何地方。
你真正需要弄清楚的是,尽管你的php.ini中有“extension = php_ffmpeg.dll”指令,但扩展无法加载。通常,您可以在apache错误日志中看到任何启动错误(例如PHP说它无法加载库)。另外,你看了一下phpinfo()并且验证了ffmpeg不存在(不应该是因为extension_loaded返回false),但也许它在不同的名称下(你也可以使用get_loaded_extensions())
答案 4 :(得分:1)
修改\wamp\apache\apache2.xx\bin\php.ini
- 添加行extension=php_ffmpeg.dll
INSTEAD OF
修改\wamp\bin\php\php5.2.9\php.ini
- 添加行extension=php_ffmpeg.dll
答案 5 :(得分:1)
; Whether or not to enable the dl() function. The dl() function does NOT work
; properly in multithreaded servers, such as IIS or Zeus, and is automatically
; disabled on them.
; http://php.net/enable-dl
enable_dl = Off
这些是php.ini
中的行。确保enable_dl
已关闭。之后你不会得到错误。
答案 6 :(得分:0)
MirKo是正确的,但我想补充一下
后
还有另一个步骤