Hi Laurent,

On 26/04/16 23:35, Laurent Pinchart wrote:
> The number of bits per pixel is identical for all planes, don't store
> multiple copies.

That's not true, as with NV12, Y has 8 bits per pixel and UV has 16 bits
per pixel. But as the subsampling is precalculated into the stride_bpp
(is it bytes or bits? bpp always confuses me =), the 'stride_bpp' ends
up being same for both planes.

To be honest, I'd rather go into more complex struct than simpler one.
The current one is already confusing, I think, and your version is too.
The main issue is that the sub_x is encoded into the stride_bpp. In
kmsxx I used this format:

{ PixelFormat::NV12, { 2, { { 8, 1, 1, }, { 8, 2, 2 } }, } },

The first number is the number of planes, and for each plane, bitspp,
xsub and ysub. It's more verbose, but (I think) easier to understand.

 Tomi

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: 
<https://lists.freedesktop.org/archives/dri-devel/attachments/20160502/7014849f/attachment.sig>

Reply via email to