CLPL yuv pixel format


This format introduces an extra level of indirection in the process of accessing YUV pixels in the surface. Locking the DirectDraw or DCI CLPL surface returns a pointer which itself points to three other pointers. These pointers respectively point to an NxN Y plane, an (N/2)x(N/2) U plane and an (N/2)x(N/2) V plane. The Y plane pointer retrieved is (allegedly) valid even when the surface is subsequently unlocked but the U and V pointers can only be used with a lock held (as you should be doing anyway if adhereing to the DirectDraw/DCI spec).

  Horizontal Vertical
Y Sample Period 1 1
V Sample Period 2 2
U Sample Period 2 2

Positive biHeight implies top-down image (top line first)

Based on: YV12

Return to YUV pixel formats