laravel-ffmpegでオーディオファイルの長さ(時間)を取得する方法

laravel-ffmpegはすでにインストール済みとする。

use FFMpeg;
use FFMpeg\Format\VideoInterface;
use FFMpeg\Media\Video;
use ProtoneMedia\LaravelFFMpeg\Filters\WatermarkFactory;
use ProtoneMedia\LaravelFFMpeg\Filters\WatermarkFilter;
use ProtoneMedia\LaravelFFMpeg\Filesystem\Media;

public function getAudioInfo(){
    $file =  'private/hogehoge.mp3'; //ファイルのパス
    $media = FFMpeg::open($file);

    $info=array(
        'time'=>$this->sToM($media->getDurationInSeconds())
    );
    return $info;
}

private  function sToM($seconds) {   
    //秒を分に変換
    $hours = floor($seconds / 3600);
    $minutes = floor(($seconds / 60) % 60);
    $seconds = $seconds % 60;
    $hms = sprintf("%02d:%02d",  $minutes, $seconds);
    return $hms;
}

$infoのtimeを参照すると、XX:XX形式でオーディオファイルの長さが表示される。

 

公式っぽいドキュメントがないので、手探りで行っている状態。

 

無制限に質問可能なプログラミングスクール!

万が一転職できない場合は、転職保障全額返金できるコースもあり!!

無制限のメンター質問対応

 

DMMウェブキャンプでプログラミングを学習しませんか?

独学より成長スピードをブーストさせましょう!

 

まずは無料相談から!

おすすめの記事