CLIタイプの便利なビデオ・コンバーターmencoder
mencoderで扱えるファイル形式は、MPEG/VOB、AVI、ASF/WMA/WMV、RM、QT/MOV/MP4、Ogg/OGM、MKV、VIVO、FLI、FLVだ。コマンドのオプションは多いが構文は直感的でわかりやすく、マルチメディアの変換なら、ほぼあらゆる処理が可能だ。
たとえば、MPGファイルをAVI形式に変換する場合のコマンドは次の通り。
mencoder file.mpg -o file.avi -ovc lavc -oac lavc
ここで、「-ovc」と「-oac」は出力時に使うビデオ・コーデックとオーディオ・コーデックを指定するオプションで、システムにインストールされているビデオ・コーデックとオーディオ・コーデックはコマンド「mencoder -ovc help」または「mencoder -oac help」で調べることができる。
オーディオを圧縮せずPCMにしたい場合は、acodecオプションでオーディオ・コーデックのタイプを指定すればよい。
mencoder file.mpg -o file.avi -ovc lavc -oac lavc -lavcopts acodec=pcm
MP3で圧縮する場合は、abitrateオプションでビットレートを指定することもできる。
mencoder file.mpg -o file.avi -ovc lavc -oac lavc -lavcopts acodec=libmp3lame:abitrate=128
libmp3lameのエンコードを詳細に指定したい場合は、lameoptsオプションを使う。たとえば、可変ビットレート方式で圧縮する場合は次のように指定する。
mencoder file -o file.avi -ovc lavc -oac mp3lame -lameopts vbr=2:q=3
ここで、qには0~9のいずれかを指定する。
ビデオについても同様だ。
mencoder file.mpg -o file.avi -ovc lavc -oac lavc -lavcopts acodec=libmp3lame:abitrate=128 vcodec=xvid
ビデオを圧縮したくない場合は、vcodec=copyとする。これにより、ソース・ファイルのフレームがそのまま一画面ずつコピーされる。
xvidまたはdivxは、lavcを介さず直接指定することもできる。
mencoder -ovc xvid -oac mp3lame -o destination.avi source.avi
ビデオの品質を指定したい場合は、XviDコーデックのオプションを利用する。
mencoder -ovc xvid -oac mp3lame -xvidencopts bitrate=878 -o destination.avi source.avi
ビットレートが大きい方がビデオ・ファイルの品質は高くなるが、ファイルも大きくなる。
次に、もう少し高度な使い方を紹介しよう。まず、passオプションを使ってDVDのXviD形式のコピーを作る方法。第1のパスでファイルのコンテンツを分析し、第2のパスで、その情報に基づいて出力ファイルをエンコードする。このようにすると効果的に圧縮することができる。その代わり処理時間が少々長くなり、変換中はCPUの90%を占有することになる。
mencoder dvd:// -oac mp3lame -ovc xvid -xvidencopts pass=1 -o /dev/null mencoder dvd:// -oac mp3lame -ovc xvid -xvidencopts pass=2:bitrate=800 -o xvidfile.avi
bitrateオプションには次のような使い方もある。たとえば、DVDを700MBのXviDファイルにしたい場合、次のコマンドで、生成されるAVIファイルのサイズを強制的に700MBにすることができる。
mencoder dvd:// -ovc xvid -oac mp3lame -xvidencopts bitrate=-700000 -o file.avi
CPUを独占せず、ほかのアプリケーションのために余裕を残して置きたい場合は、niceコマンドを使えばよい。次のコマンドは、スケジューリングでの優先度を最低にする。
nice -n 19 mencoder dvd:// -ovc xvid -oac mp3lame -xvidencopts bitrate=-700000 -o file.avi
あるフォルダにさまざまな形式の小さなビデオ・ファイルがたくさん溜まっているとしよう。mencoderを利用すると、オムニバスとして1つの大きなファイルに編集することができ、閲覧が容易になる。まず、オムニバスに登場する順序でファイルが一覧表示されるように、ビデオ・ファイルの名前を変更しておく。そして、次のコマンドを実行する。
mencoder * -o output.avi
特定のオーディ・ファイルを映像に挿入したい場合は、次のコマンドだ。
mencoder source.avi -o destination.avi -ovc copy -oac mp3lame -audiofile file.wav(圧縮されていない場合) mencoder source.avi -o destination.avi -ovc copy -oac copy -audiofile file.mp3(圧縮されている場合)
ビデオ・ファイルをiPodLinuxが動作する機器で使えるようにしたい場合は、次のコマンドを使う。
mencoder -ovc raw -ofps 15 -oac pcm -vf scale=176:-2,expand=176:132,format=bgr16 input.file -o output.avi
このコマンドを実行すれば、オーディオ・データは非圧縮、画像はNanoの小さな画面に完全に収まるようにスケールされたRAW AVIファイルができあがる。
出張の際にPocket PCを携行することがあるが、次のコマンドを使えば未見の映画2本が512MBのSDカードに収まり、出張のお供にすることができる。
mencoder -oac mp3lame -lameopts mode=3:preset=24 -ovc lavc -lavcopts vcodec=mpeg4:vhq:vbitrate=384:keyint=250 -vop expand="320:240" -o outputfile.avi inputfile.avi
または、
mencoder input.avi -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=200:abitrate=48 -vop scale=320:240 -oac copy -o output.avi
この2つのコマンドには、後者はファイルをスケールし、前者は映画をPDAの持つ320×240のピクセルの画面に収めるという違いがある。
ウェブカムの出力を保存したい場合は、次のコマンドを使う。
mencoder tv:// -tv driver=v4l:device=/dev/video0:width=640:height=480:forceaudio -ovc lavc -oac lavc -lavcopts vcodec=mpeg4:acodec=mp3 -ffourcc divx -o test.avi
このコマンドは、/dev/video0へのすべての出力を解像度640×480ドットで記録する。形式はDivX、オーディオはMP3だ。
以上のように、mencoderを使えば、ほぼあらゆる形式のビデオ・ファイルをさまざまに変換することができる。処理は速く、機能的にも申し分ない。GUIであろうがなかろうが、ほかのアプリケーションを使う気にはなれない。
とはいえ、GUIでビデオ変換したいという人には、KMencoder、 Konverter、Kmenc15、GMencoder、AcidRip、MenGUIがある。
Razvan T. Coloja 雑誌やオンライン・マガジンに150編を超えるLinuxやIT関連の記事を執筆。ルーマニアの雑誌の編集、同国のLinux/OSSポータル・サイトでありコミュニティーでもあるwww.mylro.orgの管理と編集にも携わっている。