1

我试图在我的 MAMP 环境中从 php 运行 ffmpeg 命令,但它不起作用。我已经将它添加到我的路径中。我可以成功运行诸如 whoami 和 ls -la 之类的 shell 命令,但 ffmpeg 似乎不起作用。我还安装了 ffmpeg-php,但它不支持我需要的功能——视频 > 图像堆栈。

示例代码:

<?php
    if (shell_exec("/usr/local/bin/ffmpeg")) 
        { echo "Success"; }
        else 
        { echo "No good"; }
?>
4

3 回答 3

2

您应该尝试打开文件 /Applications/MAMP/Library/bin/envvars 然后注释 if 和 else 的四行。这将如下所示:

#if test "x$DYLD_LIBRARY_PATH" != "x" ; then
#  DYLD_LIBRARY_PATH="/Applications/MAMP/Library/lib:$DYLD_LIBRARY_PATH"
#else
#  DYLD_LIBRARY_PATH="/Applications/MAMP/Library/lib"

这对我来说可以!在我的情况下,我还设置了所有项目权限,如 777。如果你需要这样做,你需要执行终端命令

chmod -R 777 projectDirectory

在文件 htdocs 目录上。我希望你能享受它。祝你好运!

于 2013-07-05T01:33:28.527 回答
0

1.找到文件/Applications/MAMP/Library/bin/envvars_

2.将此文件重命名为/Applications/MAMP/Library/bin/envvars

3.注释此文件的所有行。

4.写这个:

PATH="/Applications/MAMP/bin/php5.6.10/bin:usr/local/bin:$PATH"

export PATH

注意:php5.6.10 - 你必须写你当前的php版本

于 2017-04-20T10:00:22.433 回答
-1

stackexchange 上的此链接有效https://superuser.com/questions/404344/ffmpeg-works-on-terminal-not-with-php-exec

像这样在命令的末尾添加 '2>&1'

<?php 
    $info = shell_exec('/usr/local/bin/ffmpeg -i '.$inputMp3Path.' 2>&1');
    var_dump($info);
?>
于 2015-08-17T11:25:31.187 回答