On Tue, Jun 01, 2010 at 10:14:07PM +0200, Robert Schwebel wrote: > While being there, reworked the option list from the configure --help > output. > > Signed-off-by: Robert Schwebel <r.schwe...@pengutronix.de> > --- > .../add-RGB666-Support-to-ffmpegcolorspace.patch | 296 > -------------------- > .../add-rgb666-support-to-videotestsrc.patch | 82 ------ > patches/gst-plugins-base-0.10.25/series | 1 - > .../add-RGB666-Support-to-ffmpegcolorspace.patch | 296 > ++++++++++++++++++++ > .../add-rgb666-support-to-videotestsrc.patch | 82 ++++++ > patches/gst-plugins-base-0.10.29/series | 1 + > rules/gst-plugins-base.in | 36 ++-- > rules/gst-plugins-base.make | 58 +++-- > rules/qt4.in | 1 - > 9 files changed, 432 insertions(+), 421 deletions(-) > delete mode 100644 > patches/gst-plugins-base-0.10.25/add-RGB666-Support-to-ffmpegcolorspace.patch > delete mode 100644 > patches/gst-plugins-base-0.10.25/add-rgb666-support-to-videotestsrc.patch > delete mode 100644 patches/gst-plugins-base-0.10.25/series > create mode 100644 > patches/gst-plugins-base-0.10.29/add-RGB666-Support-to-ffmpegcolorspace.patch > create mode 100644 > patches/gst-plugins-base-0.10.29/add-rgb666-support-to-videotestsrc.patch > create mode 100644 patches/gst-plugins-base-0.10.29/series > > diff --git > a/patches/gst-plugins-base-0.10.25/add-RGB666-Support-to-ffmpegcolorspace.patch > > b/patches/gst-plugins-base-0.10.25/add-RGB666-Support-to-ffmpegcolorspace.patch > deleted file mode 100644 > index b8e2b47..0000000 > --- > a/patches/gst-plugins-base-0.10.25/add-RGB666-Support-to-ffmpegcolorspace.patch > +++ /dev/null > @@ -1,296 +0,0 @@ > -From: Luotao Fu <l...@pengutronix.de> > -Date: Thu, 11 Dec 2008 17:02:52 +0100 > -Subject: [PATCH] added RGB666 Support to ffmpegcolorspace > - > -This one adds RGB666 Support to ffmpegcolorspace > -Still very hacky, need to be enhanced before submitting to mainline > - > -Signed-off-by: Luotao Fu <l...@pengutronix.de> > ---- > - gst/ffmpegcolorspace/avcodec.h | 1 > - gst/ffmpegcolorspace/gstffmpegcodecmap.c | 26 ++++++++++- > - gst/ffmpegcolorspace/imgconvert.c | 70 > +++++++++++++++++++++++++++++-- > - 3 files changed, 90 insertions(+), 7 deletions(-) > - > -Index: gst/ffmpegcolorspace/avcodec.h > -=================================================================== > ---- gst/ffmpegcolorspace/avcodec.h.orig > -+++ gst/ffmpegcolorspace/avcodec.h > -@@ -87,6 +87,7 @@ enum PixelFormat { > - PIX_FMT_UYVY411, ///< Packed pixel, Cb Y0 Y1 Cr Y2 Y3 > - > - PIX_FMT_AYUV4444, ///< Packed pixel, A0 Y0 Cb Cr > -+ PIX_FMT_RGB666, > - PIX_FMT_NB > - }; > - > -Index: gst/ffmpegcolorspace/imgconvert.c > -=================================================================== > ---- gst/ffmpegcolorspace/imgconvert.c.orig > -+++ gst/ffmpegcolorspace/imgconvert.c > -@@ -409,8 +409,18 @@ static PixFmtInfo pix_fmt_info[PIX_FMT_N > - /* .x_chroma_shift = */ 0, > - /* .y_chroma_shift = */ 0, > - /*.depth = */ 8 > -+ }, > -+ /* [PIX_FMT_RGB666] = */ { > -+ /* .format = */ PIX_FMT_RGB666, > -+ /* .name = */ "rgb666", > -+ /* .nb_channels = */ 4, > -+ /* .color_type = */ FF_COLOR_RGB, > -+ /* .pixel_type = */ FF_PIXEL_PLANAR, > -+ /* .is_alpha = */ 0, > -+ /* .x_chroma_shift = */ 0, > -+ /* .y_chroma_shift = */ 0, > -+ /* .depth = */ 6, > - } > -- > - }; > - > - /* returns NULL if not found */ > -@@ -419,7 +429,6 @@ PixFmtInfo * > - get_pix_fmt_info (enum PixelFormat format) > - { > - int i; > -- > - for (i = 0; i < sizeof (pix_fmt_info) / sizeof (pix_fmt_info[0]); i++) { > - if (pix_fmt_info[i].format == format) { > - return pix_fmt_info + i; > -@@ -594,6 +603,8 @@ avg_bits_per_pixel (int pix_fmt) > - case PIX_FMT_RGB555: > - bits = 16; > - break; > -+ case PIX_FMT_RGB666: > -+ bits = 8 * pf->nb_channels; > - case PIX_FMT_UYVY411: > - bits = 12; > - break; > -@@ -603,7 +614,9 @@ avg_bits_per_pixel (int pix_fmt) > - } > - break; > - case FF_PIXEL_PLANAR: > -- if (pf->x_chroma_shift == 0 && pf->y_chroma_shift == 0) { > -+ if(pix_fmt == PIX_FMT_RGB666) { > -+ bits = 8 * pf->nb_channels; > -+ } else if (pf->x_chroma_shift == 0 && pf->y_chroma_shift == 0) { > - bits = pf->depth * pf->nb_channels; > - } else { > - bits = pf->depth + ((2 * pf->depth) >> > -@@ -661,7 +674,6 @@ avcodec_find_best_pix_fmt (int pix_fmt_m > - ~FF_LOSS_DEPTH, > - 0, > - }; > -- > - /* try with successive loss */ > - i = 0; > - for (;;) { > -@@ -1768,6 +1780,37 @@ bitcopy_n (unsigned int a, int n) > - > - #include "imgconvert_template.h" > - > -+/* rgb666 handling */ > -+ > -+#define RGB_NAME rgb666 > -+#define FMT_RGB666 > -+ > -+#define RGB_IN(r, g, b, s)\ > -+{\ > -+ unsigned int v = ((const uint32_t *)(s))[0];\ > -+ r = (v >> 12) & 0x3f;\ > -+ g = (v >> 6) & 0x3f;\ > -+ b = v & 0x3f;\ > -+} > -+ > -+#define RGBA_IN(r, g, b, a, s)\ > -+{\ > -+ unsigned int v = ((const uint32_t *)(s))[0];\ > -+ a = 0xff;\ > -+ r = (v >> 12) & 0x3f;\ > -+ g = (v >> 6) & 0x3f;\ > -+ b = v & 0x3f;\ > -+} > -+ > -+#define RGBA_OUT(d, r, g, b, a)\ > -+{\ > -+ ((uint32_t *)(d))[0] = ((r >> 2) << 12) | ((g >> 2) << 6) | (b >> 2);\ > -+} > -+ > -+#define BPP 4 > -+ > -+#include "imgconvert_template.h" > -+ > - /* xrgb32 handling */ > - > - #define RGB_NAME xrgb32 > -@@ -2099,6 +2142,7 @@ static ConvertEntry convert_table[] = { > - {PIX_FMT_YUV420P, PIX_FMT_RGB565, yuv420p_to_rgb565}, > - {PIX_FMT_YUV420P, PIX_FMT_BGR24, yuv420p_to_bgr24}, > - {PIX_FMT_YUV420P, PIX_FMT_RGB24, yuv420p_to_rgb24}, > -+ {PIX_FMT_YUV420P, PIX_FMT_RGB666, yuv420p_to_rgb666}, > - {PIX_FMT_YUV420P, PIX_FMT_RGB32, yuv420p_to_rgb32}, > - {PIX_FMT_YUV420P, PIX_FMT_BGR32, yuv420p_to_bgr32}, > - {PIX_FMT_YUV420P, PIX_FMT_xRGB32, yuv420p_to_xrgb32}, > -@@ -2112,6 +2156,7 @@ static ConvertEntry convert_table[] = { > - {PIX_FMT_NV12, PIX_FMT_RGB565, nv12_to_rgb565}, > - {PIX_FMT_NV12, PIX_FMT_BGR24, nv12_to_bgr24}, > - {PIX_FMT_NV12, PIX_FMT_RGB24, nv12_to_rgb24}, > -+ {PIX_FMT_NV12, PIX_FMT_RGB666, nv12_to_rgb666}, > - {PIX_FMT_NV12, PIX_FMT_RGB32, nv12_to_rgb32}, > - {PIX_FMT_NV12, PIX_FMT_BGR32, nv12_to_bgr32}, > - {PIX_FMT_NV12, PIX_FMT_xRGB32, nv12_to_xrgb32}, > -@@ -2126,6 +2171,7 @@ static ConvertEntry convert_table[] = { > - {PIX_FMT_NV21, PIX_FMT_RGB565, nv21_to_rgb565}, > - {PIX_FMT_NV21, PIX_FMT_BGR24, nv21_to_bgr24}, > - {PIX_FMT_NV21, PIX_FMT_RGB24, nv21_to_rgb24}, > -+ {PIX_FMT_NV21, PIX_FMT_RGB666, nv21_to_rgb666}, > - {PIX_FMT_NV21, PIX_FMT_RGB32, nv21_to_rgb32}, > - {PIX_FMT_NV21, PIX_FMT_BGR32, nv21_to_bgr32}, > - {PIX_FMT_NV21, PIX_FMT_xRGB32, nv21_to_xrgb32}, > -@@ -2145,6 +2191,7 @@ static ConvertEntry convert_table[] = { > - {PIX_FMT_YUVJ420P, PIX_FMT_RGB565, yuvj420p_to_rgb565}, > - {PIX_FMT_YUVJ420P, PIX_FMT_BGR24, yuvj420p_to_bgr24}, > - {PIX_FMT_YUVJ420P, PIX_FMT_RGB24, yuvj420p_to_rgb24}, > -+ {PIX_FMT_YUVJ420P, PIX_FMT_RGB666, yuvj420p_to_rgb666}, > - {PIX_FMT_YUVJ420P, PIX_FMT_RGB32, yuvj420p_to_rgb32}, > - {PIX_FMT_YUVJ420P, PIX_FMT_BGR32, yuvj420p_to_bgr32}, > - {PIX_FMT_YUVJ420P, PIX_FMT_RGB32, yuvj420p_to_xrgb32}, > -@@ -2167,6 +2214,7 @@ static ConvertEntry convert_table[] = { > - {PIX_FMT_RGB24, PIX_FMT_NV21, rgb24_to_nv21}, > - {PIX_FMT_RGB24, PIX_FMT_RGB565, rgb24_to_rgb565}, > - {PIX_FMT_RGB24, PIX_FMT_RGB555, rgb24_to_rgb555}, > -+ {PIX_FMT_RGB24, PIX_FMT_RGB666, rgb24_to_rgb666}, > - {PIX_FMT_RGB24, PIX_FMT_RGB32, rgb24_to_rgb32}, > - {PIX_FMT_RGB24, PIX_FMT_BGR32, rgb24_to_bgr32}, > - {PIX_FMT_RGB24, PIX_FMT_xRGB32, rgb24_to_xrgb32}, > -@@ -2185,6 +2233,7 @@ static ConvertEntry convert_table[] = { > - > - {PIX_FMT_RGB32, PIX_FMT_RGB24, rgb32_to_rgb24}, > - {PIX_FMT_RGB32, PIX_FMT_RGB555, rgba32_to_rgb555}, > -+ {PIX_FMT_RGB32, PIX_FMT_RGB666, rgba32_to_rgb666}, > - {PIX_FMT_RGB32, PIX_FMT_PAL8, rgb32_to_pal8}, > - {PIX_FMT_RGB32, PIX_FMT_YUV420P, rgb32_to_yuv420p}, > - {PIX_FMT_RGB32, PIX_FMT_NV12, rgb32_to_nv12}, > -@@ -2205,6 +2254,7 @@ static ConvertEntry convert_table[] = { > - {PIX_FMT_RGBA32, PIX_FMT_BGRx32, rgba32_to_bgrx32}, > - {PIX_FMT_RGBA32, PIX_FMT_ABGR32, rgba32_to_abgr32}, > - {PIX_FMT_RGBA32, PIX_FMT_RGB24, rgba32_to_rgb24}, > -+ {PIX_FMT_RGBA32, PIX_FMT_RGB666, rgba32_to_rgb666}, > - {PIX_FMT_RGBA32, PIX_FMT_RGB555, rgba32_to_rgb555}, > - {PIX_FMT_RGBA32, PIX_FMT_PAL8, rgba32_to_pal8}, > - {PIX_FMT_RGBA32, PIX_FMT_YUV420P, rgba32_to_yuv420p}, > -@@ -2269,10 +2319,18 @@ static ConvertEntry convert_table[] = { > - {PIX_FMT_RGB565, PIX_FMT_NV21, rgb565_to_nv21}, > - {PIX_FMT_RGB565, PIX_FMT_GRAY8, rgb565_to_gray}, > - > -+ {PIX_FMT_RGB666, PIX_FMT_GRAY8, rgb666_to_gray}, > -+ {PIX_FMT_RGB666, PIX_FMT_NV12, rgb666_to_nv12}, > -+ {PIX_FMT_RGB666, PIX_FMT_NV21, rgb666_to_nv21}, > -+ {PIX_FMT_RGB666, PIX_FMT_YUV420P, rgb666_to_yuv420p}, > -+ {PIX_FMT_RGB666, PIX_FMT_RGBA32, rgb666_to_rgba32}, > -+ {PIX_FMT_RGB666, PIX_FMT_RGB24, rgb666_to_rgb24}, > -+ > - {PIX_FMT_GRAY8, PIX_FMT_RGB555, gray_to_rgb555}, > - {PIX_FMT_GRAY8, PIX_FMT_RGB565, gray_to_rgb565}, > - {PIX_FMT_GRAY8, PIX_FMT_RGB24, gray_to_rgb24}, > - {PIX_FMT_GRAY8, PIX_FMT_BGR24, gray_to_bgr24}, > -+ {PIX_FMT_GRAY8, PIX_FMT_RGB666, gray_to_rgb666}, > - {PIX_FMT_GRAY8, PIX_FMT_RGB32, gray_to_rgb32}, > - {PIX_FMT_GRAY8, PIX_FMT_BGR32, gray_to_bgr32}, > - {PIX_FMT_GRAY8, PIX_FMT_xRGB32, gray_to_xrgb32}, > -@@ -2292,6 +2350,7 @@ static ConvertEntry convert_table[] = { > - {PIX_FMT_PAL8, PIX_FMT_RGB565, pal8_to_rgb565}, > - {PIX_FMT_PAL8, PIX_FMT_BGR24, pal8_to_bgr24}, > - {PIX_FMT_PAL8, PIX_FMT_RGB24, pal8_to_rgb24}, > -+ {PIX_FMT_PAL8, PIX_FMT_RGB666, pal8_to_rgb666}, > - {PIX_FMT_PAL8, PIX_FMT_RGB32, pal8_to_rgb32}, > - {PIX_FMT_PAL8, PIX_FMT_BGR32, pal8_to_bgr32}, > - {PIX_FMT_PAL8, PIX_FMT_xRGB32, pal8_to_xrgb32}, > -@@ -2656,6 +2715,9 @@ img_get_alpha_info (const AVPicture * sr > - case PIX_FMT_ABGR32: > - ret = get_alpha_info_abgr32 (src, width, height); > - break; > -+ case PIX_FMT_RGB666: > -+ ret = get_alpha_info_rgb666 (src, width, height); > -+ break; > - case PIX_FMT_RGB555: > - ret = get_alpha_info_rgb555 (src, width, height); > - break; > -Index: gst/ffmpegcolorspace/gstffmpegcodecmap.c > -=================================================================== > ---- gst/ffmpegcolorspace/gstffmpegcodecmap.c.orig > -+++ gst/ffmpegcolorspace/gstffmpegcodecmap.c > -@@ -219,6 +219,14 @@ gst_ffmpeg_pixfmt_to_caps (enum PixelFor > - b_mask = 0xff000000; > - #endif > - break; > -+ case PIX_FMT_RGB666: > -+ bpp = 32; > -+ depth = 18; > -+ endianness = G_BIG_ENDIAN; > -+ r_mask = 0x0003f000; > -+ g_mask = 0x00000fc0; > -+ b_mask = 0x0000003f; > -+ break; > - case PIX_FMT_BGR32: > - bpp = 32; > - depth = 24; > -@@ -630,7 +638,6 @@ gst_ffmpeg_caps_to_pixfmt (const GstCaps > - } > - } else if (gst_structure_has_name (structure, "video/x-raw-rgb")) { > - gint bpp = 0, rmask = 0, endianness = 0, amask = 0, depth = 0; > -- > - if (gst_structure_get_int (structure, "bpp", &bpp) && > - gst_structure_get_int (structure, "endianness", &endianness)) { > - if (gst_structure_get_int (structure, "red_mask", &rmask)) { > -@@ -642,6 +649,8 @@ gst_ffmpeg_caps_to_pixfmt (const GstCaps > - context->pix_fmt = PIX_FMT_BGRA32; > - else if (rmask == 0x00ff0000) > - context->pix_fmt = PIX_FMT_RGBA32; > -+ else if (rmask == 0x0003f000) > -+ context->pix_fmt = PIX_FMT_RGB666; > - else if (rmask == 0xff000000) > - context->pix_fmt = PIX_FMT_ARGB32; > - else // if (r_mask = 0x000000ff) > -@@ -651,6 +660,11 @@ gst_ffmpeg_caps_to_pixfmt (const GstCaps > - context->pix_fmt = PIX_FMT_BGRA32; > - else if (rmask == 0x0000ff00) > - context->pix_fmt = PIX_FMT_RGBA32; > -+ /* XXX: Hack here, gstreamer seems not to treat endianess in a > -+ * consistent way between plugins. Since we only have RGB666 for > -+ * now, We have to hack it around here */ > -+ else if (rmask == 0x0003f000) > -+ context->pix_fmt = PIX_FMT_RGB666; > - else if (rmask == 0x000000ff) > - context->pix_fmt = PIX_FMT_ARGB32; > - else // if (rmask == 0xff000000) > -@@ -662,7 +676,9 @@ gst_ffmpeg_caps_to_pixfmt (const GstCaps > - context->pix_fmt = PIX_FMT_RGB32; > - else if (rmask == 0x0000ff00) > - context->pix_fmt = PIX_FMT_BGR32; > -- else if (rmask == 0xff000000) > -+ else if (rmask == 0x0003f000) > -+ context->pix_fmt = PIX_FMT_RGB666; > -+ else if (rmask == 0xff000000) > - context->pix_fmt = PIX_FMT_xRGB32; > - else // if (rmask == 0x000000ff) > - context->pix_fmt = PIX_FMT_BGRx32; > -@@ -671,7 +687,10 @@ gst_ffmpeg_caps_to_pixfmt (const GstCaps > - context->pix_fmt = PIX_FMT_RGB32; > - else if (rmask == 0x00ff0000) > - context->pix_fmt = PIX_FMT_BGR32; > -- else if (rmask == 0x000000ff) > -+ /* XXX: Hack here, see XXX section above for more details */ > -+ else if (rmask == 0x0003f000) > -+ context->pix_fmt = PIX_FMT_RGB666; > -+ else if (rmask == 0x000000ff) > - context->pix_fmt = PIX_FMT_xRGB32; > - else // if (rmask == 0xff000000) > - context->pix_fmt = PIX_FMT_BGRx32; > -@@ -837,6 +856,7 @@ gst_ffmpegcsp_avpicture_fill (AVPicture > - picture->linesize[0] = stride; > - return size; > - case PIX_FMT_AYUV4444: > -+ case PIX_FMT_RGB666: > - case PIX_FMT_RGB32: > - case PIX_FMT_RGBA32: > - case PIX_FMT_ARGB32: > diff --git > a/patches/gst-plugins-base-0.10.25/add-rgb666-support-to-videotestsrc.patch > b/patches/gst-plugins-base-0.10.25/add-rgb666-support-to-videotestsrc.patch > deleted file mode 100644 > index 74fd685..0000000 > --- > a/patches/gst-plugins-base-0.10.25/add-rgb666-support-to-videotestsrc.patch > +++ /dev/null > @@ -1,82 +0,0 @@ > -From b03b40150cb7755d3bcdb1a42883a5543779e1dc Mon Sep 17 00:00:00 2001 > -From: Luotao Fu <l...@pengutronix.de> > -Date: Thu, 11 Dec 2008 15:17:36 +0100 > -Subject: [PATCH] add rgb666 support > - > - This one adds RGB666 support to videotestsrc. > - > -Signed-off-by: Luotao Fu <l...@pengutronix.de> > ---- > - gst/videotestsrc/videotestsrc.c | 28 ++++++++++++++++++++++++++++ > - 1 files changed, 28 insertions(+), 0 deletions(-) > - > -diff --git a/gst/videotestsrc/videotestsrc.c > b/gst/videotestsrc/videotestsrc.c > -index b9f29fb..e6fb9e5 100644 > ---- gst/videotestsrc/videotestsrc.c > -+++ gst/videotestsrc/videotestsrc.c > -@@ -329,6 +329,7 @@ static void paint_setup_xRGB8888 (paintinfo * p, > unsigned char *dest); > - static void paint_setup_xBGR8888 (paintinfo * p, unsigned char *dest); > - static void paint_setup_RGBx8888 (paintinfo * p, unsigned char *dest); > - static void paint_setup_BGRx8888 (paintinfo * p, unsigned char *dest); > -+static void paint_setup_RGB666 (paintinfo * p, unsigned char *dest); > - static void paint_setup_RGB888 (paintinfo * p, unsigned char *dest); > - static void paint_setup_BGR888 (paintinfo * p, unsigned char *dest); > - static void paint_setup_RGB565 (paintinfo * p, unsigned char *dest); > -@@ -351,6 +352,7 @@ static void paint_hline_IMC1 (paintinfo * p, int x, int > y, int w); > - static void paint_hline_YUV9 (paintinfo * p, int x, int y, int w); > - static void paint_hline_str4 (paintinfo * p, int x, int y, int w); > - static void paint_hline_str3 (paintinfo * p, int x, int y, int w); > -+static void paint_hline_RGB666 (paintinfo * p, int x, int y, int w); > - static void paint_hline_RGB565 (paintinfo * p, int x, int y, int w); > - static void paint_hline_xRGB1555 (paintinfo * p, int x, int y, int w); > - > -@@ -432,6 +434,8 @@ struct fourcc_list_struct fourcc_list[] = { > - 0xff000000, 0x00ff0000, 0x0000ff00, 0x000000ff}, > - {VTS_RGB, "RGB ", "BGRA8888", 32, paint_setup_BGRA8888, paint_hline_str4, > 32, > - 0x0000ff00, 0x00ff0000, 0xff000000, 0x000000ff}, > -+ {VTS_RGB, "RGB ", "RGB666", 32, paint_setup_RGB666, paint_hline_RGB666, > 18, > -+ 0x0003f000, 0x00000fc0, 0x0000003f}, > - {VTS_RGB, "RGB ", "RGB888", 24, paint_setup_RGB888, paint_hline_str3, 24, > - 0x00ff0000, 0x0000ff00, 0x000000ff}, > - {VTS_RGB, "RGB ", "BGR888", 24, paint_setup_BGR888, paint_hline_str3, 24, > -@@ -1700,6 +1704,16 @@ paint_setup_BGRx8888 (paintinfo * p, unsigned char > *dest) > - } > - > - static void > -+paint_setup_RGB666 (paintinfo * p, unsigned char *dest) > -+{ > -+ p->yp = dest + 0; > -+ p->up = dest + 1; > -+ p->vp = dest + 2; > -+ p->ystride = p->width * 4; > -+ p->endptr = p->dest + p->ystride * p->height; > -+} > -+ > -+static void > - paint_setup_RGB888 (paintinfo * p, unsigned char *dest) > - { > - p->yp = dest + 0; > -@@ -1735,6 +1749,20 @@ paint_hline_str4 (paintinfo * p, int x, int y, int w) > - } > - > - static void > -+paint_hline_RGB666 (paintinfo * p, int x, int y, int w) > -+{ > -+ int offset = y * p->ystride; > -+ guint8 a, b, c; > -+ a = (p->color->R & 0xC0) >> 6; > -+ b = ((p->color->R & 0xf0) << 2) | ((p->color->G & 0xf0) >> 4); > -+ c = ((p->color->G & 0x0c) << 4) | (p->color->B >> 2); > -+ > -+ oil_splat_u8 (p->yp + offset + x * 4, 4, &c, w); > -+ oil_splat_u8 (p->up + offset + x * 4, 4, &b, w); > -+ oil_splat_u8 (p->vp + offset + x * 4, 4, &a, w); > -+} > -+ > -+static void > - paint_hline_str3 (paintinfo * p, int x, int y, int w) > - { > - int offset = y * p->ystride; > --- > -1.5.6.5 > - > diff --git a/patches/gst-plugins-base-0.10.25/series > b/patches/gst-plugins-base-0.10.25/series > deleted file mode 100644 > index 97aff6e..0000000 > --- a/patches/gst-plugins-base-0.10.25/series > +++ /dev/null > @@ -1 +0,0 @@ > -add-RGB666-Support-to-ffmpegcolorspace.patch -p0 > diff --git > a/patches/gst-plugins-base-0.10.29/add-RGB666-Support-to-ffmpegcolorspace.patch > > b/patches/gst-plugins-base-0.10.29/add-RGB666-Support-to-ffmpegcolorspace.patch > new file mode 100644 > index 0000000..b8e2b47 > --- /dev/null > +++ > b/patches/gst-plugins-base-0.10.29/add-RGB666-Support-to-ffmpegcolorspace.patch > @@ -0,0 +1,296 @@ > +From: Luotao Fu <l...@pengutronix.de> > +Date: Thu, 11 Dec 2008 17:02:52 +0100 > +Subject: [PATCH] added RGB666 Support to ffmpegcolorspace > + > +This one adds RGB666 Support to ffmpegcolorspace > +Still very hacky, need to be enhanced before submitting to mainline > + > +Signed-off-by: Luotao Fu <l...@pengutronix.de> > +--- > + gst/ffmpegcolorspace/avcodec.h | 1 > + gst/ffmpegcolorspace/gstffmpegcodecmap.c | 26 ++++++++++- > + gst/ffmpegcolorspace/imgconvert.c | 70 > +++++++++++++++++++++++++++++-- > + 3 files changed, 90 insertions(+), 7 deletions(-) > + > +Index: gst/ffmpegcolorspace/avcodec.h > +=================================================================== > +--- gst/ffmpegcolorspace/avcodec.h.orig > ++++ gst/ffmpegcolorspace/avcodec.h > +@@ -87,6 +87,7 @@ enum PixelFormat { > + PIX_FMT_UYVY411, ///< Packed pixel, Cb Y0 Y1 Cr Y2 Y3 > + > + PIX_FMT_AYUV4444, ///< Packed pixel, A0 Y0 Cb Cr > ++ PIX_FMT_RGB666, > + PIX_FMT_NB > + }; > + > +Index: gst/ffmpegcolorspace/imgconvert.c > +=================================================================== > +--- gst/ffmpegcolorspace/imgconvert.c.orig > ++++ gst/ffmpegcolorspace/imgconvert.c > +@@ -409,8 +409,18 @@ static PixFmtInfo pix_fmt_info[PIX_FMT_N > + /* .x_chroma_shift = */ 0, > + /* .y_chroma_shift = */ 0, > + /*.depth = */ 8 > ++ }, > ++ /* [PIX_FMT_RGB666] = */ { > ++ /* .format = */ PIX_FMT_RGB666, > ++ /* .name = */ "rgb666", > ++ /* .nb_channels = */ 4, > ++ /* .color_type = */ FF_COLOR_RGB, > ++ /* .pixel_type = */ FF_PIXEL_PLANAR, > ++ /* .is_alpha = */ 0, > ++ /* .x_chroma_shift = */ 0, > ++ /* .y_chroma_shift = */ 0, > ++ /* .depth = */ 6, > + } > +- > + }; > + > + /* returns NULL if not found */ > +@@ -419,7 +429,6 @@ PixFmtInfo * > + get_pix_fmt_info (enum PixelFormat format) > + { > + int i; > +- > + for (i = 0; i < sizeof (pix_fmt_info) / sizeof (pix_fmt_info[0]); i++) { > + if (pix_fmt_info[i].format == format) { > + return pix_fmt_info + i; > +@@ -594,6 +603,8 @@ avg_bits_per_pixel (int pix_fmt) > + case PIX_FMT_RGB555: > + bits = 16; > + break; > ++ case PIX_FMT_RGB666: > ++ bits = 8 * pf->nb_channels; > + case PIX_FMT_UYVY411: > + bits = 12; > + break; > +@@ -603,7 +614,9 @@ avg_bits_per_pixel (int pix_fmt) > + } > + break; > + case FF_PIXEL_PLANAR: > +- if (pf->x_chroma_shift == 0 && pf->y_chroma_shift == 0) { > ++ if(pix_fmt == PIX_FMT_RGB666) { > ++ bits = 8 * pf->nb_channels; > ++ } else if (pf->x_chroma_shift == 0 && pf->y_chroma_shift == 0) { > + bits = pf->depth * pf->nb_channels; > + } else { > + bits = pf->depth + ((2 * pf->depth) >> > +@@ -661,7 +674,6 @@ avcodec_find_best_pix_fmt (int pix_fmt_m > + ~FF_LOSS_DEPTH, > + 0, > + }; > +- > + /* try with successive loss */ > + i = 0; > + for (;;) { > +@@ -1768,6 +1780,37 @@ bitcopy_n (unsigned int a, int n) > + > + #include "imgconvert_template.h" > + > ++/* rgb666 handling */ > ++ > ++#define RGB_NAME rgb666 > ++#define FMT_RGB666 > ++ > ++#define RGB_IN(r, g, b, s)\ > ++{\ > ++ unsigned int v = ((const uint32_t *)(s))[0];\ > ++ r = (v >> 12) & 0x3f;\ > ++ g = (v >> 6) & 0x3f;\ > ++ b = v & 0x3f;\ > ++} > ++ > ++#define RGBA_IN(r, g, b, a, s)\ > ++{\ > ++ unsigned int v = ((const uint32_t *)(s))[0];\ > ++ a = 0xff;\ > ++ r = (v >> 12) & 0x3f;\ > ++ g = (v >> 6) & 0x3f;\ > ++ b = v & 0x3f;\ > ++} > ++ > ++#define RGBA_OUT(d, r, g, b, a)\ > ++{\ > ++ ((uint32_t *)(d))[0] = ((r >> 2) << 12) | ((g >> 2) << 6) | (b >> 2);\ > ++} > ++ > ++#define BPP 4 > ++ > ++#include "imgconvert_template.h" > ++ > + /* xrgb32 handling */ > + > + #define RGB_NAME xrgb32 > +@@ -2099,6 +2142,7 @@ static ConvertEntry convert_table[] = { > + {PIX_FMT_YUV420P, PIX_FMT_RGB565, yuv420p_to_rgb565}, > + {PIX_FMT_YUV420P, PIX_FMT_BGR24, yuv420p_to_bgr24}, > + {PIX_FMT_YUV420P, PIX_FMT_RGB24, yuv420p_to_rgb24}, > ++ {PIX_FMT_YUV420P, PIX_FMT_RGB666, yuv420p_to_rgb666}, > + {PIX_FMT_YUV420P, PIX_FMT_RGB32, yuv420p_to_rgb32}, > + {PIX_FMT_YUV420P, PIX_FMT_BGR32, yuv420p_to_bgr32}, > + {PIX_FMT_YUV420P, PIX_FMT_xRGB32, yuv420p_to_xrgb32}, > +@@ -2112,6 +2156,7 @@ static ConvertEntry convert_table[] = { > + {PIX_FMT_NV12, PIX_FMT_RGB565, nv12_to_rgb565}, > + {PIX_FMT_NV12, PIX_FMT_BGR24, nv12_to_bgr24}, > + {PIX_FMT_NV12, PIX_FMT_RGB24, nv12_to_rgb24}, > ++ {PIX_FMT_NV12, PIX_FMT_RGB666, nv12_to_rgb666}, > + {PIX_FMT_NV12, PIX_FMT_RGB32, nv12_to_rgb32}, > + {PIX_FMT_NV12, PIX_FMT_BGR32, nv12_to_bgr32}, > + {PIX_FMT_NV12, PIX_FMT_xRGB32, nv12_to_xrgb32}, > +@@ -2126,6 +2171,7 @@ static ConvertEntry convert_table[] = { > + {PIX_FMT_NV21, PIX_FMT_RGB565, nv21_to_rgb565}, > + {PIX_FMT_NV21, PIX_FMT_BGR24, nv21_to_bgr24}, > + {PIX_FMT_NV21, PIX_FMT_RGB24, nv21_to_rgb24}, > ++ {PIX_FMT_NV21, PIX_FMT_RGB666, nv21_to_rgb666}, > + {PIX_FMT_NV21, PIX_FMT_RGB32, nv21_to_rgb32}, > + {PIX_FMT_NV21, PIX_FMT_BGR32, nv21_to_bgr32}, > + {PIX_FMT_NV21, PIX_FMT_xRGB32, nv21_to_xrgb32}, > +@@ -2145,6 +2191,7 @@ static ConvertEntry convert_table[] = { > + {PIX_FMT_YUVJ420P, PIX_FMT_RGB565, yuvj420p_to_rgb565}, > + {PIX_FMT_YUVJ420P, PIX_FMT_BGR24, yuvj420p_to_bgr24}, > + {PIX_FMT_YUVJ420P, PIX_FMT_RGB24, yuvj420p_to_rgb24}, > ++ {PIX_FMT_YUVJ420P, PIX_FMT_RGB666, yuvj420p_to_rgb666}, > + {PIX_FMT_YUVJ420P, PIX_FMT_RGB32, yuvj420p_to_rgb32}, > + {PIX_FMT_YUVJ420P, PIX_FMT_BGR32, yuvj420p_to_bgr32}, > + {PIX_FMT_YUVJ420P, PIX_FMT_RGB32, yuvj420p_to_xrgb32}, > +@@ -2167,6 +2214,7 @@ static ConvertEntry convert_table[] = { > + {PIX_FMT_RGB24, PIX_FMT_NV21, rgb24_to_nv21}, > + {PIX_FMT_RGB24, PIX_FMT_RGB565, rgb24_to_rgb565}, > + {PIX_FMT_RGB24, PIX_FMT_RGB555, rgb24_to_rgb555}, > ++ {PIX_FMT_RGB24, PIX_FMT_RGB666, rgb24_to_rgb666}, > + {PIX_FMT_RGB24, PIX_FMT_RGB32, rgb24_to_rgb32}, > + {PIX_FMT_RGB24, PIX_FMT_BGR32, rgb24_to_bgr32}, > + {PIX_FMT_RGB24, PIX_FMT_xRGB32, rgb24_to_xrgb32}, > +@@ -2185,6 +2233,7 @@ static ConvertEntry convert_table[] = { > + > + {PIX_FMT_RGB32, PIX_FMT_RGB24, rgb32_to_rgb24}, > + {PIX_FMT_RGB32, PIX_FMT_RGB555, rgba32_to_rgb555}, > ++ {PIX_FMT_RGB32, PIX_FMT_RGB666, rgba32_to_rgb666}, > + {PIX_FMT_RGB32, PIX_FMT_PAL8, rgb32_to_pal8}, > + {PIX_FMT_RGB32, PIX_FMT_YUV420P, rgb32_to_yuv420p}, > + {PIX_FMT_RGB32, PIX_FMT_NV12, rgb32_to_nv12}, > +@@ -2205,6 +2254,7 @@ static ConvertEntry convert_table[] = { > + {PIX_FMT_RGBA32, PIX_FMT_BGRx32, rgba32_to_bgrx32}, > + {PIX_FMT_RGBA32, PIX_FMT_ABGR32, rgba32_to_abgr32}, > + {PIX_FMT_RGBA32, PIX_FMT_RGB24, rgba32_to_rgb24}, > ++ {PIX_FMT_RGBA32, PIX_FMT_RGB666, rgba32_to_rgb666}, > + {PIX_FMT_RGBA32, PIX_FMT_RGB555, rgba32_to_rgb555}, > + {PIX_FMT_RGBA32, PIX_FMT_PAL8, rgba32_to_pal8}, > + {PIX_FMT_RGBA32, PIX_FMT_YUV420P, rgba32_to_yuv420p}, > +@@ -2269,10 +2319,18 @@ static ConvertEntry convert_table[] = { > + {PIX_FMT_RGB565, PIX_FMT_NV21, rgb565_to_nv21}, > + {PIX_FMT_RGB565, PIX_FMT_GRAY8, rgb565_to_gray}, > + > ++ {PIX_FMT_RGB666, PIX_FMT_GRAY8, rgb666_to_gray}, > ++ {PIX_FMT_RGB666, PIX_FMT_NV12, rgb666_to_nv12}, > ++ {PIX_FMT_RGB666, PIX_FMT_NV21, rgb666_to_nv21}, > ++ {PIX_FMT_RGB666, PIX_FMT_YUV420P, rgb666_to_yuv420p}, > ++ {PIX_FMT_RGB666, PIX_FMT_RGBA32, rgb666_to_rgba32}, > ++ {PIX_FMT_RGB666, PIX_FMT_RGB24, rgb666_to_rgb24}, > ++ > + {PIX_FMT_GRAY8, PIX_FMT_RGB555, gray_to_rgb555}, > + {PIX_FMT_GRAY8, PIX_FMT_RGB565, gray_to_rgb565}, > + {PIX_FMT_GRAY8, PIX_FMT_RGB24, gray_to_rgb24}, > + {PIX_FMT_GRAY8, PIX_FMT_BGR24, gray_to_bgr24}, > ++ {PIX_FMT_GRAY8, PIX_FMT_RGB666, gray_to_rgb666}, > + {PIX_FMT_GRAY8, PIX_FMT_RGB32, gray_to_rgb32}, > + {PIX_FMT_GRAY8, PIX_FMT_BGR32, gray_to_bgr32}, > + {PIX_FMT_GRAY8, PIX_FMT_xRGB32, gray_to_xrgb32}, > +@@ -2292,6 +2350,7 @@ static ConvertEntry convert_table[] = { > + {PIX_FMT_PAL8, PIX_FMT_RGB565, pal8_to_rgb565}, > + {PIX_FMT_PAL8, PIX_FMT_BGR24, pal8_to_bgr24}, > + {PIX_FMT_PAL8, PIX_FMT_RGB24, pal8_to_rgb24}, > ++ {PIX_FMT_PAL8, PIX_FMT_RGB666, pal8_to_rgb666}, > + {PIX_FMT_PAL8, PIX_FMT_RGB32, pal8_to_rgb32}, > + {PIX_FMT_PAL8, PIX_FMT_BGR32, pal8_to_bgr32}, > + {PIX_FMT_PAL8, PIX_FMT_xRGB32, pal8_to_xrgb32}, > +@@ -2656,6 +2715,9 @@ img_get_alpha_info (const AVPicture * sr > + case PIX_FMT_ABGR32: > + ret = get_alpha_info_abgr32 (src, width, height); > + break; > ++ case PIX_FMT_RGB666: > ++ ret = get_alpha_info_rgb666 (src, width, height); > ++ break; > + case PIX_FMT_RGB555: > + ret = get_alpha_info_rgb555 (src, width, height); > + break; > +Index: gst/ffmpegcolorspace/gstffmpegcodecmap.c > +=================================================================== > +--- gst/ffmpegcolorspace/gstffmpegcodecmap.c.orig > ++++ gst/ffmpegcolorspace/gstffmpegcodecmap.c > +@@ -219,6 +219,14 @@ gst_ffmpeg_pixfmt_to_caps (enum PixelFor > + b_mask = 0xff000000; > + #endif > + break; > ++ case PIX_FMT_RGB666: > ++ bpp = 32; > ++ depth = 18; > ++ endianness = G_BIG_ENDIAN; > ++ r_mask = 0x0003f000; > ++ g_mask = 0x00000fc0; > ++ b_mask = 0x0000003f; > ++ break; > + case PIX_FMT_BGR32: > + bpp = 32; > + depth = 24; > +@@ -630,7 +638,6 @@ gst_ffmpeg_caps_to_pixfmt (const GstCaps > + } > + } else if (gst_structure_has_name (structure, "video/x-raw-rgb")) { > + gint bpp = 0, rmask = 0, endianness = 0, amask = 0, depth = 0; > +- > + if (gst_structure_get_int (structure, "bpp", &bpp) && > + gst_structure_get_int (structure, "endianness", &endianness)) { > + if (gst_structure_get_int (structure, "red_mask", &rmask)) { > +@@ -642,6 +649,8 @@ gst_ffmpeg_caps_to_pixfmt (const GstCaps > + context->pix_fmt = PIX_FMT_BGRA32; > + else if (rmask == 0x00ff0000) > + context->pix_fmt = PIX_FMT_RGBA32; > ++ else if (rmask == 0x0003f000) > ++ context->pix_fmt = PIX_FMT_RGB666; > + else if (rmask == 0xff000000) > + context->pix_fmt = PIX_FMT_ARGB32; > + else // if (r_mask = 0x000000ff) > +@@ -651,6 +660,11 @@ gst_ffmpeg_caps_to_pixfmt (const GstCaps > + context->pix_fmt = PIX_FMT_BGRA32; > + else if (rmask == 0x0000ff00) > + context->pix_fmt = PIX_FMT_RGBA32; > ++ /* XXX: Hack here, gstreamer seems not to treat endianess in a > ++ * consistent way between plugins. Since we only have RGB666 for > ++ * now, We have to hack it around here */ > ++ else if (rmask == 0x0003f000) > ++ context->pix_fmt = PIX_FMT_RGB666; > + else if (rmask == 0x000000ff) > + context->pix_fmt = PIX_FMT_ARGB32; > + else // if (rmask == 0xff000000) > +@@ -662,7 +676,9 @@ gst_ffmpeg_caps_to_pixfmt (const GstCaps > + context->pix_fmt = PIX_FMT_RGB32; > + else if (rmask == 0x0000ff00) > + context->pix_fmt = PIX_FMT_BGR32; > +- else if (rmask == 0xff000000) > ++ else if (rmask == 0x0003f000) > ++ context->pix_fmt = PIX_FMT_RGB666; > ++ else if (rmask == 0xff000000) > + context->pix_fmt = PIX_FMT_xRGB32; > + else // if (rmask == 0x000000ff) > + context->pix_fmt = PIX_FMT_BGRx32; > +@@ -671,7 +687,10 @@ gst_ffmpeg_caps_to_pixfmt (const GstCaps > + context->pix_fmt = PIX_FMT_RGB32; > + else if (rmask == 0x00ff0000) > + context->pix_fmt = PIX_FMT_BGR32; > +- else if (rmask == 0x000000ff) > ++ /* XXX: Hack here, see XXX section above for more details */ > ++ else if (rmask == 0x0003f000) > ++ context->pix_fmt = PIX_FMT_RGB666; > ++ else if (rmask == 0x000000ff) > + context->pix_fmt = PIX_FMT_xRGB32; > + else // if (rmask == 0xff000000) > + context->pix_fmt = PIX_FMT_BGRx32; > +@@ -837,6 +856,7 @@ gst_ffmpegcsp_avpicture_fill (AVPicture > + picture->linesize[0] = stride; > + return size; > + case PIX_FMT_AYUV4444: > ++ case PIX_FMT_RGB666: > + case PIX_FMT_RGB32: > + case PIX_FMT_RGBA32: > + case PIX_FMT_ARGB32: > diff --git > a/patches/gst-plugins-base-0.10.29/add-rgb666-support-to-videotestsrc.patch > b/patches/gst-plugins-base-0.10.29/add-rgb666-support-to-videotestsrc.patch > new file mode 100644 > index 0000000..74fd685 > --- /dev/null > +++ > b/patches/gst-plugins-base-0.10.29/add-rgb666-support-to-videotestsrc.patch > @@ -0,0 +1,82 @@ > +From b03b40150cb7755d3bcdb1a42883a5543779e1dc Mon Sep 17 00:00:00 2001 > +From: Luotao Fu <l...@pengutronix.de> > +Date: Thu, 11 Dec 2008 15:17:36 +0100 > +Subject: [PATCH] add rgb666 support > + > + This one adds RGB666 support to videotestsrc. > + > +Signed-off-by: Luotao Fu <l...@pengutronix.de> > +--- > + gst/videotestsrc/videotestsrc.c | 28 ++++++++++++++++++++++++++++ > + 1 files changed, 28 insertions(+), 0 deletions(-) > + > +diff --git a/gst/videotestsrc/videotestsrc.c > b/gst/videotestsrc/videotestsrc.c > +index b9f29fb..e6fb9e5 100644 > +--- gst/videotestsrc/videotestsrc.c > ++++ gst/videotestsrc/videotestsrc.c > +@@ -329,6 +329,7 @@ static void paint_setup_xRGB8888 (paintinfo * p, > unsigned char *dest); > + static void paint_setup_xBGR8888 (paintinfo * p, unsigned char *dest); > + static void paint_setup_RGBx8888 (paintinfo * p, unsigned char *dest); > + static void paint_setup_BGRx8888 (paintinfo * p, unsigned char *dest); > ++static void paint_setup_RGB666 (paintinfo * p, unsigned char *dest); > + static void paint_setup_RGB888 (paintinfo * p, unsigned char *dest); > + static void paint_setup_BGR888 (paintinfo * p, unsigned char *dest); > + static void paint_setup_RGB565 (paintinfo * p, unsigned char *dest); > +@@ -351,6 +352,7 @@ static void paint_hline_IMC1 (paintinfo * p, int x, int > y, int w); > + static void paint_hline_YUV9 (paintinfo * p, int x, int y, int w); > + static void paint_hline_str4 (paintinfo * p, int x, int y, int w); > + static void paint_hline_str3 (paintinfo * p, int x, int y, int w); > ++static void paint_hline_RGB666 (paintinfo * p, int x, int y, int w); > + static void paint_hline_RGB565 (paintinfo * p, int x, int y, int w); > + static void paint_hline_xRGB1555 (paintinfo * p, int x, int y, int w); > + > +@@ -432,6 +434,8 @@ struct fourcc_list_struct fourcc_list[] = { > + 0xff000000, 0x00ff0000, 0x0000ff00, 0x000000ff}, > + {VTS_RGB, "RGB ", "BGRA8888", 32, paint_setup_BGRA8888, paint_hline_str4, > 32, > + 0x0000ff00, 0x00ff0000, 0xff000000, 0x000000ff}, > ++ {VTS_RGB, "RGB ", "RGB666", 32, paint_setup_RGB666, paint_hline_RGB666, > 18, > ++ 0x0003f000, 0x00000fc0, 0x0000003f}, > + {VTS_RGB, "RGB ", "RGB888", 24, paint_setup_RGB888, paint_hline_str3, 24, > + 0x00ff0000, 0x0000ff00, 0x000000ff}, > + {VTS_RGB, "RGB ", "BGR888", 24, paint_setup_BGR888, paint_hline_str3, 24, > +@@ -1700,6 +1704,16 @@ paint_setup_BGRx8888 (paintinfo * p, unsigned char > *dest) > + } > + > + static void > ++paint_setup_RGB666 (paintinfo * p, unsigned char *dest) > ++{ > ++ p->yp = dest + 0; > ++ p->up = dest + 1; > ++ p->vp = dest + 2; > ++ p->ystride = p->width * 4; > ++ p->endptr = p->dest + p->ystride * p->height; > ++} > ++ > ++static void > + paint_setup_RGB888 (paintinfo * p, unsigned char *dest) > + { > + p->yp = dest + 0; > +@@ -1735,6 +1749,20 @@ paint_hline_str4 (paintinfo * p, int x, int y, int w) > + } > + > + static void > ++paint_hline_RGB666 (paintinfo * p, int x, int y, int w) > ++{ > ++ int offset = y * p->ystride; > ++ guint8 a, b, c; > ++ a = (p->color->R & 0xC0) >> 6; > ++ b = ((p->color->R & 0xf0) << 2) | ((p->color->G & 0xf0) >> 4); > ++ c = ((p->color->G & 0x0c) << 4) | (p->color->B >> 2); > ++ > ++ oil_splat_u8 (p->yp + offset + x * 4, 4, &c, w); > ++ oil_splat_u8 (p->up + offset + x * 4, 4, &b, w); > ++ oil_splat_u8 (p->vp + offset + x * 4, 4, &a, w); > ++} > ++ > ++static void > + paint_hline_str3 (paintinfo * p, int x, int y, int w) > + { > + int offset = y * p->ystride; > +-- > +1.5.6.5 > + > diff --git a/patches/gst-plugins-base-0.10.29/series > b/patches/gst-plugins-base-0.10.29/series > new file mode 100644 > index 0000000..97aff6e > --- /dev/null > +++ b/patches/gst-plugins-base-0.10.29/series > @@ -0,0 +1 @@ > +add-RGB666-Support-to-ffmpegcolorspace.patch -p0 > diff --git a/rules/gst-plugins-base.in b/rules/gst-plugins-base.in > index 81aadbc..c7a8b86 100644 > --- a/rules/gst-plugins-base.in > +++ b/rules/gst-plugins-base.in > @@ -35,14 +35,14 @@ if GST_PLUGINS_BASE > comment "dependency less plugins" > # ------------------------------- > > - config GST_PLUGINS_BASE_APP > - bool > - prompt "app" > - > config GST_PLUGINS_BASE_ADDER > bool > prompt "adder" > > + config GST_PLUGINS_BASE_APP > + bool > + prompt "app" > + > config GST_PLUGINS_BASE_AUDIOCONVERT > bool > prompt "audioconvert" > @@ -51,22 +51,10 @@ if GST_PLUGINS_BASE > bool > prompt "audiorate" > > - config GST_PLUGINS_BASE_AUDIORESAMPLE > - bool > - prompt "audioresample" > - > config GST_PLUGINS_BASE_AUDIOTESTSRC > bool > prompt "audiotestsrc" > > - config GST_PLUGINS_BASE_DECODEBIN > - bool > - prompt "decodebin" > - > - config GST_PLUGINS_BASE_DECODEBIN_2 > - bool > - prompt "decodebin2" > -
You forgot to remove the stuff from gst-plugins-base.make for these. > config GST_PLUGINS_BASE_FFMPEGCOLORSPACE > bool > prompt "ffmpegcolorspace" > @@ -75,9 +63,13 @@ if GST_PLUGINS_BASE > bool > prompt "gdp" > > - config GST_PLUGINS_BASE_PLAYBIN dito > + config GST_PLUGINS_BASE_PLAYBACK > + bool > + prompt "playback" > + this was not added to gst-plugins-base.make targetinstall > + config GST_PLUGINS_BASE_AUDIORESAMPLE > bool > - prompt "playbin" > + prompt "audioresample" > > config GST_PLUGINS_BASE_SUBPARSE > bool > @@ -107,6 +99,10 @@ if GST_PLUGINS_BASE > bool > prompt "volume" > > + config GST_PLUGINS_BASE_ISO_CODES > + bool > + prompt "iso codes" > + dito > comment "plugins with dependencies" > > config GST_PLUGINS_BASE_X > @@ -143,6 +139,10 @@ if GST_PLUGINS_BASE > depends on BROKEN > prompt "gnome_vfs [BROKEN]" > > + config GST_PLUGINS_BASE_IVORBIS > + bool > + prompt "ivorbis" > + > config GST_PLUGINS_BASE_GIO > bool > prompt "gio" > diff --git a/rules/gst-plugins-base.make b/rules/gst-plugins-base.make > index 85d253d..5fff40b 100644 > --- a/rules/gst-plugins-base.make > +++ b/rules/gst-plugins-base.make > @@ -16,7 +16,7 @@ PACKAGES-$(PTXCONF_GST_PLUGINS_BASE) += gst-plugins-base > # > # Paths and names > # > -GST_PLUGINS_BASE_VERSION := 0.10.25 > +GST_PLUGINS_BASE_VERSION := 0.10.29 > GST_PLUGINS_BASE := gst-plugins-base-$(GST_PLUGINS_BASE_VERSION) > GST_PLUGINS_BASE_SUFFIX := tar.bz2 > GST_PLUGINS_BASE_URL := > http://gstreamer.freedesktop.org/src/gst-plugins-base/$(GST_PLUGINS_BASE).$(GST_PLUGINS_BASE_SUFFIX) > @@ -40,42 +40,39 @@ $(GST_PLUGINS_BASE_SOURCE): > # > GST_PLUGINS_BASE_AUTOCONF := \ > $(CROSS_AUTOCONF_USR) \ > - --disable-rpath \ > + --enable-option-checking \ > + --enable-silent-rules \ > --disable-nls \ > + --disable-rpath \ > --disable-debug \ > --disable-profiling \ > --disable-valgrind \ > --disable-gcov \ > --disable-examples \ > - --disable-largefile \ > - --disable-gtk-doc \ > --enable-external \ > --disable-experimental \ > + --disable-largefile \ > + --disable-gtk-doc \ > + --disable-gobject-cast-checks \ > --disable-oggtest \ > --disable-vorbistest \ > --disable-freetypetest \ > --without-libiconv-prefix \ > - --without-libintl-prefix \ > - --enable-shave > + --without-libintl-prefix > > # --with-plugins=foo,bar,baz only works for depencyless plugins and > # when no plugins are given it falls back to its default which is > # to enable all plugins, so --with-plugins is useless for us. > > -ifdef PTXCONF_GST_PLUGINS_BASE_APP > -GST_PLUGINS_BASE_AUTOCONF += --enable-app > -else > -GST_PLUGINS_BASE_AUTOCONF += --disable-app > -endif > ifdef PTXCONF_GST_PLUGINS_BASE_ADDER > GST_PLUGINS_BASE_AUTOCONF += --enable-adder > else > GST_PLUGINS_BASE_AUTOCONF += --disable-adder > endif > -ifdef PTXCONF_GST_PLUGINS_BASE_AUDIOCONVERT > -GST_PLUGINS_BASE_AUTOCONF += --enable-audioconvert > +ifdef PTXCONF_GST_PLUGINS_BASE_APP > +GST_PLUGINS_BASE_AUTOCONF += --enable-app > else > -GST_PLUGINS_BASE_AUTOCONF += --disable-audioconvert > +GST_PLUGINS_BASE_AUTOCONF += --disable-app > endif > ifdef PTXCONF_GST_PLUGINS_BASE_AUDIOCONVERT > GST_PLUGINS_BASE_AUTOCONF += --enable-audioconvert > @@ -87,11 +84,6 @@ GST_PLUGINS_BASE_AUTOCONF += --enable-audiorate > else > GST_PLUGINS_BASE_AUTOCONF += --disable-audiorate > endif > -ifdef PTXCONF_GST_PLUGINS_BASE_AUDIORESAMPLE > -GST_PLUGINS_BASE_AUTOCONF += --enable-audioresample > -else > -GST_PLUGINS_BASE_AUTOCONF += --disable-audioresample > -endif > ifdef PTXCONF_GST_PLUGINS_BASE_AUDIOTESTSRC > GST_PLUGINS_BASE_AUTOCONF += --enable-audiotestsrc > else > @@ -107,11 +99,16 @@ GST_PLUGINS_BASE_AUTOCONF += --enable-gdp > else > GST_PLUGINS_BASE_AUTOCONF += --disable-gdp > endif > -ifneq > ($(PTXCONF_GST_PLUGINS_BASE_PLAYBIN)$(PTXCONF_GST_PLUGINS_BASE_DECODEBIN)$(PTXCONF_GST_PLUGINS_BASE_DECODEBIN2),) > +ifdef PTXCONF_GST_PLUGINS_PLAYBACK ifdef PTXCONF_GST_PLUGINS_BASE_PLAYBACK > GST_PLUGINS_BASE_AUTOCONF += --enable-playback > else > GST_PLUGINS_BASE_AUTOCONF += --disable-playback > endif > +ifdef PTXCONF_GST_PLUGINS_BASE_AUDIORESAMPLE > +GST_PLUGINS_BASE_AUTOCONF += --enable-audioresample > +else > +GST_PLUGINS_BASE_AUTOCONF += --disable-audioresample > +endif > ifdef PTXCONF_GST_PLUGINS_BASE_SUBPARSE > GST_PLUGINS_BASE_AUTOCONF += --enable-subparse > else > @@ -147,6 +144,11 @@ GST_PLUGINS_BASE_AUTOCONF += --enable-volume > else > GST_PLUGINS_BASE_AUTOCONF += --disable-volume > endif > +ifdef PTXCONF_GST_PLUGINS_BASE_ISO_CODES > +GST_PLUGINS_BASE_AUTOCONF += --enable-iso-codes > +else > +GST_PLUGINS_BASE_AUTOCONF += --disable-iso-codes > +endif > ifdef PTXCONF_GST_PLUGINS_BASE_X > GST_PLUGINS_BASE_AUTOCONF += --enable-x > GST_PLUGINS_BASE_AUTOCONF += --with-x=$(SYSROOT)/usr > @@ -184,6 +186,11 @@ GST_PLUGINS_BASE_AUTOCONF += --enable-gnome_vfs > else > GST_PLUGINS_BASE_AUTOCONF += --disable-gnome_vfs > endif > +ifdef PTXCONF_GST_PLUGINS_BASE_IVORBIS > +GST_PLUGINS_BASE_AUTOCONF += --enable-ivorbis > +else > +GST_PLUGINS_BASE_AUTOCONF += --disable-ivorbis > +endif > ifdef PTXCONF_GST_PLUGINS_BASE_GIO > GST_PLUGINS_BASE_AUTOCONF += --enable-gio > else > @@ -215,10 +222,15 @@ else > GST_PLUGINS_BASE_AUTOCONF += --disable-vorbis > endif > > +# --enable-introspection=[no/auto/yes] Enable introspection for this build > +# --with-plugins comma-separated list of dependencyless plug-ins to > compile > + > # > ---------------------------------------------------------------------------- > # Target-Install > # > ---------------------------------------------------------------------------- > > +GST_PLUGINS_BASE_LIB_VERSION := 0.20.0 > + > $(STATEDIR)/gst-plugins-base.targetinstall: > @$(call targetinfo) > > @@ -237,9 +249,9 @@ $(STATEDIR)/gst-plugins-base.targetinstall: > > # install all activated libs > @cd $(GST_PLUGINS_BASE_PKGDIR)/usr/lib/ && for libs in `find -name > "*-0.10.so"`; do \ > - $(call install_copy, gst-plugins-base, 0, 0, 0644, -, > /usr/lib/$$libs.0.18.0); \ > - $(call install_link, gst-plugins-base, $$libs.0.18.0, > /usr/lib/$$libs.0); \ > - $(call install_link, gst-plugins-base, $$libs.0.18.0, > /usr/lib/$$libs); \ > + $(call install_copy, gst-plugins-base, 0, 0, 0644, -, > /usr/lib/$$libs.$(GST_PLUGINS_BASE_LIB_VERSION)); \ > + $(call install_link, gst-plugins-base, > $$libs.$(GST_PLUGINS_BASE_LIB_VERSION), /usr/lib/$$libs.0); \ > + $(call install_link, gst-plugins-base, > $$libs.$(GST_PLUGINS_BASE_LIB_VERSION), /usr/lib/$$libs); \ > done > > ifdef PTXCONF_GST_PLUGINS_BASE_APP > diff --git a/rules/qt4.in b/rules/qt4.in > index 21f37d8..13cd585 100644 > --- a/rules/qt4.in > +++ b/rules/qt4.in > @@ -13,7 +13,6 @@ menuconfig QT4 > select DIRECTFB if QT4_GFX_DIRECTFB_PLUGIN > select GSTREAMER if QT4_BUILD_PHONON > select GST_PLUGINS_BASE if QT4_BUILD_PHONON > - select GST_PLUGINS_BASE_DECODEBIN if QT4_BUILD_PHONON > select OPENSSL if QT4_OPENSSL > # libsvga is currently not in ptxdist > # select LIBSVGA if QT4_GFX_SVGA_PLUGIN > -- > 1.7.1 > > > -- > ptxdist mailing list > ptxdist@pengutronix.de > -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | -- ptxdist mailing list ptxdist@pengutronix.de