[media] via-camera: disable RGB mode

The RGB mode does not work correctly. It captures fine at 640x480
but whenever the scaling engine is used to produce another resolution,
color corruption occurs (lots of erroneous pink and green).

It is not clear how the scaling engine is supposed to work and how
it knows which pixel format it is dealing with. Work around this
problem by disabling RGB support. YUYV scaling works just fine.

Test case:

	gst-launch v4l2src ! video/x-raw-rgb,bpp=16,width=320,height=240 ! \
	ffmpegcolorspace ! xvimagesink

Signed-off-by: Daniel Drake <dsd@laptop.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
Daniel Drake 2011-10-26 09:16:50 -03:00 committed by Mauro Carvalho Chehab
parent 318cde38af
commit 9c900f0238
1 changed files with 3 additions and 7 deletions

View File

@ -156,14 +156,10 @@ static struct via_format {
.mbus_code = V4L2_MBUS_FMT_YUYV8_2X8,
.bpp = 2,
},
{
.desc = "RGB 565",
.pixelformat = V4L2_PIX_FMT_RGB565,
.mbus_code = V4L2_MBUS_FMT_RGB565_2X8_LE,
.bpp = 2,
},
/* RGB444 and Bayer should be doable, but have never been
tested with this driver. */
tested with this driver. RGB565 seems to work at the default
resolution, but results in color corruption when being scaled by
viacam_set_scaled(), and is disabled as a result. */
};
#define N_VIA_FMTS ARRAY_SIZE(via_formats)