From 8df18e2daf0d16177fd5317e0784ef637e307e32 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?R=C3=A9mi=20Denis-Courmont?= <remi@remlab.net>
Date: Mon, 19 Oct 2009 20:37:30 +0300
Subject: [PATCH] XCB-XV: avoid slow packed YUV on OMAP adaptors

---
 modules/video_output/xcb/xvideo.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/modules/video_output/xcb/xvideo.c b/modules/video_output/xcb/xvideo.c
index 2978d43defc3..85b606d39248 100644
--- a/modules/video_output/xcb/xvideo.c
+++ b/modules/video_output/xcb/xvideo.c
@@ -376,6 +376,16 @@ static int Open (vlc_object_t *obj)
         for (size_t i = 0; chromas[i] && (xfmt == NULL); i++)
         {
             chroma = chromas[i];
+
+            /* Oink oink! */
+            if ((chroma == VLC_CODEC_I420 || chroma == VLC_CODEC_YV12)
+             && a->name_size >= 4
+             && !memcmp ("OMAP", xcb_xv_adaptor_info_name (a), 4))
+            {
+                msg_Dbg (vd, "skipping slow I420 format");
+                continue; /* OMAP framebuffer sucks at YUV 4:2:0 */
+            }
+
             xfmt = FindFormat (vd, chroma, &fmt, a->base_id, r, &p_sys->att);
         }
 
-- 
GitLab