久しぶりに C/C++ のコードを書く気が出てきたので、今のコードを眺めているところです。

以前書いた縦横の制約ですが、結局「マクロピクセルサイズの倍数である」というところに落ち着けることにします。つまり、以下のようになります。

ULRG/ULRA (内部RGB/RGBA)
縦横ともに1の倍数、つまり制限なし
ULY2 (内部YUV422)
縦は1の倍数、横は2の倍数
ULY0 (内部YUV420)
縦横ともに2の倍数

ULY0 はこれから作ろうとしている YUV420 向けコーデック(の FourCC)で、要するに YV12 向けです。

バージョン 4.1.0 では ULY2 は縦横ともに制限なしになっていますが、次のバージョンにすると横が奇数のものは扱えなくなります。これはエンコードだけでなくデコードも同様です。

Trackback

2 comments untill now

  1. 8倍とか16倍とか言っていたが結局ゆるめに作るんですね
    まあ汎用性が高いので歓迎ですけどw

  2. 待ってました!
    がんばってください!

Add your comment now