2007年2月16日(金)
DVDの動画をW-ZERO3(VGA画面用という事)で鑑賞するために変換する。
W-ZERO3には2GBのminiSDが刺さっているので映画2〜3本ぐらいは余裕で入るし、DivX程度の動画ならストレス無く鑑賞出来る。
「未知との遭遇」を字幕付きDivX映像、「男たちのYAMATO」をXvid映像へ変換してみる。
作業は全て「WindowsXP」上にて行う。
目次 | ||
準備 | ||
「未知との遭遇」 | ||
DVDからのISOファイル吸い出し(リッピング) | ||
ISOファイルの解凍(VOBの取り出し) | ||
映像と音声の分離 | ||
AVIへの変換 | ||
フィルタ処理 | ||
アスペクト比の変換 | ||
字幕ファイルの設定 | ||
エンコード出力 | ||
DivXへの変換(映像) | ||
MP3への変換(音声) |
DVDからのリッピング:DVD Decrypter(フリー) | |
リソース | SetupDVDDecrypter_3.5.4.0.exe(899,414 bytes) |
URL | http://fileforum.betanews.com/detail/DVD_Decrypter/1011845169/1 |
ISOファイルのマウント(フリーウェア) | |
リソース | daemon408-139-x86.exe(1,527,192 bytes) |
URL | http://www.daemon-tools.cc/dtcc/download.php |
映像と音声の分離:DVD2AVI(フリー) | |
リソース | DVD2AVI_1.77.3.zip |
URL | http://www.divx-digest.com/software/dvd2avi.html |
VFAPI Reader Codec:VFAPIConv(フリー) | |
リソース | VFAPICodecV105.zip(486,119 bytes) |
URL | http://www.yks.ne.jp/~hori/VFAPICodec.html |
備考 | Readme.txtに従って、vifpset.batを実行してインストールする。 |
動画処理:VirtualDubMod(フリー) | |
リソース | VirtualDubMod_1_5_10_2_All_inclusive.zip(1,663,518 bytes) |
URL | http://virtualdubmod.sourceforge.net/ |
字幕フィルター:VobSub(フリー) | |
リソース | VobSub_2.23.exe(734,160 bytes) |
URL | http://www.divx-digest.com/software/vobsub.html |
備考 |
VobSub_2.23.exeも実行してインストール。 VirtualDubModから呼び出せるようになる。 |
ビデオ コーデック | |
リソース | DivXInstaller.exe |
URL | http://www.divx.com/?lang=ja |
オーディオ コーデック | |
リソース | lame-3.96.1.zip |
URL | http://www.rarewares.org/mp3.html |
DVDをセット後、「Mode」を「ISO」に設定し、「Destination」で保存先を指定後、 「DVD->HDのアイコン」をクリックすれば吸い出しが始まる。 吸い出されたISOファイルはvlcなどで直接再生可能、DVDへの書き戻しも可能なので、 バックアップという意味ではこのままの形式で保存しておくのが安心である。
modeをISOに設定する | 7.2GBのISOファイルの吸い出しに成功 |
DVD Decrypterで吸い出したISO形式ファイルを解凍し、VOBファイルなどを取り出す。 尚、DVD Decrypterにて「Mode」を「File」にすればVOBで直接取り出せるのでこの作業は省略できる。 解凍ツールにはフリーウェアの extractnow やシェアウェアの WinRAR などがあるが、ISOファイルを直接マウントすれば解凍する必要は無い。 WindowsXPでは、DAEMON Tools 4.08が使用出来る。
マウントツール |
DVD2AVIの「ファイル」-「プロジェクトの保存」にて、 WinRARで解凍したVOBファイルから映像(d2v)と音声(wav)を取り出す。 処理には数分かかる。
読み込むファイルは映画の本編のみ |
トラック1(英語)を選択 | WAVにて出力 | ドルビーデコードの指定 |
プロジェクトの保存で作業開始 | wavとd2vファイルができる |
d2vのままでは VirtualDubModで読み込めないので、更にAVIへ変換する。 処理は数秒で終わる。
VFAPIConvを実行 | 参照形式を確認して実行 |
aviファイルが作成 |
VirtualDubModを起動しmain_d2v_vfapi.aviを読み込む。
[Video]-[Filter]にてフィルターを設定し、映像と音声のコーデックを指定して出力。
※これらの処理には TMPGEncや AviUtl などの動画処理ソフトが使えるが、字幕処理をするためVirtualDubModを使用する。
今回使用したフィルターは、次の3つのみ。
1.インターレス解除(deinterlace)
2.VGAへのクロップとアスペクト変換(resize)
3.字幕(日本語と英語)(VobSub)
使用したフィルタは4つのみ |
W-ZERO3のVGA画面(640x480)で再生するためアスペクト比を調整する。 調整にはresizeとcropを使用する。
まず
vlc
にて画像キャプチャを取り、どのような解像度で画像が出力されているかを見る。
画像キャプチャは「ビデオ」-「スナップショット」にて行える。
キャプチャ画像は「一般ビデオ設定」の「ビデオスナップショット」に設定したフォルダに保存される。
VLCでスナップショットを撮る | スナップショットの保存先を指定 |
キャプチャした画像を調べると、画像サイズは[853x480](アスペクト比が16:9)、 そのうち映像部分は(およそ)[837x352]となっており、 映画スクリーンの[2.39:1]とほぼ同じであることがわかる。 DVD規格の解像度は[720x480]なので、fig40の様なイメージで映像が入っている。
VLCでキャプチャ[837x352] | 【fig40】DVDの中では[704x352] |
つまり、この[837x356]の[2.39:1]の映像部分をクロップして[640x480]の画面内に埋め込めば良いことになる。
しかし、ここに[2.39:1]の映像を埋め込むと上下が妙に空いた(MOTTAINAI)事になってしまう。
そこで、左右の映像をカットして[640x480]を有効に使うのだが、どこまでカットするか、又は全くカットしないかは好みの分かれるところである。
映像部分は[704x356] | [2.39:1]へ変換 | |
左右を全くカットしない | ||
左右を5%づつカット。今回これを採用。 | ||
左右を10%づつカット |
まず、「Filters」の「Cropping...」にて映像の無い部分を取り除く。
X方向を両側から44ドットを指定し632ドットに(720-44x2)。
Y方向を両側から64ドットを指定し352ドットに(480-64x2)。
クロップ処理 |
クロックした[632x352]を[640x300]にアスペクトを変換する。 (X方向は299ではなく300にした)
アスペクト変換 |
字幕の情報は、VirtualDubModにてAVIファイルを読み込んだ後、 「Video」-「Filters...」からVobSubを呼び出して作成する。
main_d2v_vfapi.aviを読み込む | 「Video」-「Filters...」から | VTS_01_0.IFOを開く |
IFOファイルを開くと、字幕の変換ウィンドウが現れるので、「OK」を押して字幕情報を作成する。 処理には数分かかる。
字幕変換ウィンドウ |
処理が終わると、VTS_01_0.idxとVTS_01_0.subファイルが作成されるので、 VTS_01_0.idxを開く。
idxとsubファイルが作成された | idxを開く |
ここで、ようやく字幕フィルターのウィンドウが開く。 プルダウンメニューで字幕が選択できるので「01-Japanese」を選ぶ。 字幕の位置は「赤の領域」を好みに応じてマウスで設定する。 今回は字幕が映像にかぶらないようにY方向に40下げた。
字幕フィルターのウィンドウ | 字幕の位置を少し下に下げる |
同様の手順で英語の字幕をスクリーンの上に挿入する。
英語の字幕はスケールを少し小さくした |
「OK」にて設定を終え、メイン画面にて字幕が入っていることを確認する。
メイン画面での字幕の確認 |
映像はDivX(quantizer=8)、音声はMP3(128kbps)を使用する。
24fpsへの変換。「deinterlace」との関係は未調査。
24fpsへ変換 |
設定は、音声ファイル(WAV)を[Streams]-[Stream list]に追加する。
Stream listへの追加 |
追加したWAVに対して圧縮設定(Compression)を行う。 コーデックには「lame MP3」を適用。
Stream listへの追加 |
lame MP3を選択 |
[Range]にて最初の760フレームはカットする。
スタート位置を720フレームに |
[Save As]にて保存。 この時、[]にチェックを入れておくと、ジョブリストに登録される。 [File]-[Job control...]にてジョブの制御が可能となり、ジョブ処理終了後のシャットダウン制御も出来る。 が、字幕フィルタがあるとうまくジョブが走らない。
エンコード開始 | ジョブのシャットダウン指定 |
作成したファイルは約380MB。PentiumM760で約2時間。 ファイル名をDivXq10.avi(DivXのクォンタイザー10でエンコード)に変更しておく。
作成されたファイル |
画像調整及びインターフェース | |
リソース | TMPGEnc-2.524.63.181-Free.zip |
URL | http://www.tmpgenc.net/ja/j_main.html |
ビデオ コーデック | |
リソース | DivXInstaller.exe |
URL | http://www.divx.com/?lang=ja |
オーディオ コーデック | |
リソース | lame-3.96.1.zip |
URL | http://www.rarewares.org/mp3.html |
DVD2AVIで作成した映像(d2v)と音声(wav)をTMPGEnc(Free版)で読み込む
(映像が読み込めない場合、DVD2AVIを起動させてみる)。
ソース範囲、画像クリップ、インターレース解除、フィルタなどの設定を
好みに応じて行い、AVI出力にてDivXやH.264などの外部コーデックに引き渡す。
TMPGEnc内蔵のコーデックは使用しない。
フリー版のTMPGEnc |
DivXとlameにてAVI出力を行う |
DivXの1パス-品質保存は可変ビットレートでのエンコードを意味する。 ターゲットクォンタイザー(quantizer)は画質を決めるパラメータで 好みに応じて行う。値を大きくするほど「ブロックノイズ」が目立つようになる 代わりにファイルサイズが小さくなる。
DivXの設定画面 |
真夏の連続エンコード24時間では、室温30℃に対しCPU(PentiumM-760)温度が 73℃まで上昇したが、ハングアップはしていなかった。
いわゆるH264なので高画質である。 ソースのみ公開されているので、自分でビルドする(Linuxでは普通だが)か、ビルド済みのものを適当に探してインストールする。 x264のquantizerはDivXなどとは全くの別物。 W-ZERO3のTCPMP 0.72RC1では再生できない。
ビデオ コーデック | |
リソース | x264-sse2-rev614.lzh (242,906 bytes) |
URL | http://developers.videolan.org/x264.html |
x264のインストール |
Y.Ikeuchi