PHPでビデオの再生時間を取得する方法


  1. getID3ライブラリを使用する方法:

getID3ライブラリは、さまざまなメディアファイルの情報を取得するための便利なツールです。以下の手順で使用できます。

Step 1: getID3ライブラリをダウンロードし、プロジェクトに組み込みます。

Step 2: ビデオファイルのパスを指定して、getID3ライブラリを使用して再生時間を取得します。

require_once('/path/to/getid3/getid3.php');
$getID3 = new getID3;
$fileInfo = $getID3->analyze('/path/to/video.mp4');
$playtimeSeconds = $fileInfo['playtime_seconds'];
echo "ビデオの再生時間: " . gmdate("H:i:s", $playtimeSeconds);
  1. FFmpegを使用する方法:

FFmpegは、多くのマルチメディア処理タスクを実行するための強力なツールです。PHPからFFmpegを使用してビデオの再生時間を取得するには、次の手順を実行します。

Step 1: FFmpegがシステムにインストールされていることを確認します。

Step 2: PHPのexec関数を使用して、FFmpegコマンドを実行し、再生時間を取得します。

$videoPath = '/path/to/video.mp4';
$ffmpegPath = '/path/to/ffmpeg'; // FFmpegのパス
$command = $ffmpegPath . ' -i ' . $videoPath . ' 2>&1 | grep Duration';
exec($command, $output);
if (!empty($output)) {
    $durationLine = explode(':', $output[0]);
    $playtimeSeconds = intval($durationLine[1]) * 3600 + intval($durationLine[2]) * 60 + intval($durationLine[3]);
    echo "ビデオの再生時間: " . gmdate("H:i:s", $playtimeSeconds);
}

上記のコード例では、ビデオのパスとFFmpegのパスを適切な値に置き換える必要があります。

これらの方法を使用すると、PHPでビデオの再生時間を取得できます。選択した方法に応じて、コードをカスタマイズしてプロジェクトに組み込んでください。