OGMサポート


VirtualDubModのOGMサポートに関してもっとも重要なのは次の2つです。

開いたOGMファイルの情報は「OGM」メニューから扱えます。
「OGM情報」でいろいろな情報を見たり、「〜コメント」でVideoやAudioストリームにコメントをつけたり、「入力の表示」でどのストリームをOGMにMuxするか決めたりすることができます。


OGMファイル中のストリームを管理する方法

OGMファイルにMuxするストリームは「OGM→入力の表示」ウィンドウで管理します。「Audio」と「Audio2」のメニューで指定したAudio以外の、すべてのストリームがここに表示されます。

このウィンドウに表示されるストリームはOGM用に改造したルーチンを使って処理されます。「Audio」、「Audio2」メニューで指定するAudioストリームはVirtualDubオリジナルのルーチンで処理されるため、OGMコンテンツには不都合があるかもしれません。

ここでOGMにMuxするストリームを「追加」したり、「削除」したり、順序を「上へ」移動したり「下へ」移動したりすることができます。入力ファイルとしてOgg、AC3、MP3、SRT(字幕)などの外部ファイルをサポートしています。

AC3やMP3などの外部ファイルにはWAVヘッダをつけておく必要があるかもしれません。例えば、メインメニューの「ファイル→保存[AVI]」や、このウィンドウの「保存[WAV]」で出力されるような形式です。

きちんと指定した形式のファイルを開くよう注意が必要です。間違った形式でファイルを開いても、そのファイルは処理されません。
入力ファイルは全て読み込まれ、以後すばやくデータを操作できるように、必要な情報はすべてメモリに読み込まれます。これは、およそAC3ファイルだと1時間で約4Mバイト、MP3やOggなら約5Mバイトくらいのメモリ消費量になります。

ファイルを開くときに、読み込み処理の途中経過を示すダイアログが現れます。 このダイアログで読み込み処理が最後まで到達しない場合、次のような原因が考えられます
  • 入力ファイルの形式がが指定したものと違っている。(要注意です)
  • 間違った同期情報で同期を取ろうとした。読み込み処理の初期で起こります。上の場合と同じく、ファイル形式のエラーとして扱われます。
  • 入力ファイルが壊れている。これは処理中のどこででも起きる可能性があります。

処理が最後まで達しなかったのに、何も警告が表示されなかった場合は、出力されるストリームに充分注意してください。

リストからストリームを選択すると、ストリームのオフセットをms単位の遅延時間で設定することができます。ここで指定するオフセットは「Audio」、「Audio2」メニューの「インターリーブ」で設定する値と同じです。つまり、プラス値を設定すれば、そのストリームの再生が遅れます。

Ogg/OGMファイルから読み込んだストリームの場合、VirtualDubModは、あらかじめストリームに設定されているオフセットの検出を試みます。 それでオフセットが検出されたら、その値をストリームのオフセットのデフォルト値とします。

要注意 :
Audioストリームの場合、この機能で不都合が起きるかもしれません。大きなオフセットを設定すると再生できないOGMが出力されたり、適切に遅延が行われないといった可能性があるようです。
可能ならば、外部ツールでAudioにエフェクトをかけて遅延させたほうがいいと思います。

「音声の分離」と「保存[WAV]」機能は、「追加」で追加されたストリームには使えません。この2つの機能は開いたOGMファイルに入っていたストリームに対して使います。(詳しくは後述)

そのストリームをOGMファイルにMuxするか否かは「Use」の項目に現れます。リスト中のストリームをダブルクリックすればこの値を変更できます。
外部ファイルから読み込んだストリームの場合は、単純に「削除」を実行しても結果は同じです。
「コメント」ボタンを押すと、ストリームにつけられたコメントを一覧したウィンドウが現れます。
VirtualDubで開いたOGMファイルや、外部のOggファイルなどから読み込んだ、あらかじめコメントがついたストリームの場合、そのコメントもリストに表示されます。 必要なら編集することも可能です。

Videoストリームと「Audio」、「Audio2」で指定したAudioストリームのコメントは、それぞれOGMメニューの「Videoコメント」、「Audioコメント」で扱います。

