make colorspace handle the original RGB format, too, since it handles both. Add the...
authorBenjamin Otte <otte@gnome.org>
Tue, 11 Nov 2003 22:40:43 +0000 (22:40 +0000)
committerBenjamin Otte <otte@gnome.org>
Tue, 11 Nov 2003 22:40:43 +0000 (22:40 +0000)
Original commit message from CVS:
make colorspace handle the original RGB format, too, since it handles both. Add the template caps for the reverse format to video.h

ext/hermes/gstcolorspace.c
gst-libs/gst/video/video.h

index 006c7beacaa4a8a3d7d8c8a843c5b67359a95e7f..a59ef39d79d3c87f232e4e1a3a873a08ce568387 100644 (file)
@@ -443,6 +443,10 @@ gst_colorspace_base_init (gpointer g_class)
                            GST_PROPS_FOURCC (GST_STR_FOURCC ("I420")),
                           GST_PROPS_FOURCC (GST_STR_FOURCC ("YV12")),
                           GST_PROPS_FOURCC (GST_STR_FOURCC ("YUY2")))));
+  caps = gst_caps_append (caps,
+                         gst_caps_new ("csp_templ_rgb24_32",
+                                       "video/x-raw-rgb",
+                                       GST_VIDEO_RGB_PAD_TEMPLATE_PROPS_24_32_REVERSE));
   caps = gst_caps_append (caps,
                          gst_caps_new ("csp_templ_rgb24_32",
                                        "video/x-raw-rgb",
index dd9ac76fbcc1008a8c4ac56b7de49eb1e082e712..3ce2a2e9251cec8c8febe07f2d00b852988e6171 100644 (file)
 #define G_MASK_32 0x00ff0000
 #define B_MASK_32 0x0000ff00
 
+#define R_MASK_32_REVERSE 0x000000ff
+#define G_MASK_32_REVERSE 0x0000ff00
+#define B_MASK_32_REVERSE 0x00ff0000
+
 #define R_MASK_24 0xff0000
 #define G_MASK_24 0x00ff00
 #define B_MASK_24 0x0000ff
 
+#define R_MASK_24_REVERSE 0x0000ff
+#define G_MASK_24_REVERSE 0x00ff00
+#define B_MASK_24_REVERSE 0xff0000
+
 #define R_MASK_16 0xf800
 #define G_MASK_16 0x07e0
 #define B_MASK_16 0x001f
             "framerate",        FPS_RANGE, \
             NULL)
 
+#define GST_VIDEO_RGB_PAD_TEMPLATE_PROPS_24_32_REVERSE \
+        gst_props_new ( \
+            "bpp",              GST_PROPS_LIST ( \
+                                  GST_PROPS_INT (24), \
+                                  GST_PROPS_INT (32) \
+                                ), \
+            "depth",            GST_PROPS_LIST ( \
+                                  GST_PROPS_INT (24), \
+                                  GST_PROPS_INT (32) \
+                                ), \
+            "endianness",       GST_PROPS_INT (G_BIG_ENDIAN), \
+            "red_mask",         GST_PROPS_LIST ( \
+                                  GST_PROPS_INT (R_MASK_32_REVERSE), \
+                                  GST_PROPS_INT (R_MASK_24_REVERSE) \
+                                ), \
+            "green_mask",       GST_PROPS_LIST ( \
+                                  GST_PROPS_INT (G_MASK_32_REVERSE), \
+                                  GST_PROPS_INT (G_MASK_24_REVERSE) \
+                                ), \
+            "blue_mask",        GST_PROPS_LIST ( \
+                                  GST_PROPS_INT (B_MASK_32_REVERSE), \
+                                  GST_PROPS_INT (B_MASK_24_REVERSE) \
+                                ), \
+            "width",            SIZE_RANGE, \
+            "height",           SIZE_RANGE, \
+            "framerate",        FPS_RANGE, \
+            NULL)
+
 #define GST_VIDEO_RGB_PAD_TEMPLATE_PROPS_32 \
         gst_props_new ( \
             "bpp",              GST_PROPS_INT (32), \
             "framerate",        FPS_RANGE, \
             NULL)
 
+#define GST_VIDEO_RGB_PAD_TEMPLATE_PROPS_32_REVERSE \
+        gst_props_new ( \
+            "bpp",              GST_PROPS_INT (32), \
+            "depth",            GST_PROPS_INT (32), \
+            "endianness",       GST_PROPS_INT (G_BIG_ENDIAN), \
+            "red_mask",         GST_PROPS_INT (R_MASK_32_REVERSE), \
+            "green_mask",       GST_PROPS_INT (G_MASK_32_REVERSE), \
+            "blue_mask",        GST_PROPS_INT (B_MASK_32_REVERSE), \
+            "width",            SIZE_RANGE, \
+            "height",           SIZE_RANGE, \
+            "framerate",        FPS_RANGE, \
+            NULL)
+
+#define GST_VIDEO_RGB_PAD_TEMPLATE_PROPS_24_REVERSE \
+        gst_props_new ( \
+            "bpp",              GST_PROPS_INT (24), \
+            "depth",            GST_PROPS_INT (24), \
+            "endianness",       GST_PROPS_INT (G_BIG_ENDIAN), \
+            "red_mask",         GST_PROPS_INT (R_MASK_24_REVERSE), \
+            "green_mask",       GST_PROPS_INT (G_MASK_24_REVERSE), \
+            "blue_mask",        GST_PROPS_INT (B_MASK_24_REVERSE), \
+            "width",            SIZE_RANGE, \
+            "height",           SIZE_RANGE, \
+            "framerate",        FPS_RANGE, \
+            NULL)
+
 #define GST_VIDEO_RGB_PAD_TEMPLATE_PROPS_15_16 \
         gst_props_new ( \
             "bpp",              GST_PROPS_INT (16), \