-1

我正在从 php 的exec执行 ffmpeg

function convertToMP4($sourceFile,$outputfile)
{
    $Command="ffmpeg -i ".$sourceFile.".".$outputfile." 2>&1";
    exec($Command,$result,$status);
    return $result;

}

我将整个命令的结果发送到数组

$结果。

我的问题是,我怎样才能准确地找出视频是否编码失败。

谢谢你。

4

2 回答 2

1

根据这个$status 将包含进程的退出值,通常 0 表示成功,其余表示错误。

function convertToMP4($sourceFile,$outputfile)
{
    $Command="ffmpeg -i ".$sourceFile.".".$outputfile." 2>&1";
    exec($Command, $result, $status);

    if($status !== 0) {
        echo "Error!";
    } else {
        return $result;
    }
}
于 2012-08-04T10:48:08.870 回答
0

如果您不需要输出,请尝试使用系统功能。使用第二个参数,您可以获得命令的返回值。在 unix 系统中,0返回值意味着成功和其他任何错误。

system('/bin/false', $ret);
var_dump($ret);

exec 的第三个参数也可以达到同样的效果。

于 2012-08-04T10:48:21.650 回答