以前、携帯動画変換君のffmpegをバージョンアップしようとして、面倒臭くて諦めた経緯がありますが、Mencoderの爆速っぷりを見るに連れ、「最新のffmpegもそれなりに速くなっているよね?」と思い立ち、ffmpegの新しいバージョンをゲット。今更ながらお勉強。
ffmpegをキチンとコマンドラインから使う方法を覚書きです。
ffmpegの最新版をダウンロード
最新のffmpegをいち早くビルドし、配布されているサイトの紹介。
お気に入りの動画を携帯で見よう
▲かなり頻繁に新しいffmpegを配布されています。
こちらでFFmpeg最新版(2008/12/25現在)、rev.16311をダウンロード。
お目当てのx264が高速化処理されたバージョンのようで、期待大です。
▲DLファイルを解凍すると、ffmpeg.exeと云うファイル1個が生成されます。
このサイトで配布されているffmpegは単体で作動します。
携帯動画変換君のffmpegを最新にする
私は最新のffmpegを「携帯動画変換君にブチ込んで使用する」という方法を考えていますが、如何せんバージョンが違いすぎてそのままでは携帯動画変換君でマトモに作動しません。
てな事で下調べも含め、コマンドライン(CUI)からの使い方を紹介。
携帯動画変換君のFFmpegを最新版に入れ替える方法は以下を参照。
こちら≫携帯動画変換君を改造:ffmpegを新しいバージョンに
ffmpegのコマンドラインでの使い方-コマンドプロンプトの起動
コマンドラインが全く苦手な人のためにもイチから説明。
▲Windowsスタートから「ファイル名を指定して実行」をクリック
▲「cmd」と入力。ENTERまたは「OK」クリック
▲昔ながらのDOSプロンプト画面が現れます。
ffmpegはここでコマンドラインを入力しながら操作します。
ffmpegのコマンドラインでの使い方-コマンドプロンプトで階層(フォルダ)移動
▲ffmpeg格納場所の一例。
「Eドライブ」≫「eフォルダ」≫「gpフォルダ」の中に入っている場合、以下の様に入力して目的のフォルダにたどり着きます。
cd e:e\gp\(改行)
e:(改行)
これで「Eドライブ」≫「eフォルダ」≫「gpフォルダ」内のファイルにアクセスできます
ここで「ffmpeg」と入力すると。。。
▲ffmpegが起動します。
バージョン情報や、使用できるコーデックの一覧が確認できます。
携帯動画変換君のffmpegでも同様の作業を行うと、使用できるコーデックの違いが確認できます。
ちなみに今回ダウンロードしたffmpegの起動メッセージは以下
FFmpeg version SVN-r16311, Copyright (c) 2000-2008 FabriceBellard, et al.
configuration: --enable-memalign-hack --enable-postproc--enable-swscale --ena
ble-gpl --enable-libfaac--enable-libfaad --enable-libgsm --enable-libmp3lame --
enable-libnut --enable-libvorbis --enable-libtheora --enable-libxvid--enable-li
bx264--disable-ffserver --disable-ffplay --enable-avisynth --enable-small--ena
ble-pthreads --extra-ldflags=-static --extra-cflags=-mtune=athlon64-mfpmath=sse
-msse
libavutil 49.12. 0 /49.12. 0
libavcodec 52. 8. 0 / 52. 8. 0
libavformat 52.23. 1 / 52.23. 1
libavdevice 52. 1. 0 / 52. 1. 0
libswscale 0. 6. 1/ 0. 6. 1
libpostproc 51. 2. 0 / 51. 2. 0
built on Dec 26 2008 04:43:34, gcc: 4.3.2
▲赤字にしてある所は、今回私がメインで使用を考えているh.264とaacのコマンドライン部分。携帯動画変換君と記述が異なっています。
DOSプロンプト上で
ffmpeg -h > help.txt
と入力すると「help.txt」にffmpegのHelp一覧が、
ffmpeg -formats > formats.txt
と入力すると同様にフォーマット一覧が生成されます。
▲中身は英語。全部読むのは大変。フォーマット一覧に至っては、今の私にはまだ理解不能(^_^;
いよいよコマンドラインからffmpegで変換
私は完成したコマンドラインは携帯動画変換君にブチ込むつもりだし、細かいオプションを全て覚える気も殆ど無い。
と言う事でテキトーに携帯動画変換君の「default_setting」フォルダ内のコマンドラインを拝借し、トライ&エラーの繰り返し。
▲変換君のコマンドをそのまま貼り付けるとこんなエラーが。
上でも書いたけど、新しいffmpegのh264コーデックの指定は「-vcodec libx264」です。
英語のヘルプを読むのがとんでもなく面倒に感じてしまったので、
エラーメッセージが出る度に、それを参考に修正orそのコマンドを削除していきました。
(効率悪いなぁ(^_^;)
とかなんとか繰り返しているウチに、ものの10分程度でエラーを吐かず無事変換。
ffmpeg -y -i test.avi -vcodec libx264 -coder1 -bufsize 256k -g 12 -aspect 1.7777 -b 1500k -acodec libfaac -ac 2 -ar48000 -ab 128k -f mp4 -threads 2 test.mp4
こんなカンジのコマンドでh264 aac形式に変換可能に。
最適化も随分行われているようで、CPU使用率は変換君のFFMPEG使用時の60~70%から90~100%にアップ。変換速度も30%アップ。
んでもまだMencoderの最速設定と比較すると半分以下の速度。
色々オプションを付け足していくともっと高速化するかな?
と言う事で続きはコチラ
≫最新のFFmpegを色々いじってみた