2005年12月23日

闇階調のブロックノイズ(白黒映画)その1

【概要】シネスコ(2.35:1)の白黒映画。TVキャプチャ
【タグ】[weight_b][b_adapt][x264][MEncoder]
経 験上、なにが難物といって白黒映画が最難関。役者の髪の毛、着物の質感、おっさんの背広、夕闇、物陰、森の中、ブロックノイズでめろめろだ。
畳のふちの模様なんかもー。ほんとにもー!って感じだ(普通は見ません)。
機材:Power Mac G5 (2Ghz dual), memory 1GB

野 盗風の中を走る(1961東宝)1h50min

設定:(MEncoder dev-CVS-051222-00:15-4.0.1)
mencoder 1961_Yatou.mpeg -nosound -ovc x264 -x264encopts threads=2:me=3:bitrate=1024:qp_min=10:qp_max=51:i4x4:4x4mv:frameref=5:mixed_refs:subq=6:brdo:trellis=2:keyint=230:scenecut=30:cabac:deblock:b_adapt:bframes=3:weight_b:psnr:turbo=1:pass=1 -passlogfile 1961_Yatou.264.log -vf pullup,softskip,crop=670:272:24:106,scale=640:272,hqdn3d=4:3:6,pp=l5,harddup -sws 9 -ofps 24.000 -of rawvideo -o /dev/null
mencoder 1961_Yatou.mpeg -nosound -ovc x264 -x264encopts threads=2:me=3:bitrate=1024:qp_min=10:qp_max=51:i4x4:4x4mv:frameref=5:mixed_refs:subq=6:brdo:trellis=2:keyint=230:scenecut=30:cabac:deblock:b_adapt:bframes=3:weight_b:psnr:pass=2 -passlogfile 1961_Yatou.264.log -vf pullup,softskip,crop=670:272:24:106,scale=640:272,hqdn3d=4:3:6,pp=l5,harddup -sws 9 -ofps 24.000 -of rawvideo -o 1961_Yatou.264
結果:
PASS1 PASS2 Total
経過時間 3:48.53 9:37.39
13:26.32
Vbitrate(kbit/s) 1024.715
1024.957
-
PSNR:Global(db) 49.925
50.897
-
Avg QP(I) 12.70
12.67
-
感想:
  • 夕闇(払暁?)の中の合戦シーンで闇階調のブロックノイズ多発。群衆の顔なども潰れきっている。印象派のゾンビのようだ。しかし AVG QP (I)は12と超絶低い。Bでも15.23だ。大半のシーンは問題無い。
  • もしかしたらApple-h.264のように3パス以上かけるべきケースかも知れない。
  • weight_bb_adaptはwin版QT7で再生がつっかかるとDTV板にあったが、 Mac版では特に感じなかった。
  • 音ズレもリップシ ンクも知覚できない。Delay flameのカットや音声調整はしていない。
その他:
シネスコ(2.35:1)なのでTVキャプチャでは上下に 大幅に黒帯が入る。ffmpegXの推奨サイズは640x272。とても小さく、ぶっちゃけ迫力が無い^^;。拡大は画質劣化になるから避けるのが原則だが、手許ではQTなど、再生側で 拡大するよりは-sws 9(lanczos)で元データを拡大してしまう方が奇麗な印象がある。winではAviSynthでlanczos3というものが使えるらしいが、、、 将来のビデオカードに期待しておこう。
余談:
も少し時代が下がって「総天然色!」になると、みんな色を 嬉しがってドーランもセットもベタ塗り。つまり少しアニメ臭くなって圧縮しやすい。正月に狸御殿やんないかなぁ。オズの魔法使いとか。

その他の設定など

===FFMPEG_AUDIO===
ffmpeg -i 1961_Yatou.264 -i 1961_Yatou.mpeg -y -vn -f mp4 -acodec aac -ar 48000 -ac 2 -ab 64 -map 1.1:0.0 1961_Yatou.aac.mp4
===MP4BOX_--mux===
mp4box -fps 24.000 -add 1961_Yatou.264 -add 1961_Yatou.aac.mp4 -new 1961_Yatou.mp4
===MP4BOX_--info===
mp4box -info 1961_Yatou.mp4
* Movie Info *
Timescale 600 - Duration 01:51:39.041
Fragmented File no - 2 track(s)
File Brand isom - version 1

File has root IOD
Scene PL 0xff - Graphics PL 0xff - OD PL 0xff
Visual PL: AVC/H264 Profile (0x15)
Audio PL: AAC Profile @ Level 2 (0x29)
No streams included in root OD

Track # 1 Info - TrackID 1 - TimeScale 24000 - Duration 01:51:39.041
Media Info: Language "und" - Type "vide" - Sub Type "avc1" - 160777 samples
MPEG-4 Config: Visual Stream - ObjectTypeIndication 0x21
AVC/H264 Video - Visual Size 640 x 272
Self-synchronized

Track # 2 Info - TrackID 2 - TimeScale 48000 - Duration 01:51:38.880
Media Info: Language "und" - Type "soun" - Sub Type "mp4a" - 314010 samples
MPEG-4 Config: Audio Stream - ObjectTypeIndication 0x40
MPEG-4 Audio AAC LC - 2 Channel(s) - SampleRate 48000
Synchronized on stream 1
posted by ばる at 20:30| Comment(5) | TrackBack(0) | 圧縮日記264 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
おひさしぶりです。度々(ほぼ毎日?)読ませて頂いています。

