【原文】x264 core-54 svn-600Mソースコード内、Doc/vui.txt
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~(試訳ここから)
Video Usability Information (VUI) Guide
by Christian Heine ( sennindemokrit at gmx dot net )
1. Sample Aspect Ratio
これは何?
サンプル・アスペクト・レシオ(Sample Aspect Ratio、SAR)は時にPixel Aspect Ratio とか、単にPel Aspect Ratioなどとも呼ばれます。これは、サンプル
(※ピクセルの事)の高さに対する横幅の比率です。一般的に、コンピュータのモニタ上のピクセルは正方形 ですが、これをSARで表すと1:1となります。その一方、デジタル化された映像のSARは1:1では無い事が多いです。特定のSARを持った素材を異な るSARを持ったシステムで再生すると横に伸びたり、縦に押しつぶしたような映像になります。したがって、SARを調整するには、素材と再生システム双方 のSARを知っている必要があります。
- ※訳注:
- たとえば720x480は横長映画やテレビ(地域により解像度が異なる。欧州のTV規格PALでは高さが576)などの中間解 像度。再生時にはビスタサイズの映画なら16:9、テレビなら4:3などに拡大縮小して表示される。この比をディスプレイ・アスペクト・レシオ(DAR) と言うが、これは画面全体をハンドリングするもので、SARとは異なる。
使い方
SARの算出には映像の横幅、高さ、そしてDAR(display aspect ratio)を使います。
SAR_x DAR_x * height ----- = -------------- SAR_y DAR_y * width 例:width x height = 704x576, DAR = 4:3 ==> SAR = 2304:2112 or 12:11
注意:
アナログ信号をデジタル化した素材では、SARの計算にこの公式を使うべきではない。
機材のマニュアルか、以下のリンクを参照。
A Quick Guide to Digital Video Resolution and Aspect Ratio Conversions
http://www.iki.fi/znark/video/conversion/
このオプションは使った方がよいですか?
一言でいうなら、はい。
今日のデコーダ/メディアプレイヤは大半がアスペクト比の自動補正を備えており、例外は僅かです。x264のデフォルトは"SAR not defined"ですから、素材SARが1:1のケースであっても使うべきです。
2. Overscan
これは何?
一般的に"オーバースキャン"という用語は映像の内、情報を含まないが、特定の解像度やアスペクト比を維持するために付加された領域の全てを表します。 従って「レターボックス化」された映像には上下に"オーバースキャン"が付いています。
しかし、このオプションが扱う"オーバースキャン"は意味が異なります。またアナログ信号をデジタル化する過程で付加される"オーバースキャン"でもあ りません。
ここで言う"オーバースキャン"とは、ディスプレイ上で映像の一部分だけを表示させるという意味です。"どの一部分"なのかはディスプレイに拠ります。
使い方
ディスプレイがオーバースキャン・プロセスを使う際に映像のどの部分が表示されるか、私には正確なところが解りませんので、ここで方法や例示を書くこと ができません。
"overscan=show"が安全であろうかと思います。というのはこれは常に映像全体を表示する信号だからです。
"overscan=crop"は影響が確実に解っている場合にのみ使って下さい。
またデフォルトの"undefined"も使って大丈夫です。
このオプションは使った方がよいですか?
正確に理解している場合に限って、はい。
一般的な意味での"オーバースキャン"がある映像ストリームには使わないで下さい。その場合はエンコード前に黒帯をクロップして高ビットレート/高画質 を狙って下さい。さらにH.264規格には"overscan=show"の設定が優先されるとありますが、"overscan=crop"の設定は無視 される事があり得る、ともあります。実際、多くの再生機器
(※equipment、ソフトも含むか?)ではこの設定を無視して映像全体を表示します。
※訳注
『改訂版H.264/AVC教科書』の索引に 「クロッピング処理」なる記述があった。デコード後、画面に表示する前に出力する画像の形態に合わせ て上下左右の画素を切り出す処理、との事。
改訂版H.264/AVC教科書、p183
例えばHDTVの場合、走査線の数は1080本です。これに対してH.264/AVCでは垂直、水平方向とも16画素の倍数でな いと符号化できません (1080本は16の倍数ではない)。例えば、1088本(16の倍数)を符号化した場合、8ラインを捨てて表示する必要がありますが、この場合、クロッ ピング処理によって、ビットストリーム中でどの上下8ラインを捨てるのかを明示的に指定する事ができます。
特にインタレ保持をテレビに出す場合、対象機器のデコーダの性能によっては、考慮しても良さそうだ。
3. Video Format
これは何?
純粋に参考的な
(※informative)設定。デジタル化される前のアナログ映像のタイプを示す。
使 い方
NTSCやPALなど、好みの値を入れるだけ。
MPEG2からトランスコードする場合、素材のm2vビットストリームの中にこの値が見つかるかもしれない。
(詳細はITU-T Rec. H262 / ISO/IEC 13818-2参照。)
このオプションは使った方がよいですか?
これは完全にあなた次第です。
この設定が何かに影響を及ぼすと言う事は考えられません。私は純粋な付加情報に過ぎないと考えています。
4. Full Range
これは何?
アナログ映像のデジタル化に関わるもう一つの遺物。
アナログ映像をデジタル化する際、輝度と彩度のレベルがそれぞれ16..235 と 16..240の範囲に制限されます。
通常、再生機器
(※equipment、ソフトも含むか?)は全てのデジタル化されたサンプルがこの範囲内にあると想定しています。
しかしながら、大半のDVDでは輝度も彩度も0..255のフルレンジを使っています。
こうしたDVDをそのような再生機器にかけた場合、オーバーサチュレーションが起きる可能性があります。
これを避ける為にはレンジ補正が必要となります。
使い方
素材がデジタル化されたアナログビデオ/TV放送なら、取り込み時にレンジが限定されている可能性が非常に高いです。
限定されている事が確実なら、--fullrangeはoffのままで安全です。
確実でない場合や、オーバーサチュレーション抜きで再生できているか確認したい場合は、onにしてみましょう。
x264のデフォルトはoffである事に注意して下さい。これは"安全"ではありません。
このオプションは使った方がよいですか?
はい。
しかし、このオプションを理解できるデコーダ/メディアプレイヤはごく少数です。
5. Color Primaries, Transfer Characteristics, Matrix Coefficients
これは何?
映像マニア
(※videophile)の設定。平均的なユーザにとって必要なものでは、ぜんぜんないです。
全てのモニタが全ての色を同じように表示するわけではありません。
同じ映像を別モデルのモニタ2個で見比べるとどちらか片方が"青っぽく"、もう片方は"緑っぽく"見える事でしょう。
結論から言うと、モニタはモデル毎に異なったカラープロファイルを持っています。これは全てのモニタで映像がだいたい同じに見えるように色を補正するた めのものです。プリンタやフィルム/ビデオ・デジタイザなども同様です。
デジタイザ機器のカラープロファイルが解っていれば、デジタイザ機器を使っていようがいまいがデコード後のh264ストリームの色やガンマを補正する事 が出来ます。
使い方
自分のデジタイザ機器の特性を見つける事ができれば(see the equipment documentation or make reference measurements)、概ね見合った特性をH264 Annex Eの特性リストから探してx264に渡す事ができます。
または、デフォルト (unspecified)のままほっとくか。
MPEG2からトランスコードの場合、m2v bitstreamの中にこのオプションのための値が書いてあるかもしれません。
(詳細はITU-T Rec. H262 / ISO/IEC 13818-2参照)
このオプションは使った方がよいですか?
自分が何をしているかキッチリ理解している場合に限って、はい。
このオプションを使うのは悪い考えではありませんが、デフォルトの設定は間違ったものよりマシです。
残念な事に私はcolor/gamma/color matrix補正に対応したデコーダ/メディアプレイヤを、それを試みようとするものさえ、見た事がありません。
6. Chroma Sample Location
これは何?
映像マニア
(※videophile)の設定。平均的なユーザは違いに気付く事さえないでしょう。
人間の視覚の弱点
(※色彩認識力は輝度のそれに比べて弱い)を利用して彩度サンプルを間引く事をサブサンプリングと言います。
特にx264では、2x2輝度サンプルブロックに対応する彩度サンプルは一個だけです。
こうしたサブサンプリングを行う方式には様々なものがありますが、結果はどれも輝度サンプル値に対する彩度サンプル値の相対位置を出すものです。彩度サ ンプル・ロケーションはサブサンプリングプロセスを逆回転させる時
(※再生時)に効果が出ます。即ち、彩度サンプルの数が増やされるわけです。多くの場 合、これはカラースペース変換の際に行われます。この工程が正確でないと、多くの場合、彩度の値が輝度サンプルに対して1ピクセルずれた位置に現れます。 または奇妙なボケ。
使い方
x264はサブサンプリング済みの入力フレームしか受け付けないので、サブサンプリング能力を持たない。従って彩度サンプル・ロケーションの方式は自分 で設定する必要がある。
適切に4:2:0サブサンプルされたMPEG1のトランスコードで、カラースペース変換を一切行わない場合、オプション指定値は1。
適切に4:2:0サブサンプルされたMPEG2のトランスコードで、カラースペース変換を一切行わない場合、オプション指定値は0。
適切に4:2:0サブサンプルされたMPEG4のトランスコードで、カラースペース変換を一切行わない場合、オプション指定値は0。
カラースペース変換を自力で行う場合、これは簡単な事では無い。
サブサンプリングのフィルタ・カーネルが 一方向の( 0.5, 0.5 ) の場合、その方向の彩度サンプリング・ロケーションは2個の輝度サンプルの間になる。
サブサンプリングのフィルタ・カーネルが 一方向の ( 0.25, 0.5, 0.25 ) の場合、その方向の彩度サンプリング・ロケーションは輝度サンプルうち一つと同じになる。
H264 Annex E には彩度サンプル・ロケーションをx264に渡せる0~5の形式に"トランスフォーム"する方法を示す図が入っている。
※訳注
とりあえずx264はHigh 10(4:2:0、10bitカラー)はともかく、High 4:2:2、High 4:4:4は非対応っぽい印象を受けた。
このオプションは使った方がよいですか?
完全主義者でなければ気にしないで下さい。メディアプレイヤはこの設定を無視して固有の(固定の)彩度サンプル・ロケーションを使います。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~(試訳ここまで)
余談
■1.SARについて
手許ではいつも横幅640にスケーリングしてしまうので MEncoderからSARを指定する方法は 解りませんが、ログを見る限りではMEncoderがx264に適当な値を渡しているようです。16:9なら640:352でSAR=44/45。4:3 な ら640:480でSAR=1/1。
きちんとSARを指定した場合とはかけ離れた値 なっていますが、17inモニタと自分の眼球では720キープしても画質差が解りません。他のスケーリングする理由は
こちら。
■16倍数以外のクロップについて
原文を離れますが、一時期i4x4やi8x8などを指し て x264の クロップは16の倍数でなくても良いと言う情報がありました。しかし。
- 『改訂版H.264/AVC教科書』では"H.264/AVCでは垂直、水平方 向とも16画素の倍数でないと符号化できません"と断定的な書き方をしている事。
- 縦横16倍数以外を指定するとMEncoderがエンコードがウマく行かないよとメッ セージを出す事。
- 16x16マクロブロックはMPEG-1/2/4にまたがる大原則であり4x4や8x8はサブマクロブロックとかマクロブロック・パーティションと呼ばれて区別されている事(例)。
などからクロップの16倍数制限は健在と思われます。