ffmpeg查找文件PHP exec

时间:2017-04-20 09:48:44

标签: php ffmpeg

ffmpeg没有成功。如何检查文件是否存在?

我有文件

$mp3 = $_SERVER['DOCUMENT_ROOT']."/wp-content/youtube_channels/major.mp3";

我试图找到exec()的文件,但没有返回任何内容。我该如何解决?我完全迷失了。

var_dump(exec("/usr/include/ffmpeg -i $mp3"));

返回的所有内容 string(0)“”

当我检查phpinfo ffmpeg已安装时,当我输入exec("whereis ffmpeg")时,返回的内容为/usr/include/ffmpeg

我已经坚持了2天,我该怎么解决这个问题?

2 个答案:

答案 0 :(得分:0)

您正在寻找file_exists($full_path_to_file)

请参阅file_exists

在你的情况下

if(file_exists($mp3)) {
    //exec....
}

根据以下评论编辑:

尝试输出所有行

$output = [];
exec("/usr/include/ffmpeg -i $mp3 2>&1", $output);

var_dump($output);

答案 1 :(得分:0)

我首先要确保php可以使用shell_exec执行ffmpeg;

$out=shell_exec("/usr/include/ffmpeg 2>&1 1> /dev/null");
echo $out;

如果你得到这样的字符串

  

ffmpeg version N-81373-gf84cff8版权所有(c)2000-2016 FFmpeg   使用gcc 5.4.0构建的开发人员(Ubuntu 5.4.0-6ubuntu1~16.04.2)   20160609配置: - prefix = / home / ben / ffmpeg_build   --pkg-config-flags = - static --extra-cflags = -I / home / ben / ffmpeg_build / include --extra-ldflags = - ...(etc)

然后你就开始了。接下来尝试使用您的文件运行它:

$out=shell_exec("/usr/include/ffmpeg -i $mp3 2>&1 1> /dev/null");
echo $out;

并查看是否有关于您的文件的信息:

  

...持续时间:00:00:06.01,开始:0.000000,比特率:2317 kb / s流#0:0(und):视频:h264 ......(等)