音声のノイズを除去するXviDの設定MPEG4系のCODECであるXviDの設定の仕方を説明します。DivXやXviDはMPEG-4ビジュアルのデータをAVIファイルなどで扱えるだけであり、MPEG-4システムでMP4ファイルを直接作成できるわけではありません。(Windows版CODEC)のを用いて設定画面の画像を用意しました。1.0.1から使う設定を見直したので紹介記事中のサンプル設定が多少変化しています。XviDはソースコードで公開されているため、実際に使うにはコンパイル済みのBinaryファイルが必要となります。コンパイル済みのBinaryダウンロードはこちらです。ConfigurationProfile@LevelMPEG-4ビジュアル部に使う仕様を選択します。Simple)の3種類からの選択です。各仕様にはレベルがあり、解像度などに制限があるので注意しましょう。Simpleは携帯電話向け(3GPP)、ARTSはリアルタイム通信向けといった用途に使われています。PC向けの動画であればXviDの機能の多くを利用可能なAS(@L5)を選択したほうがよいかもしれません。ちなみに、"unrestricted"はXviDの能力を最大限に引き出すモードです。これを使った場合は、再生にはDivXなどを使わずにXviDを使う必要が出てくるかもしれません。5.x.xはAS@L5です。XviDで圧縮してFourCCを変更する場合にはご注意を。してもこのサイズ内で最高の画質というのを求めなければならない場合だけ"Twopass"とします。pass")で動きの大小から割り当てデータ量を計算するので、非常に時間がかかります。膨大な時間がかかるので積極的にお奨めはしません。2pass時はTargetがSizeかBitrateか選択できます。普通はサイズのほうを選んだほうがそのまま最終出力サイズとなるので楽でしょう。サイズ指定はkbytesであることに注意が必要です。CD-Rに保存するために"Twopass"というのであれば、必要な時間とかを考えると安くなってきたDVD-Rドライブを素直に購入したほうが結果的に幸せだと思います。pass"で時間が節約できて画質も安定する(良くなる)ので。bitrate画質が決まる重要な部分です。quantizerは一定の品質で圧縮するモードで映像の破綻がまずなくなります。bitrateは時間あたりのデータ量が一定になるように圧縮するモードです。通常は画質が一定になるようにしたほうがよいでしょう。MPEG-4対応のポータブルプレーヤーなどで再生するのが目的であれば、おそらく再生可能なビットレートに制約があります。説明書か公式サイトで仕様が公開されていると思うので、そのビットレートに収まるようにbitrateのほうで指定しての圧縮が必要です。音声部込みのビットレート制約か、音声別でよいのかに注意してください。OptionsXviDではフレーム指定で圧縮の設定を変更できるようになっています。映画など、長いスタッフロールが入る場合にはスタッフロール部は圧縮設定を変更してデータの節約をすることが可能です。通常は特にいじらなくても大丈夫でしょう。OP部分をQuantizer:2.5、本編はQuantizer:3.5などのように設定可能です。Ratioは特にいじる必要はありません。いじるとすればProfile内の項目でしょう。default)(H.263はややぼやけたようになる傾向がある。圧縮効率は落ちるがファイルサイズより画質優先ならMPEGを選択。再生互換性はH.263のほうが高いです。2passで低bitrateを狙うならば映像の破綻が起こりにくいH.263を推奨。2passや1passでQuantizer値を大きくした場合の低bitrate時にはMPEGを選ぶとノイズが出やすい。個人的な所感ですが、アニメはH.263向き、実写だとMPEGが向いているような感じです。Encoding:Off(インターレースを維持したまま保存する場合にOnにする。フィールドオーダーの指定ができるようになったので実写はインターレース保持エンコードがよいかな。first(インターレースを保持した場合のフィールドオーダーの指定。間違えると再生がカクつくことでしょう。Compensation:Off(Onにすると2004年秋現在のネットワークプレーヤーなどで再生がカクつくので設定には注意。背景と手前のオブジェクトを分離して処理するS-VOP(スプライトVOP)を有効にするオプションのようです。Onでは処理を行なうので処理量が増大して圧縮に時間が掛かるようになります。ratio:1.00~2.00(B-VOPの画質に影響するので目的別に設定。offset:1.00(B-VOPの画質に影響。bitstream:On(データを処理しやすいようにまとめて効率を向上させるかの設定。通常はデコード時にラグが発生するB-VOPを、P-VOPのデコード時に先読み的に一緒にデコードしておくことでラグをなくしている模様。この処理を考慮していない古いデコーダーは正しく処理できないため、再生時にカクつくなど再生互換性は若干不利になる。5や古いffdshowで再生するならOnにすると正常に再生できない/2004年以降のffdshowならばOnにしても問題ないのでデコーダーがXviDかffdshowならばOn推奨。GOV:On(DivX5互換にするならOn。Options特定の部分だけ画質を上げたいとか、画質を犠牲にしてもサイズを小さくしたいという場合に使用する機能です。指定した範囲だけ別個の設定で圧縮を行なうことが可能になります。keyframeにチェックを付けると、指定したフレームを強制的にI-VOPにすることができるので、P-VOP/B-VOPだとノイズが出てしまうシーンに使うという手段もあり。Options...圧縮における重要な設定項目です。interval"はI-frameを最大何フレームごとに入れるかの指定。I-frameはプレーヤーがシーク時に参照するので、頻繁にシークしたいデータを作る場合は小さな値にしたほうが便利でしょう。その場合はファイルサイズが若干大きくなります。High(シーンチェンジの検出精度の設定。Decision(追加の動き検出設定。初期値の1から4に変更すると35~50%ほど圧縮時間が延びますが2~5%圧縮率が向上するようです。too(B-VOPにもVHQを使用するならOn。motion:On(色情報を利用した追加の動き検出設定。mode:Off(アニメ用のモードでソースがアニメの場合に圧縮率が最大5%程度向上することもある模様。quantizer(IPBのQuantizer最小値の指定。quantizer(IPBのQuantizer最大値の指定。これを指定することで最も悪い画質となる映像を一定のレベルまでに制限できる。quantization:On(Onにすると、DCTで失われた情報を回復させて画質を若干向上させることができるが、処理が若干重くなる。Options内のDebugから変更可能)。5.1.xからは、FourCCがXVIDのままでも再生ができるようになっています。Codec(FREE)」をダウンロードしてインストールしておけばOKです。Mpeg-4"にチェックを付ける必要がありますが、最初から有効になっているので問題はありません。Logo"にチェックを付けるのをお忘れなく。bitstreamをOnにしたデータはカクついて正常に再生できないようです。個人的にはDivXで再生するのはあまりお薦めしません。B-VOPMPEG4で使われているIPBの各VOP(MPEG-1/2のframeに相当する)の説明です。MPEG4の仕組みを詳しく知りたい人はPioneerの技術解説をご覧ください。I-VOP(I-frame)基準となるフレームでそのまま圧縮されます。P-VOP(P-frame)フレームを順方向に差分や動き補償などで予測して圧縮されるフレーム。B-VOP(B-frame)過去と未来の双方から予測して圧縮されるフレーム。圧縮効率を高めるためのもので画質は悪くなります。offsetで決まります。offsetを設定しない限り確実に画質は劣化するわけですが、それが人の目でわかるかどうかは圧縮するソースと設定次第なのでケースバイケース。普通の人は神経質に見比べるCODECの画質比較時ぐらいしか気にならない程度でしょう。MPEG系は不可逆圧縮なので、B-VOPは同じQuantizer値にしてもI/P-VOPに比べて少々画質が落ちることは覚悟しなければなりません。そこまで気にするような人はいないと思いますけれど。ratioが2.00の場合、I/P-VOPが3か4、B-VOPは7~9になります。ratioの設定はかなり大きく影響するわけです。ratioが2.00あたりまでなら静止させない限り気付かない程度(動きの激しい映像は除く)。ファイルサイズを小さくしたいなら2.00を、ファイルサイズは小さくしなくてもよいなら初期値の1.50でよいでしょう。ratio:1.50と比べて、VGAサイズ24分で20~25MBほどファイルサイズを節約できるようです。Options内のDebugでCPU命令の指定ができます。MやAMDのCPUなど)であればSSE2をオフにしたほうが処理がやや早く終わるので、ユーザー指定で明示的にSSE2のチェックを解除したほうがよさそうです。無断転載・複写を禁じます。