1

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 を使用してファイルがまだ変換されているかどうかを確認したいのですが、電子メールを送信する必要がない場合は、これを達成する方法を教えてもらえますか?

また、上記のコードを使用してファイルが正常に変換されているにもかかわらず、出力は常に「エラー」になります。これについても誰か助けてもらえますか?

ありがとう

4

1 に答える 1

2

以下はうまくいくはずです:

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の使用を検討してください(例を参照)。

于 2012-06-14T06:23:54.013 に答える