Reland (2): Linux Video Capture: Add support for multiplanar YUV420 format enumeration
This is a relanding of the original CL mentioned below, with a fix for bug http://crbug.com/448599, where some strange cameras were listed. The problem was the filtering out of devices with V4L2_CAP_VIDEO_OUTPUT_MPLANE capabilities, which is the case for the strange camera enumerated in the mentioned bug, corresponding to a V4L2 memory-to-memory graphics processor. FI: the enumerated device is called exynos-gsc.m2m and is indeed defined as having such capability in line [1] [1] http://lxr.free-electrons.com/source/drivers/media/platform/exynos-gsc/gsc-m2m.c#L286 Original Reland description follows ------------------------------------- Relanding: Linux Video Capture: Add support for multiplanar YUV420 format enumeration. This is a relanding of the original CL _with the designated initializers changed by typical struct fields accesors_. Note: Gcc does not support designated initializers and it seems that there are still a few such builds around, hence the change. Original CL description follows ----------------------------------------- multiplanar --> V4L2_CAP_VIDEO_CAPTURE_MPLANE M420 is an example of I420 triplanar format, used for testing and to be landed since there must be at least one multiplanar format for this CL to be consistent. Following reviewer's hints, the VCDFLinux code is refactored internally. Given that, some struct initializations change from struct A a = {} _or_ struct A a; memset(&a, 0, sizeof(a)); a.bla1 = foo1; a.bla2 = foo2; to struct A a = { .bla1 = foo1, .bla2 = foo2, }; Which is a very common idiom to initialize structs in interactions with V4L2 IOCTL. I'm introducing it here and I'm planning to use it further in VCDLinux CLs down the line. This CL only adds support for enumerating multiplane format, while the actual capture will be reviewed in a later CL (WIP @ http://crrev.com/804473008). BUG=441836, 448599 Review URL: https://codereview.chromium.org/877193005 Cr-Commit-Position: refs/heads/master@{#313525}
Showing
Please register or sign in to comment