我在Windows上安装了FFMPEG。我把它添加到我的路径变量中。我可以在命令提示符下访问ffmpeg,无论我在哪个文件夹中(这告诉我ffmpeg +路径变量正在按预期工作)。
PHP
exec('ffmpeg -y -i C:/wamp64/test.mp4 -strict -2 -b:v 500k -vf scale=-2:123 C:/wamp64/test.mp4 2>&1', $output);
$output = implode(' -|- ', $output);
var_dump($output);
的var_dump
'ffmpeg' is not recognized as an internal or external command, -|- operable program or batch file.
当我在命令提示符中复制完全相同的突击队(ffmpeg -y -i C:/wamp64/test.mp4 -strict -2 -b:v 500k -vf scale=-2:123 C:/wamp64/test.mp4 2>&1
)时,它完美无缺。无论文件夹位置如何。
我是否需要采取其他/不同的步骤让PHP能够找到ffmpeg
?
答案 0 :(得分:0)
您可以尝试使用PHP定义的常量
DIRECTORY_SEPARATOR
而不是/?
此外,如果ffmpeg.exe程序不在%PATH%中,则必须使用完整路径,例如:
'C:' . DIRECTORY_SEPARATOR . 'Program Files' . DIRECTORY_SEPARATOR . 'ffmpeg' . DIRECTORY_SEPARATOR . 'bin'. DIRECTORY_SEPARATOR . 'ffmpeg.exe'