FUKUCHI Kentarou wrote:
> 
> Hi all,
> 
> V4L Kernel API reference (/usr/src/linux/Documentation/video4linux/API.html)
> claims that VIDEO_PALETTE_YUV422 is a format that packs YUV values into 8 bits.
> But bttv-driver maps YUV422 to BT848_COLOR_FMT_YUY2, and thats format is
> different from the description of API reference.
> 
> Why? In which way should I implement v4l driver?

IMO you should follow bttv to avoid breaking applications, but we should
deprecate the bad V4L_PALETTE names (the two below) and replace them
with correct ones.

There are two packed YUV formats whose V4L names are wrong:

VIDEO_PALETTE_YUV422 --> bttv YUY2
VIDEO_PALETTE_YUYV   --> bttv Y41P

VIDEO_PALETTE_YUV422 as a name is ambiguous as there are many possible
4:2:2 planar Y,U.V component orderings (and of course they're all 16
bpp, as 4:2:2 implies). YUY2 is only one of the possible 4:2:2 formats
(which, adding to the confusion, has component order Y,U,Y,V!),

VIDEO_PALETTE_YUYV as a mapping to Y41P is obviously wrong, but that's
the way bttv has always been, and AFAIK this is a Bt848 only mode anyway
(although other drivers could create it in software, I guess).

So... I'd recomment you follow bttv, but that we should also introduce
synonyms VIDEO_PALETTE_YUY2 and VIDEO_PALETTE_Y41P and deprecate the old
names. I believe V4L2 already uses these names (or at least
non-ambiguous ones that make sense).

Ben



_______________________________________________
Video4linux-list mailing list
[EMAIL PROTECTED]
https://listman.redhat.com/mailman/listinfo/video4linux-list

Reply via email to