この記事の目的:同じpp系と言っても実装次第で効果に違いがあるかもしれ
ない。Web上の情報を漁るときは注意して下さい。 常用システムで
x264Encoderが正常に作動しない為、メンテナンス用のクリーンなシステム(QT7.1.4)で使ってみました。MEncoderは常用システム
でないと動かないのでそっちで。ツッコミ歓迎です。
素材
はポッ
キーチョコレートCM「ダンスダンス篇」(30秒)。を、CaptyTVで録画したもの。
ストリーミングを見てもらえれば解ると思いますが、モブシーン+ダンス+パンとゆう地獄のハイモーション&ハイディテイルです。
た
だし、今回の目的はインタレ解除性能を見る事なので、スクリーンショットの部分は「よくありそうな普通の動き」を選びました。
な
お、予算が潤沢なCMの場合、24fpsのフィルムカメラで撮影する事があるようですが、これは普通のTVカメラのようです。
ま
た、画質比較は今回の目的とはずれますが、この素材は1000フレームを切るので2パスでは統計ファイルの精度が充分になりません。1pass
crfか、3以上のpassが必要です(今回使ったものはカットしたCMそのままとってあるだけなんで2分ほどあります)。
実
験
スクリーンショットは目で見てだいたいこの辺だろうとアタリをつけたもので、正確なフレーム番号とかは解りません。
x264
の設定を揃えて居ないので色味や質感は大幅に異なります。目的は
インタレ解除の比較のみで
す。
| Original
(MPEG 2 PS) | | | |
|  | | | |
x264Encoder | l5 | md | QTDeint | md/l5 |
1pass
crf (37~49MB)
  |  |  |  |  |
MEncoder | pp=l5 | pp=md | pp=lb | yadif=2,pp=l5 |
2pass
1024kbps (16.5MB) |  |  |  |  |
pp=l5 x264Encoder
とMEncoderの差が大きい。
lowpass5の意味は不詳ですが、弱っちい(5タップの低域通過フィルタを使った)リニアブ
レンドと理解しています。
MEncoderでは解除漏れは無く、ボケのやや少ないlbという感じで、一時期、NTSCの実写はこれ
一本でした。
pp=md 差がない。
median
deinterlacerの意味は不詳ですが、前後フレームを「間をとった値で埋める」と理解しています。
解除漏れや動くものの二
重化が無く、色味やディテイルのボケも少ない事からpp系の中ではもっともバランスの良いオールラウンダーだと思います。
MEncoder
のGUIラッパー(ffmpegX, D-Vision 3)も、これを採用しています。
デメリットは動くものの輪郭部分のジャギ
が目立つこと。上記では肩口や袖口に出ています。これはまばたきや台詞を言うときの唇にも出ますから、大事なシーンで興冷めと感じる人もいるでしょう。ア
ニメでは描線がぶつぶつになる事が多いです。
解除漏れが無いって書きましたけど、ウルサイ事いうと向かって右奥の生徒の後頭部、解
除漏れしてますね。
pp=lbと
QTDeint 以前、MyCometG3さんがpp=lbをQTの「ソースビデオをデインターレー
ス処理」相当としておられたので同列にしてみましたが、大幅な差があります。
MEncodeのpp系の中では色ボケ、輪郭ボケが最
も激しく、動くものも二重化しています。その代わり、インタレ縞は根絶できます。
リニアブレンドの名の通り、前後フレームを一律に
混ぜると理解しています。
一応、設定は大丈夫だと思うのですが。
DEBUG: lavcEncoder: thePrefPPName: md thePrefPPLevel: 0
yadif=2,pp=l5 MEncoder
のみ。現在の手許常用。NTSC実写向け。
yadifはフィールドのパターンを検出してなんらかの賢い計算をするようです。
単独でインタレ縞はほぼ充分に取れ、二重化もしませんが、地味なジャギが残ります。どうも「動く直線」に弱いらしく、サッカーのゴールポストとか、上の図
でいうと、背景の机が動いているか、カメラがパンまたはズームしていると、そこにジャギが出るハズです。完璧な直線でなくても、まゆげや唇など「どっち
かっつうと直線」なものでもジャギる事があります。こうした部分をpp=l5を後付けでかけて潰しています(肩口や袖口のジャギ参
照)。
l5の前後フレームを一律に混ぜるという性質上、色ボケや特に衣類の
質感はどうしても落ちますが、二重化はもちろん、ジャギはかなり落とせます。趣味的に色や質感よりは落語家の些細な顔の動きのほうが重要なので。
本来はpp=l5ではなくmcdeintを使うのがベストですが、x264そのものより遅い(インタレ解除のためだけにSnowの
動き補償を使う)ので、常用は困難です。
似た効果を狙ってx264Encoderでpp=md、l5の順でかけて見ましたが、md
単独とあまり差が出ませんでした。
まとめ
動機は、MyCometG3さんがpp=l5
等を解除漏れが『残る』と書いていたのが長らく疑問だったからです。
MEncoderの経験上、pp系デインターレーサは「まずイ
ンタレ縞根絶!他はどうでも!!」というスタンスのオプションと感じていたので。
実験の結果、どうやら同じpp系といっても実装に
よっては効果に差がありそうです。ffmpegやVLCでも違うのかもしれません。
もとよりインタレ解除はコ
デックの仕事ではありませんから、これを以てx264Encoderの性能を云々するのは間違いです。
x264Encoderでは
他のフロントエンドのインタレ解除が使えますし、特にJESやMPEG
Streamclipではバッチ処理もできます。QTにx264が来た以上、今後とも使い道は広がると期待できます。
スポンサーサイト