Php 如何在WampServer 2.0(Windows XP)中安装FFMpeg

Php 如何在WampServer 2.0(Windows XP)中安装FFMpeg,php,ffmpeg,video-streaming,wampserver,Php,Ffmpeg,Video Streaming,Wampserver,我需要在我的本地主机上安装ffmpeg PHP扩展,这样我就可以测试我的一些脚本了,但是我很难弄清楚如何做到这一点 我有带PHP5.2.9-2的WampServer2.0,我的操作系统是WindowsXP。请有人给我一步一步的指示 我在这里找到了一些Windows版本: 但我不知道该下载哪一个,以及如何处理文件 编辑: 到目前为止我所做的: 下载ffmpeg_new 将php_ffmpeg.dll从php5文件夹复制到C:\wamp\bin\php\php5.2.9-2\ext 将文件从comm

我需要在我的本地主机上安装ffmpeg PHP扩展,这样我就可以测试我的一些脚本了,但是我很难弄清楚如何做到这一点

我有带PHP5.2.9-2的WampServer2.0,我的操作系统是WindowsXP。请有人给我一步一步的指示

我在这里找到了一些Windows版本:

但我不知道该下载哪一个,以及如何处理文件

编辑:

到目前为止我所做的:

  • 下载ffmpeg_new
  • 将php_ffmpeg.dll从php5文件夹复制到C:\wamp\bin\php\php5.2.9-2\ext
  • 将文件从common复制到windows/system32文件夹
  • 将extension=php\u ffmpeg.dll添加到php.ini文件
  • 重新启动所有服务(Apache、PHP…)
  • 使用此代码后,我收到一个错误:

                $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
    
    另外,我也从上面得到了一个例外

  • 下载ffmpeg_new
  • 将php_ffmpeg.dll从php5文件夹复制到wamp/php/ext文件夹
  • 将文件从common复制到windows/system32文件夹

  • 看起来问题不在于ffmpeg。。。警告与dl函数的使用有关。多线程PHP不支持动态加载任何PHP扩展,因此您需要确保它的.dll文件放在其他PHP模块所在的位置


    您真正需要弄清楚的是,尽管在php.ini中有“extension=php\u ffmpeg.dll”指令,但为什么扩展没有加载。通常,您可以在apache错误日志中看到任何启动错误(比如PHP说它无法加载库)。另外,您是否查看了一个phpinfo()并验证了ffmpeg不存在(不应该存在,因为加载的扩展返回false),但它可能在另一个名称下(我想您也可以使用get_loaded_extensions()。

    MirKo是正确的,但我想补充一点

    之后

  • 从此处下载编译的DLL:http://sergey89.ru/files/ffmpeg-php-win32-all.zip
  • 提取并将php_ffmpeg.dll放入php ext文件夹
  • 将其余DLL放入windows/system32文件夹
  • 重新启动apache并运行phpinfo()-您应该会看到ffmpeg扩展(顺便说一句,如果要查找错误wamp->php->php错误日志,您必须检查php而不是apache错误日志)
  • 还有一个步骤

  • 打开php.ini文件并查找 ; 扩展名=msql.dll
    在它之后添加
    extension=php\u ffmpeg.dll
  • 解包ffmpeg-php-win32-all.zip
  • 将php_ffmpeg.dll复制到\wamp\php4\extension\(对于php5是 \wamp\bin\php\ext)
  • 将avcodec.dll&avformat.dll和包中的任何其他文件复制到\windows\system32\
  • 编辑\wamp\apache\apache2.xx\bin\php.ini-添加行扩展名=php\u ffmpeg.dll
  • 重新启动Apache
    编辑
    \wamp\apache\apache2.xx\bin\php.ini
    -添加行
    extension=php\u ffmpeg.dll

    而不是


    编辑
    \wamp\bin\php\php5.2.9\php.ini
    -添加行
    extension=php\u ffmpeg.dll

    将此行添加到php.ini文件中

    [PHP_ffmpeg]
    extension=php_ffmpeg.dll
    

    这些是
    php.ini
    中的行。确保
    enable_dl
    已关闭。在这之后,您将不会得到错误。

    我已经这样做了,并且还在php.ini中添加了extension=php\u ffmpeg.dll。但它仍然不起作用,我将编辑我的第一篇文章,以包含错误消息。您好,请帮助我检查了phpinfo(),但ffmpeg不在那里,因此即使dll文件位于正确的文件夹中,并且在php.ini中启用了它,也不会加载它。Apache错误日志中没有与此问题相关的内容,但PHP错误日志中充满了我第一篇文章中的错误消息。我感觉问题出在dll文件上,可能是为旧版本的PHP编译的?但是我还没有在互联网上找到任何其他的ffmpeg Windows版本。是的,我个人从来没有在任何东西上安装过ffmpeg,除了Ubuntu盒子。。。如果我有一个windows box要测试,我会给它一个重击,但我不知道除了尝试自己构建它之外还有什么可以告诉你:)嗨,请帮助我,下面的评论将帮助你实现这一点,我发现在过去跳过FFMPEG扩展并简单地调用可执行文件似乎是一个更好的解决方案。嗨,请在这方面提供帮助,您可能还需要启用扩展名:php_gd2.dll;嗨,请帮帮忙,请帮帮忙,请帮帮忙,请帮帮忙,请帮帮忙
    ; 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