From f768ab94c7f8fe3aa53ee32499cedd810f1159a4 Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Mon, 12 Jan 2004 02:01:52 +0000 Subject: gst-libs/gst/video/video.h: Fix caps template names to be understandable. Original commit message from CVS: 2004-01-12 Benjamin Otte * gst-libs/gst/video/video.h: Fix caps template names to be understandable. Prefix everything with GST_VIDEO. * ext/aalib/gstaasink.c: * ext/divx/gstdivxdec.c: * ext/divx/gstdivxenc.c: * ext/gdk_pixbuf/gstgdkpixbuf.c: * ext/hermes/gstcolorspace.c: (gst_colorspace_base_init): * ext/jpeg/gstjpegdec.c: (raw_caps_factory): * ext/jpeg/gstjpegenc.c: (raw_caps_factory): * ext/libcaca/gstcacasink.c: * ext/libpng/gstpngenc.c: (raw_caps_factory): * ext/snapshot/gstsnapshot.c: * ext/swfdec/gstswfdec.c: * ext/xvid/gstxviddec.c: * ext/xvid/gstxvidenc.c: * gst/chart/gstchart.c: * gst/deinterlace/gstdeinterlace.c: * gst/effectv/gsteffectv.c: * gst/flx/gstflxdec.c: (gst_flxdec_loop): * gst/goom/gstgoom.c: * gst/median/gstmedian.c: * gst/monoscope/gstmonoscope.c: (gst_monoscope_init), (gst_monoscope_srcconnect), (gst_monoscope_chain): * gst/overlay/gstoverlay.c: * gst/smooth/gstsmooth.c: * gst/smpte/gstsmpte.c: * gst/synaesthesia/gstsynaesthesia.c: * gst/videocrop/gstvideocrop.c: * gst/videodrop/gstvideodrop.c: * gst/y4m/gsty4mencode.c: * sys/qcam/gstqcamsrc.c: * sys/v4l/gstv4lsrc.c: (gst_v4lsrc_palette_to_caps): Make them work with new video.h file. * sys/ximage/ximagesink.c: (gst_ximagesink_chain), (gst_ximagesink_buffer_free), (gst_ximagesink_buffer_alloc): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_chain), (gst_xvimagesink_buffer_free), (gst_xvimagesink_buffer_alloc): Make it work with new buffer allocation system. --- ChangeLog | 42 ++++++ ext/divx/gstdivxdec.c | 2 +- ext/divx/gstdivxenc.c | 2 +- ext/hermes/gstcolorspace.c | 14 +- ext/snapshot/gstsnapshot.c | 4 +- ext/swfdec/gstswfdec.c | 2 +- ext/xvid/gstxviddec.c | 5 +- ext/xvid/gstxvidenc.c | 5 +- gst-libs/gst/video/video.h | 280 ++++++++++++++++++--------------------- gst/chart/gstchart.c | 2 +- gst/deinterlace/gstdeinterlace.c | 4 +- gst/flx/gstflxdec.c | 4 +- gst/overlay/gstoverlay.c | 8 +- gst/smooth/gstsmooth.c | 4 +- gst/smpte/gstsmpte.c | 6 +- gst/videocrop/gstvideocrop.c | 4 +- gst/videodrop/gstvideodrop.c | 4 +- gst/y4m/gsty4mencode.c | 2 +- sys/qcam/gstqcamsrc.c | 2 +- 19 files changed, 212 insertions(+), 184 deletions(-) diff --git a/ChangeLog b/ChangeLog index 2c813078..3ed667dd 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,45 @@ +2004-01-12 Benjamin Otte + + * gst-libs/gst/video/video.h: + Fix caps template names to be understandable. + Prefix everything with GST_VIDEO. + * ext/aalib/gstaasink.c: + * ext/divx/gstdivxdec.c: + * ext/divx/gstdivxenc.c: + * ext/gdk_pixbuf/gstgdkpixbuf.c: + * ext/hermes/gstcolorspace.c: (gst_colorspace_base_init): + * ext/jpeg/gstjpegdec.c: (raw_caps_factory): + * ext/jpeg/gstjpegenc.c: (raw_caps_factory): + * ext/libcaca/gstcacasink.c: + * ext/libpng/gstpngenc.c: (raw_caps_factory): + * ext/snapshot/gstsnapshot.c: + * ext/swfdec/gstswfdec.c: + * ext/xvid/gstxviddec.c: + * ext/xvid/gstxvidenc.c: + * gst/chart/gstchart.c: + * gst/deinterlace/gstdeinterlace.c: + * gst/effectv/gsteffectv.c: + * gst/flx/gstflxdec.c: (gst_flxdec_loop): + * gst/goom/gstgoom.c: + * gst/median/gstmedian.c: + * gst/monoscope/gstmonoscope.c: (gst_monoscope_init), + (gst_monoscope_srcconnect), (gst_monoscope_chain): + * gst/overlay/gstoverlay.c: + * gst/smooth/gstsmooth.c: + * gst/smpte/gstsmpte.c: + * gst/synaesthesia/gstsynaesthesia.c: + * gst/videocrop/gstvideocrop.c: + * gst/videodrop/gstvideodrop.c: + * gst/y4m/gsty4mencode.c: + * sys/qcam/gstqcamsrc.c: + * sys/v4l/gstv4lsrc.c: (gst_v4lsrc_palette_to_caps): + Make them work with new video.h file. + * sys/ximage/ximagesink.c: (gst_ximagesink_chain), + (gst_ximagesink_buffer_free), (gst_ximagesink_buffer_alloc): + * sys/xvimage/xvimagesink.c: (gst_xvimagesink_chain), + (gst_xvimagesink_buffer_free), (gst_xvimagesink_buffer_alloc): + Make it work with new buffer allocation system. + 2004-01-11 Julien MOUTTE * ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_chain): Fixing the diff --git a/ext/divx/gstdivxdec.c b/ext/divx/gstdivxdec.c index c2cd6324..a61466c7 100644 --- a/ext/divx/gstdivxdec.c +++ b/ext/divx/gstdivxdec.c @@ -53,7 +53,7 @@ GST_STATIC_PAD_TEMPLATE ( GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS ( - GST_VIDEO_YUV_PAD_TEMPLATE_CAPS ("{ I420, YUY2, YV12, UYVY }") + GST_VIDEO_CAPS_YUV ("{ I420, YUY2, YV12, UYVY }") /* FIXME: 15/16/24/32bpp RGB */ ) ); diff --git a/ext/divx/gstdivxenc.c b/ext/divx/gstdivxenc.c index 823805ad..bf71c317 100644 --- a/ext/divx/gstdivxenc.c +++ b/ext/divx/gstdivxenc.c @@ -40,7 +40,7 @@ GST_STATIC_PAD_TEMPLATE ( GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS ( - GST_VIDEO_YUV_PAD_TEMPLATE_CAPS ("{ I420, YUY2, YV12, YVYU, UYVY }") + GST_VIDEO_CAPS_YUV ("{ I420, YUY2, YV12, YVYU, UYVY }") /* FIXME: 15/16/24/32bpp RGB */ ) ); diff --git a/ext/hermes/gstcolorspace.c b/ext/hermes/gstcolorspace.c index 92fa4b49..7c97ff23 100644 --- a/ext/hermes/gstcolorspace.c +++ b/ext/hermes/gstcolorspace.c @@ -321,11 +321,15 @@ gst_colorspace_base_init (gpointer g_class) /* create caps for templates */ caps = gst_caps_from_string ( - GST_VIDEO_YUV_PAD_TEMPLATE_CAPS ("{ I420, YV12, YUY2 }") "; " - GST_VIDEO_RGB_PAD_TEMPLATE_CAPS_24_32_REVERSE "; " - GST_VIDEO_RGB_PAD_TEMPLATE_CAPS_24_32 "; " - GST_VIDEO_RGB_PAD_TEMPLATE_CAPS_15 "; " - GST_VIDEO_RGB_PAD_TEMPLATE_CAPS_16); + GST_VIDEO_CAPS_YUV ("{ I420, YV12, YUY2 }") "; " + GST_VIDEO_CAPS_RGB "; " + GST_VIDEO_CAPS_BGR "; " + GST_VIDEO_CAPS_xBGR "; " + GST_VIDEO_CAPS_xRGB "; " + GST_VIDEO_CAPS_BGRx "; " + GST_VIDEO_CAPS_RGBx "; " + GST_VIDEO_CAPS_RGB_15 "; " + GST_VIDEO_CAPS_RGB_16); /* build templates */ srctempl = gst_pad_template_new ("src", diff --git a/ext/snapshot/gstsnapshot.c b/ext/snapshot/gstsnapshot.c index eff6567a..10d8e3b7 100644 --- a/ext/snapshot/gstsnapshot.c +++ b/ext/snapshot/gstsnapshot.c @@ -41,7 +41,7 @@ GST_STATIC_PAD_TEMPLATE ( "src", GST_PAD_SRC, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_YUV_PAD_TEMPLATE_CAPS ("{ I420, YUY2 }")) + GST_STATIC_CAPS (GST_VIDEO_CAPS_YUV ("{ I420, YUY2 }")) ); static GstStaticPadTemplate snapshot_sink_factory = @@ -49,7 +49,7 @@ GST_STATIC_PAD_TEMPLATE ( "sink", GST_PAD_SINK, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_YUV_PAD_TEMPLATE_CAPS ("{ I420, YUY2 }")) + GST_STATIC_CAPS (GST_VIDEO_CAPS_YUV ("{ I420, YUY2 }")) ); /* Snapshot signals and args */ diff --git a/ext/swfdec/gstswfdec.c b/ext/swfdec/gstswfdec.c index a7837ede..b589be8c 100644 --- a/ext/swfdec/gstswfdec.c +++ b/ext/swfdec/gstswfdec.c @@ -49,7 +49,7 @@ GST_STATIC_PAD_TEMPLATE ( "video_00", GST_PAD_SRC, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_RGB_PAD_TEMPLATE_CAPS_24) + GST_STATIC_CAPS (GST_VIDEO_CAPS_RGB) ); static GstStaticPadTemplate audio_template_factory = diff --git a/ext/xvid/gstxviddec.c b/ext/xvid/gstxviddec.c index 82655f1f..c74b9947 100644 --- a/ext/xvid/gstxviddec.c +++ b/ext/xvid/gstxviddec.c @@ -54,13 +54,14 @@ GST_STATIC_PAD_TEMPLATE ( GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS ( - GST_VIDEO_YUV_PAD_TEMPLATE_CAPS ("{ I420, YUY2, YV12, YVYU, UYVY }") "; " + GST_VIDEO_CAPS_YUV ("{ I420, YUY2, YV12, YVYU, UYVY }") "; " RGB_24_32_STATIC_CAPS (32, 0x00ff0000, 0x0000ff00, 0x000000ff) "; " RGB_24_32_STATIC_CAPS (32, 0xff000000, 0x00ff0000, 0x0000ff00) "; " RGB_24_32_STATIC_CAPS (32, 0x0000ff00, 0x00ff0000, 0xff000000) "; " RGB_24_32_STATIC_CAPS (32, 0x000000ff, 0x0000ff00, 0x00ff0000) "; " RGB_24_32_STATIC_CAPS (24, 0x0000ff, 0x00ff00, 0xff0000) "; " - GST_VIDEO_RGB_PAD_TEMPLATE_CAPS_15_16 + GST_VIDEO_CAPS_RGB_15 "; " + GST_VIDEO_CAPS_RGB_16 ) ); diff --git a/ext/xvid/gstxvidenc.c b/ext/xvid/gstxvidenc.c index 72ec9d78..9945f125 100644 --- a/ext/xvid/gstxvidenc.c +++ b/ext/xvid/gstxvidenc.c @@ -42,13 +42,14 @@ GST_STATIC_PAD_TEMPLATE ( GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS ( - GST_VIDEO_YUV_PAD_TEMPLATE_CAPS ("{ I420, YUY2, YV12, YVYU, UYVY }") "; " + GST_VIDEO_CAPS_YUV ("{ I420, YUY2, YV12, YVYU, UYVY }") "; " RGB_24_32_STATIC_CAPS (32, 0x00ff0000, 0x0000ff00, 0x000000ff) "; " RGB_24_32_STATIC_CAPS (32, 0xff000000, 0x00ff0000, 0x0000ff00) "; " RGB_24_32_STATIC_CAPS (32, 0x0000ff00, 0x00ff0000, 0xff000000) "; " RGB_24_32_STATIC_CAPS (32, 0x000000ff, 0x0000ff00, 0x00ff0000) "; " RGB_24_32_STATIC_CAPS (24, 0x0000ff, 0x00ff00, 0xff0000) "; " - GST_VIDEO_RGB_PAD_TEMPLATE_CAPS_15_16 + GST_VIDEO_CAPS_RGB_15 "; " + GST_VIDEO_CAPS_RGB_16 ) ); diff --git a/gst-libs/gst/video/video.h b/gst-libs/gst/video/video.h index 669a6a54..cb8727a9 100644 --- a/gst-libs/gst/video/video.h +++ b/gst-libs/gst/video/video.h @@ -23,156 +23,136 @@ #include -#define R_MASK_32 "0xff000000" -#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" - -#define R_MASK_15 "0x7c00" -#define G_MASK_15 "0x03e0" -#define B_MASK_15 "0x001f" - -#define R_MASK_32_INT 0xff000000 -#define G_MASK_32_INT 0x00ff0000 -#define B_MASK_32_INT 0x0000ff00 - -#define R_MASK_32_REVERSE_INT 0x000000ff -#define G_MASK_32_REVERSE_INT 0x0000ff00 -#define B_MASK_32_REVERSE_INT 0x00ff0000 - -#define R_MASK_24_INT 0xff0000 -#define G_MASK_24_INT 0x00ff00 -#define B_MASK_24_INT 0x0000ff - -#define R_MASK_24_REVERSE_INT 0x0000ff -#define G_MASK_24_REVERSE_INT 0x00ff00 -#define B_MASK_24_REVERSE_INT 0xff0000 - -#define R_MASK_16_INT 0xf800 -#define G_MASK_16_INT 0x07e0 -#define B_MASK_16_INT 0x001f - -#define R_MASK_15_INT 0x7c00 -#define G_MASK_15_INT 0x03e0 -#define B_MASK_15_INT 0x001f - -#define SIZE_RANGE "(int) [ 16, 4096 ]" -#define FPS_RANGE "(double) [ 0, max ]" - -/* properties for pad templates */ -#define GST_VIDEO_RGB_PAD_TEMPLATE_CAPS_24_32 \ - GST_VIDEO_RGB_PAD_TEMPLATE_CAPS_32 "; " \ - GST_VIDEO_RGB_PAD_TEMPLATE_CAPS_24 - -#define GST_VIDEO_RGB_PAD_TEMPLATE_CAPS_24_32_REVERSE \ - GST_VIDEO_RGB_PAD_TEMPLATE_CAPS_32_REVERSE "; " \ - GST_VIDEO_RGB_PAD_TEMPLATE_CAPS_24_REVERSE - -#define GST_VIDEO_RGB_PAD_TEMPLATE_CAPS_32 \ - "video/x-raw-rgb, " \ - "bpp = (int) 32, " \ - "depth = (int) 24, " \ - "endianness = (int) BIG_ENDIAN, " \ - "red_mask = (int) " R_MASK_32 ", " \ - "green_mask = (int) " G_MASK_32 ", " \ - "blue_mask = (int) " B_MASK_32 ", " \ - "width = " SIZE_RANGE ", " \ - "height = " SIZE_RANGE ", " \ - "framerate = " FPS_RANGE - -#define GST_VIDEO_RGB_PAD_TEMPLATE_CAPS_24 \ - "video/x-raw-rgb, " \ - "bpp = (int) 24, " \ - "depth = (int) 24, " \ - "endianness = (int) BIG_ENDIAN, " \ - "red_mask = (int) " R_MASK_24 ", " \ - "green_mask = (int) " G_MASK_24 ", " \ - "blue_mask = (int) " B_MASK_24 ", " \ - "width = " SIZE_RANGE ", " \ - "height = " SIZE_RANGE ", " \ - "framerate = " FPS_RANGE - -#define GST_VIDEO_RGB_PAD_TEMPLATE_CAPS_32_REVERSE \ - "video/x-raw-rgb, " \ - "bpp = (int) 32, " \ - "depth = (int) 24, " \ - "endianness = (int) BIG_ENDIAN, " \ - "red_mask = (int) " R_MASK_32_REVERSE ", " \ - "green_mask = (int) " G_MASK_32_REVERSE ", " \ - "blue_mask = (int) " B_MASK_32_REVERSE ", " \ - "width = " SIZE_RANGE ", " \ - "height = " SIZE_RANGE ", " \ - "framerate = " FPS_RANGE - -#define GST_VIDEO_RGB_PAD_TEMPLATE_CAPS_24_REVERSE \ - "video/x-raw-rgb, " \ - "bpp = (int) 24, " \ - "depth = (int) 24, " \ - "endianness = (int) BIG_ENDIAN, " \ - "red_mask = (int) " R_MASK_24_REVERSE ", " \ - "green_mask = (int) " G_MASK_24_REVERSE ", " \ - "blue_mask = (int) " B_MASK_24_REVERSE ", " \ - "width = " SIZE_RANGE ", " \ - "height = " SIZE_RANGE ", " \ - "framerate = " FPS_RANGE - -#define GST_VIDEO_RGB_PAD_TEMPLATE_CAPS_15_16 \ - "video/x-raw-rgb, " \ - "bpp = (int) 16, " \ - "depth = (int) { 15, 16 }, " \ - "endianness = (int) BYTE_ORDER, " \ - "red_mask = (int) { " R_MASK_15 ", " R_MASK_16 " }, " \ - "green_mask = (int) { " G_MASK_15 ", " G_MASK_16 " }, " \ - "blue_mask = (int) { " B_MASK_15 ", " B_MASK_16 " }, " \ - "width = " SIZE_RANGE ", " \ - "height = " SIZE_RANGE ", " \ - "framerate = " FPS_RANGE - -#define GST_VIDEO_RGB_PAD_TEMPLATE_CAPS_16 \ - "video/x-raw-rgb, " \ - "bpp = (int) 16, " \ - "depth = (int) 16, " \ - "endianness = (int) BYTE_ORDER, " \ - "red_mask = (int) " R_MASK_16 ", " \ - "green_mask = (int) " G_MASK_16 ", " \ - "blue_mask = (int) " B_MASK_16 ", " \ - "width = " SIZE_RANGE ", " \ - "height = " SIZE_RANGE ", " \ - "framerate = " FPS_RANGE - -#define GST_VIDEO_RGB_PAD_TEMPLATE_CAPS_15 \ - "video/x-raw-rgb, " \ - "bpp = (int) 16, " \ - "depth = (int) 15, " \ - "endianness = (int) BYTE_ORDER, " \ - "red_mask = (int) " R_MASK_15 ", " \ - "green_mask = (int) " G_MASK_15 ", " \ - "blue_mask = (int) " B_MASK_15 ", " \ - "width = " SIZE_RANGE ", " \ - "height = " SIZE_RANGE ", " \ - "framerate = " FPS_RANGE - -#define GST_VIDEO_YUV_PAD_TEMPLATE_CAPS(fourcc) \ - "video/x-raw-yuv, " \ - "format = (fourcc) " fourcc ", " \ - "width = " SIZE_RANGE ", " \ - "height = " SIZE_RANGE ", " \ - "framerate = " FPS_RANGE +#define GST_VIDEO_BYTE1_MASK_32 "0xFF000000" +#define GST_VIDEO_BYTE2_MASK_32 "0x00FF0000" +#define GST_VIDEO_BYTE3_MASK_32 "0x0000FF00" +#define GST_VIDEO_BYTE4_MASK_32 "0x000000FF" + +#define GST_VIDEO_BYTE1_MASK_24 "0x00FF0000" +#define GST_VIDEO_BYTE2_MASK_24 "0x0000FF00" +#define GST_VIDEO_BYTE3_MASK_24 "0x000000FF" + +#define GST_VIDEO_BYTE1_MASK_32_INT 0xFF000000 +#define GST_VIDEO_BYTE2_MASK_32_INT 0x00FF0000 +#define GST_VIDEO_BYTE3_MASK_32_INT 0x0000FF00 +#define GST_VIDEO_BYTE4_MASK_32_INT 0x000000FF + +#define GST_VIDEO_BYTE1_MASK_24_INT 0x00FF0000 +#define GST_VIDEO_BYTE2_MASK_24_INT 0x0000FF00 +#define GST_VIDEO_BYTE3_MASK_24_INT 0x000000FF + +#define GST_VIDEO_RED_MASK_16 "0xf800" +#define GST_VIDEO_GREEN_MASK_16 "0x07e0" +#define GST_VIDEO_BLUE_MASK_16 "0x001f" + +#define GST_VIDEO_RED_MASK_15 "0x7c00" +#define GST_VIDEO_GREEN_MASK_15 "0x03e0" +#define GST_VIDEO_BLUE_MASK_15 "0x001f" + +#define GST_VIDEO_RED_MASK_16_INT 0xf800 +#define GST_VIDEO_GREEN_MASK_16_INT 0x07e0 +#define GST_VIDEO_BLUE_MASK_16_INT 0x001f + +#define GST_VIDEO_RED_MASK_15_INT 0x7c00 +#define GST_VIDEO_GREEN_MASK_15_INT 0x03e0 +#define GST_VIDEO_BLUE_MASK_15_INT 0x001f + +#define GST_VIDEO_SIZE_RANGE "(int) [ 16, 4096 ]" +#define GST_VIDEO_FPS_RANGE "(double) [ 0, max ]" + +/* consider the next 2 protected */ +#define __GST_VIDEO_CAPS_MAKE_32(R, G, B) \ + "video/x-raw-rgb, " \ + "bpp = (int) 32, " \ + "depth = (int) 24, " \ + "endianness = (int) BIG_ENDIAN, " \ + "red_mask = (int) " GST_VIDEO_BYTE ## R ## _MASK_32 ", " \ + "green_mask = (int) " GST_VIDEO_BYTE ## G ## _MASK_32 ", " \ + "blue_mask = (int) " GST_VIDEO_BYTE ## B ## _MASK_32 ", " \ + "width = " GST_VIDEO_SIZE_RANGE ", " \ + "height = " GST_VIDEO_SIZE_RANGE ", " \ + "framerate = " GST_VIDEO_FPS_RANGE + +#define __GST_VIDEO_CAPS_MAKE_24(R, G, B) \ + "video/x-raw-rgb, " \ + "bpp = (int) 24, " \ + "depth = (int) 24, " \ + "endianness = (int) BIG_ENDIAN, " \ + "red_mask = (int) " GST_VIDEO_BYTE ## R ## _MASK_24 ", " \ + "green_mask = (int) " GST_VIDEO_BYTE ## G ## _MASK_24 ", " \ + "blue_mask = (int) " GST_VIDEO_BYTE ## B ## _MASK_24 ", " \ + "width = " GST_VIDEO_SIZE_RANGE ", " \ + "height = " GST_VIDEO_SIZE_RANGE ", " \ + "framerate = " GST_VIDEO_FPS_RANGE + + +/* 24 bit */ + +#define GST_VIDEO_CAPS_RGB \ + __GST_VIDEO_CAPS_MAKE_24 (1, 2, 3) + +#define GST_VIDEO_CAPS_BGR \ + __GST_VIDEO_CAPS_MAKE_24 (3, 2, 1) + +/* 32 bit */ + +#define GST_VIDEO_CAPS_RGBx \ + __GST_VIDEO_CAPS_MAKE_32 (1, 2, 3) + +#define GST_VIDEO_CAPS_xRGB \ + __GST_VIDEO_CAPS_MAKE_32 (2, 3, 4) + +#define GST_VIDEO_CAPS_BGRx \ + __GST_VIDEO_CAPS_MAKE_32 (3, 2, 1) + +#define GST_VIDEO_CAPS_xBGR \ + __GST_VIDEO_CAPS_MAKE_32 (4, 3, 2) + +/* note: the macro name uses the order on BE systems */ +#if G_BYTE_ORDER == G_BIG_ENDIAN + #define GST_VIDEO_CAPS_xRGB_HOST_ENDIAN \ + GST_VIDEO_CAPS_xRGB + #define GST_VIDEO_CAPS_BGRx_HOST_ENDIAN \ + GST_VIDEO_CAPS_BGRx +#else + #define GST_VIDEO_CAPS_xRGB_HOST_ENDIAN \ + GST_VIDEO_CAPS_BGRx + #define GST_VIDEO_CAPS_BGRx_HOST_ENDIAN \ + GST_VIDEO_CAPS_xRGB +#endif + +/* 15/16 bit */ + +#define GST_VIDEO_CAPS_RGB_16 \ + "video/x-raw-rgb, " \ + "bpp = (int) 16, " \ + "depth = (int) 16, " \ + "endianness = (int) BYTE_ORDER, " \ + "red_mask = (int) " GST_VIDEO_RED_MASK_16 ", " \ + "green_mask = (int) " GST_VIDEO_GREEN_MASK_16 ", " \ + "blue_mask = (int) " GST_VIDEO_BLUE_MASK_16 ", " \ + "width = " GST_VIDEO_SIZE_RANGE ", " \ + "height = " GST_VIDEO_SIZE_RANGE ", " \ + "framerate = " GST_VIDEO_FPS_RANGE + +#define GST_VIDEO_CAPS_RGB_15 \ + "video/x-raw-rgb, " \ + "bpp = (int) 16, " \ + "depth = (int) 15, " \ + "endianness = (int) BYTE_ORDER, " \ + "red_mask = (int) " GST_VIDEO_RED_MASK_15 ", " \ + "green_mask = (int) " GST_VIDEO_GREEN_MASK_15 ", " \ + "blue_mask = (int) " GST_VIDEO_BLUE_MASK_15 ", " \ + "width = " GST_VIDEO_SIZE_RANGE ", " \ + "height = " GST_VIDEO_SIZE_RANGE ", " \ + "framerate = " GST_VIDEO_FPS_RANGE + +#define GST_VIDEO_CAPS_YUV(fourcc) \ + "video/x-raw-yuv, " \ + "format = (fourcc) " fourcc ", " \ + "width = " GST_VIDEO_SIZE_RANGE ", " \ + "height = " GST_VIDEO_SIZE_RANGE ", " \ + "framerate = " GST_VIDEO_FPS_RANGE /* functions */ gdouble gst_video_frame_rate (GstPad *pad); diff --git a/gst/chart/gstchart.c b/gst/chart/gstchart.c index 329b672e..cafc1416 100644 --- a/gst/chart/gstchart.c +++ b/gst/chart/gstchart.c @@ -85,7 +85,7 @@ GST_STATIC_PAD_TEMPLATE ( "src", GST_PAD_SRC, GST_PAD_ALWAYS, - GST_STATIC_CAPS ( GST_VIDEO_RGB_PAD_TEMPLATE_CAPS_16) + GST_STATIC_CAPS ( GST_VIDEO_CAPS_RGB_16) ); static GstStaticPadTemplate sink_factory = diff --git a/gst/deinterlace/gstdeinterlace.c b/gst/deinterlace/gstdeinterlace.c index 605eb3f6..31cc7a9d 100644 --- a/gst/deinterlace/gstdeinterlace.c +++ b/gst/deinterlace/gstdeinterlace.c @@ -55,7 +55,7 @@ GST_STATIC_PAD_TEMPLATE ( "src", GST_PAD_SRC, GST_PAD_ALWAYS, - GST_STATIC_CAPS ( GST_VIDEO_YUV_PAD_TEMPLATE_CAPS ("I420")) + GST_STATIC_CAPS ( GST_VIDEO_CAPS_YUV ("I420")) ); static GstStaticPadTemplate deinterlace_sink_factory = @@ -63,7 +63,7 @@ GST_STATIC_PAD_TEMPLATE ( "sink", GST_PAD_SINK, GST_PAD_ALWAYS, - GST_STATIC_CAPS ( GST_VIDEO_YUV_PAD_TEMPLATE_CAPS ("I420")) + GST_STATIC_CAPS ( GST_VIDEO_CAPS_YUV ("I420")) ); static GType gst_deinterlace_get_type (void); diff --git a/gst/flx/gstflxdec.c b/gst/flx/gstflxdec.c index ca893394..a8269ef6 100644 --- a/gst/flx/gstflxdec.c +++ b/gst/flx/gstflxdec.c @@ -61,7 +61,7 @@ GST_STATIC_PAD_TEMPLATE ( "src", GST_PAD_SRC, GST_PAD_ALWAYS, - GST_STATIC_CAPS ( GST_VIDEO_RGB_PAD_TEMPLATE_CAPS_32 ) + GST_STATIC_CAPS ( GST_VIDEO_CAPS_xRGB_HOST_ENDIAN ) ); @@ -484,7 +484,7 @@ gst_flxdec_loop (GstElement *element) flxdec->frame_time = flxh->speed * GST_MSECOND; } - caps = gst_caps_from_string (GST_VIDEO_RGB_PAD_TEMPLATE_CAPS_32); + caps = gst_caps_from_string (GST_VIDEO_CAPS_xRGB_HOST_ENDIAN); gst_caps_set_simple (caps, "width", G_TYPE_INT, flxh->width, "height", G_TYPE_INT, flxh->height, diff --git a/gst/overlay/gstoverlay.c b/gst/overlay/gstoverlay.c index f2c01b3f..fccd88b9 100644 --- a/gst/overlay/gstoverlay.c +++ b/gst/overlay/gstoverlay.c @@ -37,7 +37,7 @@ GST_STATIC_PAD_TEMPLATE ( "src", GST_PAD_SRC, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_YUV_PAD_TEMPLATE_CAPS("I420")) + GST_STATIC_CAPS (GST_VIDEO_CAPS_YUV("I420")) ); static GstStaticPadTemplate overlay_sink1_factory = @@ -45,7 +45,7 @@ GST_STATIC_PAD_TEMPLATE ( "sink1", GST_PAD_SINK, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_YUV_PAD_TEMPLATE_CAPS("I420")) + GST_STATIC_CAPS (GST_VIDEO_CAPS_YUV("I420")) ); static GstStaticPadTemplate overlay_sink2_factory = @@ -53,7 +53,7 @@ GST_STATIC_PAD_TEMPLATE ( "sink2", GST_PAD_SINK, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_YUV_PAD_TEMPLATE_CAPS("I420")) + GST_STATIC_CAPS (GST_VIDEO_CAPS_YUV("I420")) ); static GstStaticPadTemplate overlay_sink3_factory = @@ -61,7 +61,7 @@ GST_STATIC_PAD_TEMPLATE ( "sink3", GST_PAD_SINK, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_YUV_PAD_TEMPLATE_CAPS("I420")) + GST_STATIC_CAPS (GST_VIDEO_CAPS_YUV("I420")) ); /* OVERLAY signals and args */ diff --git a/gst/smooth/gstsmooth.c b/gst/smooth/gstsmooth.c index 6e38fe86..286786e8 100644 --- a/gst/smooth/gstsmooth.c +++ b/gst/smooth/gstsmooth.c @@ -53,7 +53,7 @@ GST_STATIC_PAD_TEMPLATE ( GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS ( - GST_VIDEO_YUV_PAD_TEMPLATE_CAPS("I420") + GST_VIDEO_CAPS_YUV("I420") ) ); @@ -63,7 +63,7 @@ GST_STATIC_PAD_TEMPLATE ( GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS ( - GST_VIDEO_YUV_PAD_TEMPLATE_CAPS("I420") + GST_VIDEO_CAPS_YUV("I420") ) ); diff --git a/gst/smpte/gstsmpte.c b/gst/smpte/gstsmpte.c index fffc4caa..ea17dc8c 100644 --- a/gst/smpte/gstsmpte.c +++ b/gst/smpte/gstsmpte.c @@ -39,7 +39,7 @@ GST_STATIC_PAD_TEMPLATE ( GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS ( - GST_VIDEO_YUV_PAD_TEMPLATE_CAPS("I420") + GST_VIDEO_CAPS_YUV("I420") ) ); @@ -49,7 +49,7 @@ GST_STATIC_PAD_TEMPLATE ( GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS ( - GST_VIDEO_YUV_PAD_TEMPLATE_CAPS("I420") + GST_VIDEO_CAPS_YUV("I420") ) ); @@ -59,7 +59,7 @@ GST_STATIC_PAD_TEMPLATE ( GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS ( - GST_VIDEO_YUV_PAD_TEMPLATE_CAPS("I420") + GST_VIDEO_CAPS_YUV("I420") ) ); diff --git a/gst/videocrop/gstvideocrop.c b/gst/videocrop/gstvideocrop.c index ab975a23..6a90b5b3 100644 --- a/gst/videocrop/gstvideocrop.c +++ b/gst/videocrop/gstvideocrop.c @@ -85,7 +85,7 @@ GST_STATIC_PAD_TEMPLATE ( "src", GST_PAD_SRC, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_YUV_PAD_TEMPLATE_CAPS ("I420")) + GST_STATIC_CAPS (GST_VIDEO_CAPS_YUV ("I420")) ); static GstStaticPadTemplate gst_video_crop_sink_template = @@ -93,7 +93,7 @@ GST_STATIC_PAD_TEMPLATE ( "sink", GST_PAD_SINK, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_YUV_PAD_TEMPLATE_CAPS ("I420")) + GST_STATIC_CAPS (GST_VIDEO_CAPS_YUV ("I420")) ); diff --git a/gst/videodrop/gstvideodrop.c b/gst/videodrop/gstvideodrop.c index e3dd45a7..b72e4252 100644 --- a/gst/videodrop/gstvideodrop.c +++ b/gst/videodrop/gstvideodrop.c @@ -50,7 +50,7 @@ GST_STATIC_PAD_TEMPLATE ( GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS( - GST_VIDEO_YUV_PAD_TEMPLATE_CAPS("{ YUY2, I420, YV12, YUYV, UYVY }") + GST_VIDEO_CAPS_YUV("{ YUY2, I420, YV12, YUYV, UYVY }") ) ); @@ -60,7 +60,7 @@ GST_STATIC_PAD_TEMPLATE ( GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS( - GST_VIDEO_YUV_PAD_TEMPLATE_CAPS("{ YUY2, I420, YV12, YUYV, UYVY }") + GST_VIDEO_CAPS_YUV("{ YUY2, I420, YV12, YUYV, UYVY }") ) ); diff --git a/gst/y4m/gsty4mencode.c b/gst/y4m/gsty4mencode.c index f45cf109..d27ff613 100644 --- a/gst/y4m/gsty4mencode.c +++ b/gst/y4m/gsty4mencode.c @@ -59,7 +59,7 @@ GST_STATIC_PAD_TEMPLATE ( "sink", GST_PAD_SINK, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_YUV_PAD_TEMPLATE_CAPS ("I420")) + GST_STATIC_CAPS (GST_VIDEO_CAPS_YUV ("I420")) ); static void gst_y4mencode_base_init (gpointer g_class); diff --git a/sys/qcam/gstqcamsrc.c b/sys/qcam/gstqcamsrc.c index 1312bb43..04de351f 100644 --- a/sys/qcam/gstqcamsrc.c +++ b/sys/qcam/gstqcamsrc.c @@ -60,7 +60,7 @@ GST_STATIC_PAD_TEMPLATE ( "src", GST_PAD_SRC, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_YUV_PAD_TEMPLATE_CAPS("I420")) + GST_STATIC_CAPS (GST_VIDEO_CAPS_YUV("I420")) ); #define GST_TYPE_AUTOEXP_MODE (gst_autoexp_mode_get_type()) -- cgit v1.2.1