Top > 動画ファイルから音声だけ吸い出す

キーワード: mplayer wav mp3 吸い出し 切り出し 分割


やりたいこと

  • 動画ファイルから音声トラックのみwaveファイルとして取り出したい

必要なもの

  • 元の動画ファイル(source.avi)
  • mplayer

やってみる

$ mplayer source.avi -benchmark -ao pcm:file=audio.wav -vo null -vc null

source.aviのオーディオトラックのみを, wave形式で audio.wav に出力してくれる.

ダイレクトでmp3エンコードする

waveファイルにするとファイルサイズが大きくなる.
どうせ次に使うときはmp3ファイルに変換する必要があるので, 中間ファイルとしてwaveをHDDに書き込むのはDISK容量とI/O時間の無駄遣いに他ならない.

そこでlameを使ってダイレクトにmp3ファイル化してみる.

$mplayer source.avi -benchmark -ao pcm:file=/dev/stdout -vc null -vo null \
  -really-quiet -quiet  2> /dev/null \
  |egrep -v '^(MPlayer|CPU|CPUflags|Compiled)' \
  |lame - audio.mp3

source.aviのオーディオトラックのみを, mp3形式で audio.mp3 に出力してくれる.

本来なら,

-realy-quiet

のオプションで, 純粋にバイナリを標準出力して欲しいところだが, 先頭の4行にどうしても

MPlayer 1.0rc1-4.1.2 (C) 2000-2006 MPlayer Team
CPU: AMD Phenom(tm) 9950 Quad-Core Processor (Family: 16, Model: 2, Stepping: 3)
CPUflags:  MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 1 SSE2: 1
Compiled for x86 CPU with extensions: MMX MMX2 3DNow 3DNowEx SSE SSE2

というメッセージが出てしまう.
これを除外して出力するために egrep -v を使っている.
実行するときは環境によって先頭のmplayerの自己主張文字列が変わることも あるので, egrep の引数は都度変更する必要がある.



コメント

最新の20件を表示しています。 コメントページを参照

お名前: URL B I U SIZE Black Maroon Green Olive Navy Purple Teal Gray Silver Red Lime Yellow Blue Fuchsia Aqua White


新規 編集 添付 名前変更 バックアップ   ホーム バックアップ リンク元   最終更新のRSS