Man / CODEC固有オプション / -x264encopts / (no)bime


Man / CODEC固有オプション / -x264encopts / (no)bime
2010-03-15 (月) 19:20:53更新
カテゴリ:x264:Bフレーム

(no)bime

原文

Refine the two motion vectors used in bi-directional macroblocks, rather than re-using vectors from the forward and backward searches. This option has no effect without B-frames.

・MEncoder dev-CVS-060314-20:27-4.0.1 (C) 2000-2006 MPlayer Team
・x264 core:45 svn-467

訳文

双方向(予測)マクロブロックで使われる2つのモーションベクトルを、フォワードおよびバックワードサーチの結果を再利用せず、精密化。
Bフレームが無いと効果が無い。

参考

『改訂版H.264/AVC教科書(インプレス)』より。

Bi-Directional Predictive Picture=双方向予測ピクチャ。
いわゆるBピクチャ。MPEG-2が使う。前1枚、後ろ1枚、もしくはその2枚の参照ピクチャを同時に参照し、2つのピクチャの平均値を予測ピクチャとし、符号化対象ピクチャと予測ピクチャの差分データを符号化する。
Bi-Predictive Picture=双予測ピクチャ
H.264/AVCが使う。時間軸の前後に関係なく任意の2枚の参照ピクチャを予測の為に参照可能。
これもBピクチャと呼ばれる。

疑問点

原文にある通り、x264はBi-Directionalの語を用いている。
確認できた範囲ではMeGUI2.0のHelpファイル(とおぼしきもの)にもbime name="Bi-Directional Motion Estimation"の文字が見える。
MEncoderのマニュアルやドキュメント類は、Doom9(従ってMeGUIやx264cliのヘルプ)よりも原理原則にウルサイ匂いがあるので、x264のBは双予測ピクチャではない可能性がある。
そもそも、PTSやDTSに非対応のMEncoderは不規則なフレーム並べ替えが困難だ(これが.mp4書き出しが難航している理由)。
これらの事から、MEncoderのx264は双予測ピクチャ非対応である可能性が高い。VfW版のx264も同様と考える。

x264cli(MeGUI含む)で直接.mp4を吐いた場合の挙動は不詳。
また、双予測ピクチャに対応したデコーダがあるのか否かも不詳。