gpt4 book ai didi

php - 我想知道如何在执行 ffmpeg 命令时获取成功或失败消息

转载 作者:可可西里 更新时间:2023-10-31 23:03:09 25 4
gpt4 key购买 nike

我正在使用 ffmpeg 命令为视频加水印。它可以工作,但我需要检测它是否成功执行。我的命令:

    $mark = "ffmpeg -i ".$inputvideo." -i logo.png -filter_complex ". '"overlay=x=(main_w-overlay_w):y=(main_h-overlay_h)"'." ".uniqid()."html56.mp4";

对于输出我使用了类似的东西:

$x = exec($mark);
print_r($x);

但是我没有打印任何东西来代替 $x。经过一番搜索后,我找到了 exec 命令的声明

string exec ( string $command [, array &$output [, int &$return_var ]] )
$s=exec($mark,$var);

$var is my return var.

现在,当我打印 $var 时,我得到一个空数组。请提出我遗漏的地方。

最佳答案

string exec ( string $command [, array &$output [, int &$return_var ]] )

当你执行 $s = exec($mark, $var); 你的 $var 对应于 $output 是空的,因为ffmpeg 将信息输出到 sderr,因为 stdout 可能用于实际数据输出。

如果要获取返回码,则必须指定所有前面的可选参数,即使您不使用它们也是如此:

$s = exec($mark, $output, $var)

如果您需要实际输出,您可以将 stderr 重定向到 stdout,因为您没有通过放置 2>&1 来使用它在命令的末尾或使用 PHP 的 proc_open()执行它。

关于php - 我想知道如何在执行 ffmpeg 命令时获取成功或失败消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33515665/

25 4 0
文章推荐: php - 如何实现这个: object->object->property
文章推荐: javascript - 在 textarea 字段上实现 maxlength 的真正 "Angularesque"方法是什么?
文章推荐: css - 将图像裁剪为
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com