ffmpegで遊ぶ 音声編
この記事はまだまとめられてないです
メモ代わりに使用しています
気が向いたらまとめます
ffmpeg はさまざまな codec を取り込んでコンパイルするわけだけど、
とりあえず何も取り込まないでコンパイルしてみます
svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
としてソースをゲット
cd ffmpeg ./configure --prefix=/usr/local/ffmpeg make make install
よし適当にやってみよう
ffmpeg -i in_my_life.mp3 in_my_life.wav FFmpeg version SVN-r11123, Copyright (c) 2000-2007 Fabrice Bellard, et al. configuration: --prefix=/usr/local/ffmpeg libavutil version: 49.5.0 libavcodec version: 51.48.0 libavformat version: 52.1.0 built on Dec 12 2007 16:33:23, gcc: 3.4.6 20060404 (Red Hat 3.4.6-8) Input #0, mp3, from 'in_my_life.mp3': Duration: 00:02:27.8, start: 0.000000, bitrate: 159 kb/s Stream #0.0: Audio: mp3, 44100 Hz, stereo, 160 kb/s Output #0, wav, to 'in_my_life.wav': Stream #0.0: Audio: pcm_s16le, 44100 Hz, stereo, 1411 kb/s Stream mapping: Stream #0.0 -> #0.0 Press [q] to stop encoding overread, skip -6 enddists: -4 -4 overread, skip -5 enddists: -2 -2 overread, skip -6 enddists: -4 -4 ... ... ... overread, skip -6 enddists: -4 -4 overread, skip -5 enddists: -2 -2 size= 25434kB time=147.6 bitrate=1411.2kbits/s video:0kB audio:25434kB global headers:0kB muxing overhead 0.000169%
なんか overread, skip -* enddists: -* -*ってのがでまくったけど
とりあえずは
mp3 → wav OK
逆もやってみよう
ffmpeg -i in_my_life.wav -ab 160000 in_my_life_enc.mp3 FFmpeg version SVN-r11123, Copyright (c) 2000-2007 Fabrice Bellard, et al. configuration: --prefix=/usr/local/ffmpeg libavutil version: 49.5.0 libavcodec version: 51.48.0 libavformat version: 52.1.0 built on Dec 12 2007 16:33:23, gcc: 3.4.6 20060404 (Red Hat 3.4.6-8) Input #0, wav, from 'in_my_life.wav': Duration: 00:02:27.6, bitrate: 1411 kb/s Stream #0.0: Audio: pcm_s16le, 44100 Hz, stereo, 1411 kb/s Output #0, mp2, to 'in_my_life_enc.mp3': Stream #0.0: Audio: mp2, 44100 Hz, stereo, 160 kb/s Stream mapping: Stream #0.0 -> #0.0 Press [q] to stop encoding size= 2884kB time=147.6 bitrate= 160.0kbits/s video:0kB audio:2884kB global headers:0kB muxing overhead 0.000000%
ありゃ? mp2 で output してるんじゃね?
QuickTime で再生してあげると認識できないって言う
拡張子をmp2にしてあげたらいけた
やっぱ codec ないとだめなんかな
じゃ mp3lame を組み込んでみよっか
http://lame.sourceforge.net/ mp3lame はオープンソースの mp3 codec です 最新版のソースを取ってきましょう 展開してディレクトリへ ./configure --prefix=/usr/local/ffmpeg --enable-libmp3lame make make install
んで再び
ffmpeg -i in_my_life_lm.wav -ab 160000 in_my_life_enc.mp3 FFmpeg version SVN-r11123, Copyright (c) 2000-2007 Fabrice Bellard, et al. configuration: --prefix=/usr/local/ffmpeg/ --enable-libmp3lame libavutil version: 49.5.0 libavcodec version: 51.48.0 libavformat version: 52.1.0 built on Dec 12 2007 18:07:01, gcc: 3.4.6 20060404 (Red Hat 3.4.6-8) Input #0, wav, from 'in_my_life_lm.wav': Duration: 00:02:27.6, bitrate: 1411 kb/s Stream #0.0: Audio: pcm_s16le, 44100 Hz, stereo, 1411 kb/s Output #0, mp3, to 'in_my_life_enc.mp3': Stream #0.0: Audio: libmp3lame, 44100 Hz, stereo, 160 kb/s Stream mapping: Stream #0.0 -> #0.0 Press [q] to stop encoding size= 2885kB time=147.7 bitrate= 160.0kbits/s video:0kB audio:2885kB global headers:0kB muxing overhead 0.001049%
おーちゃんとmp3で出たね、よしよし
QuickTimeでもOK
気になる点は ./configure のデフォルトが --enable-static なのに
ldconfig に書き込まないとだめなんだよねー
static になってねー
音声編はここまでー
次回は動画をいじってみよう