你可以像这样得到中间:
<?php
// get duration
$time = exec("/local/bin/ffmpeg -i $fileName.flv 2>&1 | grep 'Duration' | cut -d ' ' -f 4 | sed s/,//");
// duration in seconds; half the duration = middle
$duration = explode(":",$time);
$durationInSeconds = $duration[0]*3600 + $duration[1]*60+ round($duration[2]);
$durationMiddle = $durationInSeconds/2;
// recalculte to minutes and seconds
$minutes = $durationMiddle/60;
$realMinutes = floor($minutes);
$realSeconds = round(($minutes-$real_minutes)*60);
?>
然后将您的命令与$realMinutes
and一起使用$realSeconds
:
/usr/local/bin/ffmpeg -ss $realMinutes:$realSeconds:1 -i $fileName.flv -s 150x100 -vframes 1 $fileName.jpg