正常に機能した場合、video.mpgは現在の作業ディレクトリに保存されています。必要に応じて、ファイル名を絶対パスに変更できます。
exec()関数が正常に実行されたかどうかを確認するには、3 番目の引数を渡して終了ステータスを取得します。
exec('ffmpeg -f image2 -i image%d.jpg video.mpg', $output, $exit_status);
成功した場合、値$exit_statusが得られるため、次のようになります。0
if ($exit_status === 0) {
// ran fine
} else {
// failed...
}
失敗している場合は、でエラーを取得したい場合があります$output。STDERRこの方法でオリジナルをSTDOUT無視することができますSTDOUT:
exec('ffmpeg -f image2 -i image%d.jpg video.mpg 2>&1 >/dev/null', $output, $exit_status);
次に、ダンプ$outputして、何が得られたかを確認できSTDERRます。
if ($exit_status !== 0) {
print implode("\n", $output);
}
video.mpgファイルが既に存在する場合、コマンドはスタックします。フラグを渡して-y、ffmpeg既存のファイルを上書きすることをお勧めします。
exec('ffmpeg -y -f image2 -i image%d.jpg video.mpg 2>&1 >/dev/null', $output, $exit_status);