gpt4 book ai didi

PHP ffmpeg exec 返回 null

转载 作者:可可西里 更新时间:2023-10-31 22:57:51 25 4
gpt4 key购买 nike

我正在尝试通过 PHP exec 调用运行 ffmpeg,我已经调试了一段时间并查看了这里的很多响应,但仍然没有找到任何答案...

我的简化调用是:

$cmd = 'ffmpeg 2>&1';

exec(escapeshellcmd($cmd), $stdout, $stderr);

var_dump($stderr);
var_dump($stdout);
var_dump($cmd);
exit;

我的输出是 $stderr = int(1) 和 $stdout = array(0) { }

我还尝试了返回 NULLshell_exec($cmd)

cmd.exe 具有为 IUSR 帐户设置的权限 - 例如我可以运行 $cmd = 'dir' 并查看目录列表输出。

PHP 未在安全模式下运行。

ffmpeg.exe 与我的 php 文件位于同一目录中,但我有相同的响应,在 $cmd 中给出了 ffmpeg.exe 文件的绝对路径。

ffmpeg 在命令行中执行良好。

我正在运行 Windows XP、IIS 和 PHP 5.3。

编辑:

如果我运行“ffmpeg -h”,我会得到帮助命令,它必须表明 ffmpeg 已被识别

我已将 PHP 内存限制增加到 1024 - 运气不好。

最佳答案

我现在已经开始工作了 - 我认为可能存在几个问题:

事实证明,$cmd = 'ffmpeg' 返回 null,所以这不是一个好的测试!

还在 '2>&1' 上运行 escape shell 命令回显 2^>^&1"- 我认为这是我最初的问题。

我现在已经设法使用“ffmpeg -i SAMPLE.AVI 2>&1”重新测试文件。

工作代码:

$cmd = 'ffmpeg -i SAMPLE.AVI 2>&1';

exec($cmd, $output, $value);

var_dump($output);
var_dump($value);
var_dump($cmd);
exit;

如上所述,ffmpeg 有点占用内存,因此也值得检查内存。

关于PHP ffmpeg exec 返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9770173/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com