概説
x264のレートコントロールの性質概要
H.264 はマクロブロック単位でQPを変える事ができるが、x264では採用していない。QPはフレーム単位だ。1フレーム内部の全マクロブロックに単一のQP値 を使う。
※ 画質的にはマクロブロック単位 QPのほうが有利と思われる。例えば画面右半分が静止画像、左半分が激しく動く場面など。この差はHDTVで効いて来る と思う。反面、実装は地獄じゃろうねぇ。
上記はソースコード内の付属文書。
Encoding H.264 using the x264 Command Line Interface(Zero1氏)にこれと矛盾する妙なオプションがあった。どうもマクロブロック単位QP変更を前提にしたオプショ ンに見えたのだが、手許では見た記憶が無く
tracで検索しても過去に存在した形跡も無い。覚書(なるP氏)の掲示版 にて当該オプションに覚えが有る人がいないか聞いてみたところ、、、、
どうも Sharktooth 版のみ、マクロブロック単位QP変更ができるらしい。 muken氏によると、
- Sharktooth氏(Doom9's forum)のビルドでは、rev602でエラーを吐かない(オプション指定を認識したというだけで実装を確認したわけではない)
- bob0r氏(Jarod), celtic_druid氏, clef氏(icl版), seraphy氏, Sylphide氏(Lunatilia)のビルドではこのオプションを指定するとunknown option
- http://mirror05.x264.nl/Sharktooth/か ら<dir>のx264に入 り、 docsとpatchesを取得できる。
との事です。Zero1氏の記述によるとあ まり大規模なものではなく、大きな青いエリアにブロックノイズが出たら弄れとしています。
Analysis オプション:Sharktooth版固有の機能
x264cli (rev600準拠) |
MEncoder -x264encopts (dev-SVN-r20806 準拠) |
--aq-strength [0.0] |
対応無し [] |
■ まとめ:
特に無し
■ 参考
- 覚書(要約)
- 記載無し
|
- 手 許
- Haaliが何/誰なのか自分は知らないです。タマに妖精現実さんとこで見るけど。
|
- MeGUI2.0 Help(ContextHelp v0.2 06/01/01)
- 記載無し
|
- man MEncoder
- 記載無し
|
- zero1(svn408)
- Usage: --aq-strength <float> (default=0.0)
- 適応的量子化の設定の一つ。適応的量子化は特定フレームの内の一部に異なった量子化値を使えるようにするもの。通常はフレーム全体が同一の量子化値を使う。Xvidでは明るい部分や暗 い部分を高圧縮にしてより目立つ部分にbitを回す事ができたが(*サイコビジュアル・エンハンスメント*)、それに相当する。適応的量子化はx264で はやや挙動が異なる。というのは大きな青いエリアでブロックが出るという問題に対処する為にHaaliが追加したものだからだ。
- x264 の適応的量子化は暗いエリアや青いエリアに回すbitを増やしてこれらのブロックノイズを緩和するものだ。
- この設定は、QP per Macroblockの調整。
- 0.0で適応的量子化オフ。
- 1.1 はかなり強いとされる。
- 他の部分が問題無いにも関わらず、青いエリアがブロッキーだった時に調整するのがお奨めの使い方だ。
|
- MEncoder Doc
- 記載無し
|
--aq-sensitivity [15.0] |
対応無し [] |
■ まとめ:
特に無し
■参考
- 覚書(要約)
- 記載無し
|
- 手 許
- 特に無し
|
- MeGUI2.0 Help(ContextHelp v0.2 06/01/01)
- 記載無し
|
- man MEncoder
- 記載無し
|
- zero1(svn408)
- Usage: --aq-sensitivity <float> (default=15.0)
- --aq-strengthと一緒に使う。--aq-strengthが0.0か、未指定の時はなんの動作もしない(デフォルトはdisableだから)。
- このオプションでは適応的量子化の際の "flatness"閾値を指定する。5でほとんど全てのブロックに適応的量子化をかける。22でフラットなブロックだけに適用。ここでフラットなブロックとは、単色か、ほとんどディテイルの無いブロックを指す。
|
- MEncoder Doc
- 記載無し
|
スポンサーサイト