我需要特定的代码来检查 PHP 是否已使用 ffmpeg 编码视频。我只需要一个简单的真/假检查。如果编码完成则为 true,如果未完成则为 false。另外,语言是 PHP,并且我安装了 ffmpeg-php。
更多信息:我使用的是 Linux。
代码如下
convertToFlv( $input, $output );
function convertToFlv( $input, $output ) {
echo "Converting $input to $output";
$command = "ffmpeg -y -i $input -acodec libfaac -ar 44100 -ab 96k -vcodec libx264 -level 41 -crf 20 -bufsize 20000k -maxrate 25000k -g 250 -r 20 -s 640x480 -coder 1 -flags +loop -cmp +chroma -partitions +parti4x4+partp8x8+partb8x8 -flags2 +brdo+dct8x8+bpyramid -me umh -subq 7 -me_range 16 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -rc_eq 'blurCplx^(1-qComp)' -bf 16 -b_strategy 1 -bidir_refine 1 -refs 6 -deblockalpha 0 -deblockbeta 0 $output";
shell_exec( $command );
}
最佳答案
您可以在 php exec() 中的 ffmpeg 之后添加另一行代码,以在命令行中运行 php 页面。
只需用“;”结束 ffmpeg 行即可并输入“php”,然后输入要运行的 php 脚本的绝对位置。您可以添加一个 get 变量,其中包含您等待转换的视频的 id:
$cmd = "ffmpeg -i[SOURCE FILE] [OUTPUT FILE]; php /public_html/etc/ffmpegComplete.php?videoID=101";
exec( $cmd );
关于php - 如何检查 ffmpeg 是否用 PHP 完成了视频编码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4799326/