新PC(Windows7)で動画の再生環境を構築中にチョットだけトラブったお話。

 ・Lagarith losslessや x264 losslessがMPC-HCで再生出来ない
 ・インターレース処理されたMpeg2動画が、MPC-HCではガクガクな再生になる

これらの原因や対処方法の紹介です。
メインはLagarith losslessと x264 losslessについて。Mpeg2動画ガクガクの治し方はこのページの下の方にチョロリと書いてあります。

Lagarith lossless と x264 losslessの原因

犯人はLAV Filtersでした。
このスプリッターを通してAVIの再生を有効にしていると、Lagarith lossless と x264 lossless上手く再生できませんでした。

「今回の再生環境構築に LAV Filtersは導入していないんだけどな~」と思っていましたが、最新の Win7Codecsでは、かなりの局面でLAV Filtersを利用する仕様に変わっているんですね。

今回とった対策

以下、全ての再生環境で同じ原因・対処方法が使えるとは限りませんが、解決した際の手順を残しておきます。
Win7CodecsやCCCP等、多くのコーデックパックでLAV Filtersが採用されています。軽くて優れたスプリッターですが、lossless系の特殊なコーデックには対応していないみたいです。

解決方法
以下の1.か2. どちらかを行う。
  1. Win7Codecs経由でLAV Filtersを呼び出して、avi再生時にLAV Filtersのスプリッターを使用しないようにする(インストールしたコーデックパックやスプリッターにより呼び出し方は異なる。とにかくavi を LAV Filters経由で再生しないようにしておけばOK)
  2. (MPC-HCなどで)Lagarith lossless avi を再生中、[ツールバー]>[再生]>[フィルタ]をクリックしてLAV Filtersの[Lagarith]の項目からチェックを外す。

Lagarith,LAV Filters
▲MPC-HCで Lagarithで作成したaviを再生する(画面は移らない)
[ツールバー]>[再生]>[フィルタ]>[LAV Video Decoder]を選択

Lagarith,LAV Filters2
▲Lagarithの項目のチェックを外す。
x264ロスレス動画の再生が上手く行かない場合は、「AVI」のチェックも外す。
(x264ロスレスを使う人は殆どいないと思うので、通常はチェックを入れてても大丈夫)

また、上記で直らなかった場合は、以下「mpeg2がカクカクになる場合」の方法も同時に試してみる。

mpeg2がカクカクになる場合

現在、MPC-HC(x86版) 1.5.2.3456を利用中。
こいつの内蔵Mpeg2デコーダーがおかしい(または)ビデオカードの逆テレシネとの相性が悪いのかもしれない。インターレース解除処理で変な挙動(トップ/ボトムを逆に再生 または 一つ飛ばしに再生) します。

MPC-HCのオプション画面
MPC-HCのオプション
▲クリックで拡大
MPC-HCの[ツールバー]>[表示]>[オプション]を開き、
  ・[内蔵フィルタ]の[Mpeg PS/TS/PVA]のチェックを外す。
  ・Lagarith losslessや x264 losslessが再生出来ない場合は、
   [AVI]と[MP4/MOV]のチェックも外す。

これで、MPC-HCで外部のスプリッターやデコーダーが利用出来るようになり、(他スプリッターやデコーダーが正しくインストールされていれば)正常に再生出来るようになります。

まだ直らない場合

上図「MPC-HCのオプション画面」の右側「変換フィルタ」の項目でも、aviやmpeg2のチェックを外す。

あとがき

コーデックパック類は、「一般的な動画をサクっと再生出来るようにするモノ」であり、ロスレスコーデック等の特殊な形式は、あまり念頭に置いていないようですね。
この傾向はバージョンを重ねるごとに顕著になっている気がします。

しかし、Mpeg2の再生がデフォ設定でガクガクになったのは初めてw
自作のMpeg2だけでなく、テレビ放送素材なども一律ガクガクになったので、スプリッターもしくはデコーダー側でフィールドオーダーの読み取りがおかしくなっているのは確か。ビデオカードやドライバとの相性で、時々こんな事がおきるんでしょうなぁ。。。