この暗階調というか、あまり色の変化(輝度?)の変化がないところでの、ちかちかブロックノイズ気になってしまいますよね。当方、野ブタ。を、、、をエンコードしたりしたとき、制服の紺色の部分にこのブロックのちかちかが発生してしまって困ってました。

コーデック特有の、ビットを変化の激しいエッジなどの部分に割り当てるという処理の副作用でそうなってしまうんでしょうね。人の顔などがばっちり再現出来ているのに、背景などが無駄にちかちかしてしまうのは、ちょっといただけないですよね。

何か良い手段がございましたら教えてください。丸投げですみません。Xvid AVC楽しみですね、H.264コーデックを実行時に選択できるっていうアプリってのもできちゃうかもですね。
Posted by esperance at 2005年12月26日 01:28
こちらこそ。
ビットレート上げりゃ済むんですが。それじゃ、つまんないですよね^^;
Apple-H.264に遅れをとる部分らしいのでちょっと燃えてみます。
回避法はある筈ですから(無ければDoom9がこうもQTシカトしない筈)。

白黒映画だと闇階調のブロックがハッキリでるので輝度の幅臭いです。
輝度が何段階あるか知りませんが、全ての場面で全段階(256?)使うと圧縮にならないから、必要に応じて128段階にしたり64にしたりで、場面によっては減らし過ぎ。という印象です。
それで背広や物陰のような広範囲、かつ微妙なグラデーションで出るんではないかと(あいかわらず理屈は解ってません^^;)。
後はTVのノイズだったりして。

XviD(AVCじゃないほう)はついにマルチスレッド化するらしいんで、そっちも楽しみです。枯れたカスタムquantizeマトリクスで闇階調ブロック、まず出ないんですよねぇ。
Posted by ばる at 2005年12月26日 19:56
こんばんは。激しく燃えてみてください。また丸投げみたいなコメントで申し訳ございません。

そうなんですか、コーデックによってもこういう細かい部分の一長一短があるんですね。商用とかの高いコーデック(きっとあるんでしょう)とかだとどうなんでしょうかね。まあ、そのようなものは使うことができないので、最終論としてやっぱりビットレートですかね。いまいち、x264のビットレートの指定の仕方がわからないんですよね。qpをかまうと変化するっていうことぐらいしかはっきりしていないので、いつも適当なのが悪かったのでしょう。

ただ思っていることとして、アニメとか色が塗りつぶされている素材では、フレームの参照を多くすると画像が安定しそうなのですが、実写だと微妙なグラデーションがあるから、もしかして逆にフレームの参照を少なく(1とか2とか)すると、コーデックが手抜きをしないで、全体的な画像の品質が向上しそうな気もしないこともない、って感じがしています。逆にダメなのかも知れません。試していませんのでなんとも言えませんが。

それはそうと、このままいくとH.264コーデックが3つ(apple,x264,xvid)望めそうですが、素材によって使い分けられるアプリがあったらいいなと思ってきてしまいます。っていうか欲しい、つくったるって燃えてきてしまいます。
Posted by esperance at 2005年12月26日 23:56
>x264のビットレートの指定の仕方がわからないんですよね。

「わからない」のレベルが段違いとは思いますが、思いつきを書きます。
見当違いでしたらあしからず。

/*/

・ffmpegでyuv4mpegにデコードしてx264cliにパイプできます。参考になるかも知れません。コンテナ回りを除けば大筋でEsperance 2に近いように見えます。
・内部的にビットレート指定をしておらず、代入されるべきデフォルト値も見当たらないということであれば、qpmin =28のconstant quantizerになってる公算があると思います(これはこれで便利ですが)。

/*/

framerefは、時間対効果を考えると3ぐらいが常識的なところなようです。
ドキュメントにはcabacと一緒な限り「増やしすぎる」心配は無いとか、実写では6を境に効果急減とかあるんで5にしてます。んが、DTV板でも「増やし過ぎるとかえって画質低下及び容量増」という人もあり、、、これ減らして3パスやっちゃおう。

>このままいくとH.264コーデックが3つ
3ivxも頑張ってる臭いがしますよ。
Posted by ばる at 2005年12月29日 00:11
ありがとうございます。そんなことはないですよ、ばるさんの方がいろいろとパラメータを試していらっしゃるので、そういう経験的なものは僕よりもかなり凄いと思います。それに、あの訳文はかなり参考になっていますし、貴重な情報源です。

x264って、どのパラメータを設定するとCBRとかになるのかがいまいちわかってないんですよね。CBRを使えと設定しても、その後にVBRのパラメータをかまうと結局VBRになったりして。まあこちらでもいろいろやってみます。

最近ソフトにGUIを付け加えたりしています。よろしければどうぞ。ではでは、、、
Posted by esperance at 2005年12月29日 09:44
コメントを書く
お名前: [必須入力]

メールアドレス: [必須入力]

ホームページアドレス: [必須入力]

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。