3

FFMpeg がインストールされており、機能していることはわかっていますが、PHP を介して flv ビデオから継続時間を取得しようとしていますが、このコードを使用すると:

関数 mbmGetFLVDuration($file){

/*  
* Determine video duration with ffmpeg   
* ffmpeg should be installed on your server.  
*/  

//$time = 00:00:00.000 format   
$ffmpeg = "../ffmpeg/ffmpeg";

$time =  exec("$ffmpeg -i $file 2>&1 | grep 'Duration' | cut -d ' ' -f 4 | sed s/,//");   

$duration = explode(":",$time);   
$duration_in_seconds = $duration[0]*3600 + $duration[1]*60+ round($duration[2]);   

return $duration_in_seconds;   

}

と:

$duration = mbmGetFLVDuration(' http://www.videoaddsite.com/videos/intro.flv '); $期間をエコーし​​ます。

220 の出力が得られます。ビデオは 3:40 です。私が間違っていること、または他に使用できるものがある場合、何か助けてもらえますか?

4

3 に答える 3

3

問題はありません。220 秒は 3:40 です。

分と秒を取得するには、次の変換を使用します。

<?php
$seconds = 220;
$minutes = $seconds/60;
$real_minutes = floor($minutes);
$real_seconds = round(($minutes-$real_minutes)*60);
?>

$real_minutes3 に$real_secondsなり、40 になります。

于 2013-02-09T20:18:23.823 に答える