コメントの「追加」、「置換」、「削除」、「上へ」「下へ」での順序変更などが可能です。
ウィンドウ下部のコンボボックスには主要なコメントのタグがあらかじめ設定されています。
  • TITLE (WMPlayerやOggDSでのタイトルプロパティ)
  • LANGUAGE (WMPlayerやOggDSでの言語プロパティ)
  • LWING_GAIN (Vorbisデコーダのポストゲイン値。単位が不明ですが、私が試した感じでは1.778で+5.00dBになるようです)
  • DESCRIPTION (WMPlayerでの説明プロパティ)
  • GENRE
  • DATE
  • VERSION
  • COPYRIGHT (WMPlayerでの著作権プロパティ)
  • LICENSE
  • ARTIST (WMPLayerでの著者プロパティ)
  • PERFORMER
  • ALBUM
  • TRACKNUMBER
  • ORGANIZATION
  • LOCATION
  • CONTACT
  • ISRC
LANGUAGEプロパティを選択したり変更したりするときは、プリセットされた言語を選ぶ、別のコンボボックスが現れます。

「チャプター」ボタンを使えばチャプターリストをインポートすることもできます。チャプターリストには次のファイル形式が使えます。
  • SmartRipper
  • chapterXtractor (OGGフォーマットを選んでください)
  • DVDDecrypter (OGGフォーマットを選んでください)

要注意 : 実際、OGMファイルにどのようなチャプター情報が出力されるかは、オリジナルのチャプター情報と、ユーザがVideoに行った操作によって決まります。
具体的にいうと、ユーザが選択したVideoのパートに関係のないチャプターは書き込まれません。また、他のチャプターの時間は、ユーザが選択したパートにマッチするよう更新されます。

OGMファイルを開くと、読み込み処理の経過を表示したダイアログが現れます。ここでファイル全体を解析し、以後、すばやく編集を行えるよう必要な情報をメモリに保存します。

OGMファイルに入ったAudioやテキストなどVideo以外のストリームは「OGM→入力の表示」ウィンドウにだけ現れます。
つまり、「ファイル→ファイル情報」にも読み込んだAudioの情報は現れません。ここには「Audio」、「Audio2」メニューで指定したストリームの情報が表示されます。

OGMファイルから入力したストリームは、その名前が「Input file (%name%), %type% stream %number%」といった形式になっており、外部から読み込んだファイルと区別できます。
間違って消してしまわないように、OGMファイルからのストリームは「削除」機能が使えないようになっています。
これらのストリームは「Use」の値で無効にしてください。

OGMファイルからのストリームをリストから選ぶと、「保存[WAV]」と「音声の分離」の2つの機能が使えるようになります。両方ともやることは同じストリームの抜き出しですが、「保存[WAV]」の場合は、WAVヘッダをつけて出力します。テキストかVorbisの場合はWAVヘッダの付加は行われません。
OGMファイルから得られる情報は、「OGM→OGM情報」ウィンドウで見ることができます。
ファイル中のストリームそれぞれについてのレポートや、その他にもいろいろ便利な情報が得られます。
  • ファイルが壊れているかどうか。また、壊れていた場合は、破損データがファイル中に何バイト入っているか。
  • それぞれのストリームについて、
    • 種類 (Video、Audio、テキスト、その他)
    • ストリームのヘッダ
    • ストリームについているコメント
    • データ構造に関する情報
    • ストリームの長さ(推定値)
    • ストリームのビットレー(推定値)
  • パケットやページ中のデータ、全体のバイト数

ユーザが追加した外部ファイルは、開いていたVideoを閉じるときにリストから消えます。
例えば、他のVideoファイルを開くとき、メニューの「ファイル→閉じる」を選んだとき、ジョブの終わり、さらにもちろんVirtualDubModを終了するときなどです。
したがって、Videoファイルを開く前に外部ファイルをリストに追加しないでください。折角追加しても、Videoファイルを開いたらリストから消えてしまうので、やり直しになってしまいます。

最後に、ユーザが選んだ入力ストリームは、オフセットやコメントなども含めて、全てジョブファイルに保存されます。ですから、「今すぐ実行せず、ジョブリストに追加して後で実行する」機能は問題なく使えます。
また、入力ストリームやコメントなど現在の設定は、「環境を保存」で保存し、「環境を読み込む」で読み込むこともできます。