From f981bec99d761aee6f91ba44f56aff9bb0c80b84 Mon Sep 17 00:00:00 2001 From: Sebastian Dröge Date: Sun, 12 Jul 2009 12:31:15 +0200 Subject: effectv: Fix processing on big endian architectures --- gst/effectv/gstaging.c | 16 ++++++++++++---- gst/effectv/gstedge.c | 16 ++++++++++++---- gst/effectv/gstop.c | 8 ++++++++ gst/effectv/gstquark.c | 6 ++++-- gst/effectv/gstradioac.c | 8 ++++++++ gst/effectv/gstrev.c | 16 ++++++++++++---- gst/effectv/gstshagadelic.c | 8 ++++++++ gst/effectv/gstvertigo.c | 16 ++++++++++++---- 8 files changed, 76 insertions(+), 18 deletions(-) (limited to 'gst') diff --git a/gst/effectv/gstaging.c b/gst/effectv/gstaging.c index ac833369..d07fc5f7 100644 --- a/gst/effectv/gstaging.c +++ b/gst/effectv/gstaging.c @@ -69,17 +69,25 @@ enum #define DEFAULT_DUSTS TRUE static GstStaticPadTemplate gst_agingtv_src_template = -GST_STATIC_PAD_TEMPLATE ("src", + GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_BGRx) +#if G_BYTE_ORDER == G_LITTLE_ENDIAN + GST_STATIC_CAPS (GST_VIDEO_CAPS_BGRx ";" GST_VIDEO_CAPS_RGBx) +#else + GST_STATIC_CAPS (GST_VIDEO_CAPS_xRGB ";" GST_VIDEO_CAPS_xBGR) +#endif ); static GstStaticPadTemplate gst_agingtv_sink_template = -GST_STATIC_PAD_TEMPLATE ("sink", + GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_BGRx) +#if G_BYTE_ORDER == G_LITTLE_ENDIAN + GST_STATIC_CAPS (GST_VIDEO_CAPS_BGRx ";" GST_VIDEO_CAPS_RGBx) +#else + GST_STATIC_CAPS (GST_VIDEO_CAPS_xRGB ";" GST_VIDEO_CAPS_xBGR) +#endif ); GST_BOILERPLATE (GstAgingTV, gst_agingtv, GstVideoFilter, diff --git a/gst/effectv/gstedge.c b/gst/effectv/gstedge.c index 444ee391..15f44099 100644 --- a/gst/effectv/gstedge.c +++ b/gst/effectv/gstedge.c @@ -51,17 +51,25 @@ GST_BOILERPLATE (GstEdgeTV, gst_edgetv, GstVideoFilter, GST_TYPE_VIDEO_FILTER); static GstStaticPadTemplate gst_edgetv_src_template = -GST_STATIC_PAD_TEMPLATE ("src", + GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_BGRx) +#if G_BYTE_ORDER == G_LITTLE_ENDIAN + GST_STATIC_CAPS (GST_VIDEO_CAPS_BGRx ";" GST_VIDEO_CAPS_RGBx) +#else + GST_STATIC_CAPS (GST_VIDEO_CAPS_xBGR ";" GST_VIDEO_CAPS_xRGB) +#endif ); static GstStaticPadTemplate gst_edgetv_sink_template = -GST_STATIC_PAD_TEMPLATE ("sink", + GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_BGRx) +#if G_BYTE_ORDER == G_LITTLE_ENDIAN + GST_STATIC_CAPS (GST_VIDEO_CAPS_BGRx ";" GST_VIDEO_CAPS_RGBx) +#else + GST_STATIC_CAPS (GST_VIDEO_CAPS_xBGR ";" GST_VIDEO_CAPS_xRGB) +#endif ); static gboolean diff --git a/gst/effectv/gstop.c b/gst/effectv/gstop.c index 192d935d..465eb955 100644 --- a/gst/effectv/gstop.c +++ b/gst/effectv/gstop.c @@ -101,14 +101,22 @@ static GstStaticPadTemplate gst_optv_src_template = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, +#if G_BYTE_ORDER == G_LITTLE_ENDIAN GST_STATIC_CAPS (GST_VIDEO_CAPS_BGRx "; " GST_VIDEO_CAPS_RGBx) +#else + GST_STATIC_CAPS (GST_VIDEO_CAPS_xBGR "; " GST_VIDEO_CAPS_xRGB) +#endif ); static GstStaticPadTemplate gst_optv_sink_template = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, +#if G_BYTE_ORDER == G_LITTLE_ENDIAN GST_STATIC_CAPS (GST_VIDEO_CAPS_BGRx "; " GST_VIDEO_CAPS_RGBx) +#else + GST_STATIC_CAPS (GST_VIDEO_CAPS_xBGR "; " GST_VIDEO_CAPS_xRGB) +#endif ); static void diff --git a/gst/effectv/gstquark.c b/gst/effectv/gstquark.c index d6cecc10..a05f3fca 100644 --- a/gst/effectv/gstquark.c +++ b/gst/effectv/gstquark.c @@ -69,14 +69,16 @@ static GstStaticPadTemplate gst_quarktv_src_template = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_BGRx "; " GST_VIDEO_CAPS_RGBx) + GST_STATIC_CAPS (GST_VIDEO_CAPS_xRGB ";" GST_VIDEO_CAPS_xBGR ";" + GST_VIDEO_CAPS_BGRx "; " GST_VIDEO_CAPS_RGBx) ); static GstStaticPadTemplate gst_quarktv_sink_template = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_BGRx "; " GST_VIDEO_CAPS_RGBx) + GST_STATIC_CAPS (GST_VIDEO_CAPS_xRGB ";" GST_VIDEO_CAPS_xBGR ";" + GST_VIDEO_CAPS_BGRx "; " GST_VIDEO_CAPS_RGBx) ); static gboolean diff --git a/gst/effectv/gstradioac.c b/gst/effectv/gstradioac.c index 9c20c470..92ffc7ba 100644 --- a/gst/effectv/gstradioac.c +++ b/gst/effectv/gstradioac.c @@ -142,14 +142,22 @@ static GstStaticPadTemplate gst_radioactv_src_template = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, +#if G_BYTE_ORDER == G_LITTLE_ENDIAN GST_STATIC_CAPS (GST_VIDEO_CAPS_RGBx) +#else + GST_STATIC_CAPS (GST_VIDEO_CAPS_xBGR) +#endif ); static GstStaticPadTemplate gst_radioactv_sink_template = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, +#if G_BYTE_ORDER == G_LITTLE_ENDIAN GST_STATIC_CAPS (GST_VIDEO_CAPS_RGBx) +#else + GST_STATIC_CAPS (GST_VIDEO_CAPS_xBGR) +#endif ); static void diff --git a/gst/effectv/gstrev.c b/gst/effectv/gstrev.c index 11d2019c..ca7945cd 100644 --- a/gst/effectv/gstrev.c +++ b/gst/effectv/gstrev.c @@ -79,17 +79,25 @@ enum GST_BOILERPLATE (GstRevTV, gst_revtv, GstVideoFilter, GST_TYPE_VIDEO_FILTER); static GstStaticPadTemplate gst_revtv_src_template = -GST_STATIC_PAD_TEMPLATE ("src", + GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_BGRx) +#if G_BYTE_ORDER == G_LITTLE_ENDIAN + GST_STATIC_CAPS (GST_VIDEO_CAPS_BGRx ";" GST_VIDEO_CAPS_RGBx) +#else + GST_STATIC_CAPS (GST_VIDEO_CAPS_xBGR ";" GST_VIDEO_CAPS_xRGB) +#endif ); static GstStaticPadTemplate gst_revtv_sink_template = -GST_STATIC_PAD_TEMPLATE ("sink", + GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_BGRx) +#if G_BYTE_ORDER == G_LITTLE_ENDIAN + GST_STATIC_CAPS (GST_VIDEO_CAPS_BGRx ";" GST_VIDEO_CAPS_RGBx) +#else + GST_STATIC_CAPS (GST_VIDEO_CAPS_xBGR ";" GST_VIDEO_CAPS_xRGB) +#endif ); static gboolean diff --git a/gst/effectv/gstshagadelic.c b/gst/effectv/gstshagadelic.c index 769eb233..89894d28 100644 --- a/gst/effectv/gstshagadelic.c +++ b/gst/effectv/gstshagadelic.c @@ -60,14 +60,22 @@ static GstStaticPadTemplate gst_shagadelictv_src_template = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, +#if G_BYTE_ORDER == G_LITTLE_ENDIAN GST_STATIC_CAPS (GST_VIDEO_CAPS_BGRx) +#else + GST_STATIC_CAPS (GST_VIDEO_CAPS_xRGB) +#endif ); static GstStaticPadTemplate gst_shagadelictv_sink_template = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, +#if G_BYTE_ORDER == G_LITTLE_ENDIAN GST_STATIC_CAPS (GST_VIDEO_CAPS_BGRx) +#else + GST_STATIC_CAPS (GST_VIDEO_CAPS_xRGB) +#endif ); static gboolean diff --git a/gst/effectv/gstvertigo.c b/gst/effectv/gstvertigo.c index d084909a..06cc0bb5 100644 --- a/gst/effectv/gstvertigo.c +++ b/gst/effectv/gstvertigo.c @@ -57,17 +57,25 @@ enum }; static GstStaticPadTemplate gst_vertigotv_src_template = -GST_STATIC_PAD_TEMPLATE ("src", + GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_BGRx) +#if G_BYTE_ORDER == G_LITTLE_ENDIAN + GST_STATIC_CAPS (GST_VIDEO_CAPS_RGBx ";" GST_VIDEO_CAPS_BGRx) +#else + GST_STATIC_CAPS (GST_VIDEO_CAPS_xRGB ";" GST_VIDEO_CAPS_xBGR) +#endif ); static GstStaticPadTemplate gst_vertigotv_sink_template = -GST_STATIC_PAD_TEMPLATE ("sink", + GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, - GST_STATIC_CAPS (GST_VIDEO_CAPS_BGRx) +#if G_BYTE_ORDER == G_LITTLE_ENDIAN + GST_STATIC_CAPS (GST_VIDEO_CAPS_RGBx ";" GST_VIDEO_CAPS_BGRx) +#else + GST_STATIC_CAPS (GST_VIDEO_CAPS_xRGB ";" GST_VIDEO_CAPS_xBGR) +#endif ); static gboolean -- cgit