ffmpegを使うとMP4などの動画ファイルから、簡単にMP3に変換することができます。コマンドラインから以下のような感じでコマンド一発でできます。

ffmpeg -i input.mp4 -ab 128 output.mp3

Windowsの場合 *

Windowsの場合、Ffmpegを梱包したバッチファイル、「MP4toMP3.bat」を作りました。以下よりダウンロードして使うことができます。バッチファイルに、動画ファイルをドラッグ・アンド・ドロップするだけで、MP3ファイルを作成します。

Mac OS Xの場合 *

Mac OS Xなら、以下の感じで、Homebrewを使ってffmpegをインストールできます。

brew install ffmpeg

こちらは、ターミナルから上記のコマンドを入力すると手軽に変換できます。

PHPの変換スクリプト *

結局のところ、コマンドラインを呼び出すだけなのですが、PHPで変換スクリプトを作ってみました。

#!/usr/bin/php
<?php
if (count($argv) <= 1) {
  echo "[USES] mp4to3.php a.mp4 b.mp4 c.mp4 ...";
  exit;
}
foreach ($argv as $f) {
  $output = preg_replace("/\.mp4$/", ".mp3", $f);
  $cmd = "ffmpeg -i $f -ab 128 $output";
  echo "----------------------------------\n";
  echo "+ [input ] $f\n";
  echo "| [output] $output\n";
  echo exec($cmd);
}