summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Drake <dsd@laptop.org>2011-10-26 09:16:50 -0300
committerMauro Carvalho Chehab <mchehab@redhat.com>2011-11-07 12:04:52 -0200
commit9c900f02385cb18e1a6c65d22a7acbb8c73c07c2 (patch)
tree3f9406a029cfac3e583f134fe625f9f7edd7d2a2
parent318cde38af41fefdd03a7e42c9fb70e9719ed83f (diff)
[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>
-rw-r--r--drivers/media/video/via-camera.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/drivers/media/video/via-camera.c b/drivers/media/video/via-camera.c
index cbf13d09b4a..6a828759e38 100644
--- a/drivers/media/video/via-camera.c
+++ b/drivers/media/video/via-camera.c
@@ -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)