php - FFMPEG 视频转换完成后发送电子邮件 (php)

标签 php ffmpeg

我有一个使用 ffmpeg 转换 avi 的基本 php 脚本:

<?php
if (exec("/usr/bin/ffmpeg -i testvideo.avi -sameq -ar 22050 convertvideo.mp4 2> logfile.log")){ 
echo "Success";
}else{ 
    echo "Error"; 
}
?>

现在作为对此的扩展,我想使用 php 检查文件是否仍在转换,如果不应该发送电子邮件,谁能告诉我如何实现这一目标?

此外,尽管使用了上面的代码并且文件被成功转换,但我总是得到的输出是“错误”,任何人都可以帮助解决这个问题吗?

谢谢

最佳答案

以下应该有效:

exec("/usr/bin/ffmpeg -i testvideo.avi -sameq -ar 22050 convertvideo.mp4 2> logfile.log", $ret, $val);

if ($val != 0) {        
    // Video conversion fail for some reason
    $msg = "Error converting video: $ret" . "\n";
    echo ($msg);

    // send the email
    mail("no@body.com", "Error convering video", $msg);
}

如果您想为 ffmpeg 进程设置超时,请考虑使用 proc_open方式(see example)。

关于php - FFMPEG 视频转换完成后发送电子邮件 (php),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10987114/

相关文章:

qt - 如何使用 gcc 命令单独制作 ffmpeg 可执行文件?

c++ - 正确读取被 ID3 标签打乱的 MP3 文件

php - 使用 PHP 从 FFMPEG 读取实时输出

php - 使用 PHP 中的 webhook 将文件上传到 Discord

php - 拉维尔护照 404

php - 你能把一个数组内爆成函数参数吗?

javascript - 除了 Fade、nivoSlider 之外没有其他过渡效果

visual-c++ - 数据包 (AV_PIX_FMT_UYVY422) 到平面 (AV_PIX_FMT_YUVJ422P) 格式转换

java - 创建一个 android ffmpeg 可执行文件

php - 从另一个 cron 作业创建 cron 作业