
縁側をご利用いただく際のルール&マナー集を用意いたしました
ユーザーの皆様に楽しくご参加いただけるよう、主に投稿時の注意点などをまとめています。
ご投稿の前には必ずご一読をお願いいたします。詳しくはこちら⇒「縁側 ルール&マナー」
紹介文
MPEG-1/2とH.264に関連する知識は多少ありますが、まだ完全というわけではありません。
技術交流できる場として設置いたしました。

H.264にはスキップマクロブロックという素敵な機能があります。
このスキップマクロブロックというのは「このマクロブロックは前のフレームと同じなのでエンコードしません」というマーカーです。
実際にはまとめてn個同じ、というように書きます。
さてここで、スライドショーを考えてみましょう。
例えば、表示2.5秒、トランジション0.5秒のスライドショーを作った場合、2秒同じ絵が表示されます。
この2秒のビット消費ですが、先頭のフレームだけドカンと消費し残りのフレームは全部スキップマクロブロックで記述するためほぼ0になります。
ここで、CBR を考えてみましょう。
この場合、1秒の使用ビットが同じでなければ *ならない* ため、最初のフレームでドカンと消費、1秒近くレート0、次のフレームもほぼ0なんですがパディングがドカンと出力され秒間ビット消費量を均します。
つまり、ただパディングがドカンと出力されるだけなのでスライドショーでは CBR は画質向上 *しません*
VBR でサイズが合わない理由なのですが、1-Pass VBR の場合、最初のフレームにビットを大量に与えてしまうと、以降のフレームで必要なビットが足りなくなるかもしれないということを考慮して、極端に大きなビットを割り当てないようにできています。人間はデータを見ていますから知っていますが、エンコーダーはデータを見ていないため順当な処理です。
これをどうにかするには 2-Pass VBR でエンコーダーに一度データを *見せて* レートの割り振りを適正化してやる必要があります。
また 2-Pass VBR でも予想サイズに届かないケースがあります。
この場合は VBV の制限から瞬間ビット消費量の上限が制約されるため使用ビットが吹き上がらないためです。
この瞬間使用ビットの上限が何故あるのかといえば、例えば光学メディアの物理読み取り速度を超えないように制限し、読めないデータになるのを防ぐ、というような目的があります。
よって 2-Pass でもサイズが届かない場合は、すでに最高画質でエンコードしてあるけれどもハードウェアの制約上どうにもなりませんでした、という意味だと思っていればだいたいあっています。
2013/3/21 00:02 [1219-5]


この掲示板の新着スレッド

番号 | タイトル | 返信数 | 最終投稿日時 |
---|---|---|---|
[1219-6] | H.264 の仕様書 | 0 | 2013年5月15日 00:32 |
[1219-5] | スキップマクロブロックとビットレートとレート制御 | 0 | 2013年3月21日 00:02 |
[1219-4] | AACの種類 | 0 | 2013年2月10日 18:18 |
[1219-3] | ストリームとコンテナ | 0 | 2013年1月20日 23:38 |
[1219-2] | 豆知識:H.264のプロファイル | 0 | 2013年1月12日 11:30 |
[1219-1] | 豆知識:H.264のレベル | 0 | 2013年1月10日 22:41 |

