メモ:mplayer、ffmpeg
ウェブ上の映像の保存についてのメモ。
# mplayer -vo mpegpes -ao mpegpes URL
# ffmpeg -sameq -i grab.mpg output.mpg
で、たぶん特に情報をロスせずに保存できると思う。mplayerは画面に出力しなければコマ落ちさせることはないみたいだ。ffmpegは-sameqでソースと同じクオリティになるらしい。本当かな。MPEG-PESというのはビデオカードでMPEGのデコードをするときのためのデータフォーマットで、mplayerはビデオカードに書く代わりにファイルに書き出してくれるらしい。普通のMPEGプレイヤーはMPEG-PESを入力にはできないみたいだけど、mplayerとffmpegは理解できるみたいだ。ffmpegで普通のMPEGに変換&そこそこの圧縮ができる。もちろん-sameqなどつけなければもっと小さくなる。 で、wmaファイルをMP3ファイルに変換するのもmplayerでできる。
# mplayer -ao pcm input.wma -aofile temp.wav
# lame temp.wav output.mp3
# rm temp.wav
mplayerはなんでフィルタにならないんだ。…別にいいけど。 (追記) 2004-04-06 22:31 フィルタか…名前つきFIFO(「名前つきパイプ」だっけ? どっちでもいいや)でできないかな。ディスク容量が足りないときとかに。
# mkfifo tmpfifo
# mplayer -vo mpegpes:tmpfifo -ao mpegpes URL &
# ffmpeg -sameq -i tmpfifo outfile.mpg
# rm tmpfifo
# mkfifo tmpfifo
# mplayer -ao pcm input.wma -aofile tmpfifo &
# lame tmpfifo output.mp3
# rm tmpfifo
…手間、増えてるし(笑) (追記) 2004-04-06 22:36 なんかうろ覚えなんだけど、名前つきパイプって出力側の処理から書いたほうがいいんだっけ? ほとんど使わないから記憶に残ってないな、mkfifo。