[ffmpeg] 動画から音声を抜き出すには

YouTubeで好みの音楽ビデオを見つけた時など、音楽だけを抜き出してiPhoneで持ち歩きたいと思うことがある。iPhoneではビデオはバックグラウンド再生できないのに加えて、画面表示をオフにできないので電池も消耗するし。このような場合、映像から音楽だけを抜き出してMP3ファイルなどに保存できると助かる。

以下のオプションで動画から音声を抜き出してMP3ファイルに保存できる。

音声を抜き出す明示的な指定をしていないけど、出力ファイル形式をmp3とすることで音声だけが出力されるみたい。以下に各オプションの意味を簡単に。

オーディオチャンネル数。

オーディオサンプリング周波数。

オーディオビットレート。

ファイル形式。

この例では音声トラックはオプションに従って再エンコードされる。もし映像ファイルに保存されているエンコードのまま音声トラックを抜き出したければ、オーディオコーデックをcopyと指定すればいい (-acodec copy)。例えばAACエンコードされている場合には、MP3に再エンコードするよりもそのままAAC(.m4a)で保存したほうが高音質が維持できる。

参考サイト

ffmpeg でムービーからオーディオデータを取り出す – tsntsumi’s NOOTO
http://d.hatena.ne.jp/tsntsumi/20100125/ExtractAudioFromMovie

FFmpegをコマンドラインからちょこっと使ってみる オーディオ編 – opamp_sando’s blog
http://opamp.hatenablog.jp/entry/20110506/1304677232

1 Entry per Day: ffmpegで動画から音声を分離
http://mstssk.blogspot.com/2008/07/ffmpeg.html