diff options
author | kwm <kwm@df743ca5-7f9a-e211-a948-0013205c9059> | 2005-06-12 17:05:57 +0800 |
---|---|---|
committer | kwm <kwm@df743ca5-7f9a-e211-a948-0013205c9059> | 2005-06-12 17:05:57 +0800 |
commit | 3d0dca5f6df1b14e03008c238a17495fa889fd71 (patch) | |
tree | 659646024e6fb4def042eed0fe39d840c3d271c4 /multimedia/gstreamer-plugins80 | |
parent | 86b5598bd7c7c49949d84431e1b64de7dfade480 (diff) | |
download | marcuscom-ports-3d0dca5f6df1b14e03008c238a17495fa889fd71.tar marcuscom-ports-3d0dca5f6df1b14e03008c238a17495fa889fd71.tar.gz marcuscom-ports-3d0dca5f6df1b14e03008c238a17495fa889fd71.tar.bz2 marcuscom-ports-3d0dca5f6df1b14e03008c238a17495fa889fd71.tar.lz marcuscom-ports-3d0dca5f6df1b14e03008c238a17495fa889fd71.tar.xz marcuscom-ports-3d0dca5f6df1b14e03008c238a17495fa889fd71.tar.zst marcuscom-ports-3d0dca5f6df1b14e03008c238a17495fa889fd71.zip |
Update to 0.8.9.
Fix the cairo plugin with offical patches for cairo 0.5.0 [1].
Obtained from: Gstreamer cvs
git-svn-id: svn://creme-brulee.marcuscom.com/ports/trunk@4079 df743ca5-7f9a-e211-a948-0013205c9059
Diffstat (limited to 'multimedia/gstreamer-plugins80')
12 files changed, 588 insertions, 168 deletions
diff --git a/multimedia/gstreamer-plugins80/Makefile b/multimedia/gstreamer-plugins80/Makefile index 0fe186d23..eee7ff11d 100644 --- a/multimedia/gstreamer-plugins80/Makefile +++ b/multimedia/gstreamer-plugins80/Makefile @@ -6,8 +6,7 @@ # PORTNAME= gstreamer -PORTVERSION= 0.8.8 -PORTREVISION?= 3 +PORTVERSION= 0.8.9 CATEGORIES?= multimedia audio MASTER_SITES= ${MASTER_SITE_GNOME} \ http://gstreamer.freedesktop.org/src/gst-plugins/ diff --git a/multimedia/gstreamer-plugins80/Makefile.common b/multimedia/gstreamer-plugins80/Makefile.common index 287243726..f5f5602d0 100644 --- a/multimedia/gstreamer-plugins80/Makefile.common +++ b/multimedia/gstreamer-plugins80/Makefile.common @@ -74,7 +74,6 @@ GST_ALL_PLUGINS= \ theora \ vcd \ vorbis \ - xine \ vorbistest \ xvid @@ -95,9 +94,12 @@ CONFIGURE_ARGS+=--disable-tests \ --disable-osx_audio \ --disable-osx_video \ --enable-static \ + --disable-spc \ --disable-sunaudio \ --disable-gst_v4l \ --disable-gst_v4l2 \ + --enable-wavepack \ + --disable-xine \ --enable-x \ --enable-xshm \ --enable-xvideo @@ -441,11 +443,6 @@ LIB_DEPENDS+= vorbis.3:${PORTSDIR}/audio/libvorbis LIB_DEPENDS+= vorbisidec.1:${PORTSDIR}/audio/libtremor .endif -# xine -.if ${GST_PLUGIN}=="xine" -LIB_DEPENDS+= xine.13:${PORTSDIR}/multimedia/libxine -.endif - # xvid .if ${GST_PLUGIN}=="xvid" LIB_DEPENDS+= xvidcore.4:${PORTSDIR}/multimedia/xvid diff --git a/multimedia/gstreamer-plugins80/distinfo b/multimedia/gstreamer-plugins80/distinfo index 1b58081ff..a0b5018d8 100644 --- a/multimedia/gstreamer-plugins80/distinfo +++ b/multimedia/gstreamer-plugins80/distinfo @@ -1,2 +1,2 @@ -MD5 (gnome2/gst-plugins-0.8.8.tar.bz2) = 4f6e7e730fa674ecd6ec713f937b8acb -SIZE (gnome2/gst-plugins-0.8.8.tar.bz2) = 2214274 +MD5 (gnome2/gst-plugins-0.8.9.tar.bz2) = 663461ef7b16e9bd7f2605e4ed0db5ba +SIZE (gnome2/gst-plugins-0.8.9.tar.bz2) = 2356958 diff --git a/multimedia/gstreamer-plugins80/files/patch-cairo-0.5.0 b/multimedia/gstreamer-plugins80/files/patch-cairo-0.5.0 deleted file mode 100644 index b20dacb60..000000000 --- a/multimedia/gstreamer-plugins80/files/patch-cairo-0.5.0 +++ /dev/null @@ -1,158 +0,0 @@ ---- ext/cairo/gsttextoverlay.c.orig Mon May 23 13:54:19 2005 -+++ ext/cairo/gsttextoverlay.c Mon May 23 13:54:19 2005 -@@ -223,22 +223,20 @@ - g_free (overlay->text_fill_image); - overlay->text_fill_image = - g_malloc (4 * overlay->width * overlay->text_height); -- cairo_set_target_image (overlay->cr, overlay->text_fill_image, -+ cairo_image_surface_create_for_data (overlay->text_fill_image, - CAIRO_FORMAT_ARGB32, overlay->width, overlay->text_height, - overlay->width * 4); - - cairo_save (overlay->cr); - cairo_rectangle (overlay->cr, 0, 0, overlay->width, overlay->text_height); -- cairo_set_rgb_color (overlay->cr, 0, 0, 0); -- cairo_set_alpha (overlay->cr, 1.0); -- cairo_set_operator (overlay->cr, CAIRO_OPERATOR_SRC); -- cairo_fill (overlay->cr); -+ cairo_set_source_rgba (overlay->cr, 0, 0, 0, 1.0); -+ cairo_set_operator (overlay->cr, CAIRO_OPERATOR_SOURCE); -+ cairo_paint (overlay->cr); - cairo_restore (overlay->cr); - - cairo_save (overlay->cr); - cairo_text_extents (overlay->cr, string, &extents); -- cairo_set_rgb_color (overlay->cr, 1, 1, 1); -- cairo_set_alpha (overlay->cr, 1.0); -+ cairo_set_source_rgba (overlay->cr, 1, 1, 1, 1.0); - switch (overlay->halign) { - case GST_TEXT_OVERLAY_HALIGN_LEFT: - x = overlay->x0; -@@ -261,22 +259,19 @@ - g_free (overlay->text_outline_image); - overlay->text_outline_image = - g_malloc (4 * overlay->width * overlay->text_height); -- cairo_set_target_image (overlay->cr, overlay->text_outline_image, -+ cairo_image_surface_create_for_data ( overlay->text_outline_image, - CAIRO_FORMAT_ARGB32, overlay->width, overlay->text_height, - overlay->width * 4); - - cairo_save (overlay->cr); -- cairo_rectangle (overlay->cr, 0, 0, overlay->width, overlay->text_height); -- cairo_set_rgb_color (overlay->cr, 0, 0, 0); -- cairo_set_alpha (overlay->cr, 1.0); -- cairo_set_operator (overlay->cr, CAIRO_OPERATOR_SRC); -- cairo_fill (overlay->cr); -+ cairo_set_source_rgba (overlay->cr, 0, 0, 0, 1.0); -+ cairo_set_operator (overlay->cr, CAIRO_OPERATOR_SOURCE); -+ cairo_paint (overlay->cr); - cairo_restore (overlay->cr); - - cairo_save (overlay->cr); - cairo_move_to (overlay->cr, x, y); -- cairo_set_rgb_color (overlay->cr, 1, 1, 1); -- cairo_set_alpha (overlay->cr, 1.0); -+ cairo_set_source_rgba (overlay->cr, 1, 1, 1, 1.0); - cairo_set_line_width (overlay->cr, 1.0); - cairo_text_path (overlay->cr, string); - cairo_stroke (overlay->cr); -@@ -538,11 +533,11 @@ - { - cairo_font_extents_t font_extents; - -- cairo_select_font (overlay->cr, overlay->font, overlay->slant, -+ cairo_select_font_face (overlay->cr, overlay->font, overlay->slant, - overlay->weight); -- cairo_scale_font (overlay->cr, overlay->scale); -+ cairo_set_font_size (overlay->cr, overlay->scale); - -- cairo_current_font_extents (overlay->cr, &font_extents); -+ cairo_font_extents (overlay->cr, &font_extents); - overlay->text_height = font_extents.height; - if (overlay->text_height & 1) - overlay->text_height++; -@@ -586,6 +581,7 @@ - static void - gst_textoverlay_init (GstTextOverlay * overlay) - { -+ cairo_surface_t *surface; - /* video sink */ - overlay->video_sinkpad = - gst_pad_new_from_template (gst_static_pad_template_get -@@ -606,7 +602,7 @@ - (&textoverlay_src_template_factory), "src"); - gst_element_add_pad (GST_ELEMENT (overlay), overlay->srcpad); - -- overlay->cr = cairo_create (); -+ overlay->cr = cairo_create (surface); - - overlay->halign = GST_TEXT_OVERLAY_HALIGN_CENTER; - overlay->valign = GST_TEXT_OVERLAY_VALIGN_BASELINE; ---- ext/cairo/gsttimeoverlay.c.orig Mon May 23 13:54:19 2005 -+++ ext/cairo/gsttimeoverlay.c Mon May 23 14:05:58 2005 -@@ -31,6 +31,7 @@ - #include <gsttimeoverlay.h> - #include <string.h> - #include <math.h> -+#include <inttypes.h> - - #include <cairo.h> - -@@ -196,22 +197,25 @@ - { - GstTimeoverlay *timeoverlay; - cairo_font_extents_t font_extents; -+ cairo_surface_t *surface; - - g_return_if_fail (GST_IS_TIMEOVERLAY (videofilter)); - timeoverlay = GST_TIMEOVERLAY (videofilter); - - /* if any setup needs to be done, do it here */ - -- timeoverlay->cr = cairo_create (); -+// timeoverlay->cr = cairo_create (); -+ timeoverlay->cr = cairo_create (surface); - -- cairo_set_rgb_color (timeoverlay->cr, 0, 0, 0); -+ cairo_set_source_rgb (timeoverlay->cr, 0, 0, 0); - -- cairo_select_font (timeoverlay->cr, "monospace", 0, 0); -- cairo_scale_font (timeoverlay->cr, 20); -+ cairo_select_font_face (timeoverlay->cr, "monospace", 0, 0); -+ cairo_set_font_size (timeoverlay->cr, 20); - -- cairo_current_font_extents (timeoverlay->cr, &font_extents); -+ cairo_font_extents (timeoverlay->cr, &font_extents); - timeoverlay->text_height = font_extents.height; - -+ cairo_surface_destroy (surface); - } - - static char * -@@ -260,20 +264,19 @@ - - image = g_malloc (4 * width * timeoverlay->text_height); - -- cairo_set_target_image (timeoverlay->cr, image, CAIRO_FORMAT_ARGB32, -+ cairo_image_surface_create_for_data (image, CAIRO_FORMAT_ARGB32, - width, timeoverlay->text_height, width * 4); - - cairo_save (timeoverlay->cr); -- cairo_rectangle (timeoverlay->cr, 0, 0, width, timeoverlay->text_height); -- cairo_set_alpha (timeoverlay->cr, 0); -- cairo_set_operator (timeoverlay->cr, CAIRO_OPERATOR_SRC); -- cairo_fill (timeoverlay->cr); -- cairo_restore (timeoverlay->cr); -+ -+ cairo_set_source_rgba (0, 0, width, timeoverlay->text_height, 0); -+ cairo_set_operator (timeoverlay->cr, CAIRO_OPERATOR_SOURCE); -+ cairo_paint (timeoverlay->cr); - - cairo_save (timeoverlay->cr); - cairo_text_extents (timeoverlay->cr, string, &extents); - -- cairo_set_rgb_color (timeoverlay->cr, 1, 1, 1); -+ cairo_set_source_rgb (timeoverlay->cr, 1, 1, 1); - cairo_move_to (timeoverlay->cr, 0, timeoverlay->text_height - 2); - cairo_show_text (timeoverlay->cr, string); - g_free (string); diff --git a/multimedia/gstreamer-plugins80/files/patch-ext_cairo_gstcairo.c b/multimedia/gstreamer-plugins80/files/patch-ext_cairo_gstcairo.c new file mode 100644 index 000000000..788e2df28 --- /dev/null +++ b/multimedia/gstreamer-plugins80/files/patch-ext_cairo_gstcairo.c @@ -0,0 +1,10 @@ +--- ext/cairo/gstcairo.c.orig Sun Jun 12 10:43:25 2005 ++++ ext/cairo/gstcairo.c Sun Jun 12 10:44:04 2005 +@@ -46,5 +46,5 @@ + return TRUE; + } + +-GST_PLUGIN_DEFINE (GST_VERSION_MAJOR, GST_VERSION_MINOR, "timeoverlay", +- "Time overlay", plugin_init, VERSION, GST_LICENSE, GST_PACKAGE, GST_ORIGIN) ++GST_PLUGIN_DEFINE (GST_VERSION_MAJOR, GST_VERSION_MINOR, "cairo", ++ "Cairo", plugin_init, VERSION, GST_LICENSE, GST_PACKAGE, GST_ORIGIN) diff --git a/multimedia/gstreamer-plugins80/files/patch-ext_cairo_gsttextoverlay.c b/multimedia/gstreamer-plugins80/files/patch-ext_cairo_gsttextoverlay.c new file mode 100644 index 000000000..7da96c50b --- /dev/null +++ b/multimedia/gstreamer-plugins80/files/patch-ext_cairo_gsttextoverlay.c @@ -0,0 +1,249 @@ +--- ext/cairo/gsttextoverlay.c.orig Sun Jun 12 10:43:32 2005 ++++ ext/cairo/gsttextoverlay.c Sun Jun 12 10:44:04 2005 +@@ -84,18 +84,9 @@ + + static GstElementClass *parent_class = NULL; + +-/*static guint gst_textoverlay_signals[LAST_SIGNAL] = { 0 }; */ +- +-/* This is for cairo 0.4, remove once we require 0.5 */ +-#ifndef CAIRO_API_SHAKEUP_FLAG_DAY +-#define cairo_set_source_rgba(cr,red,green,blue,alpha) {\ +- cairo_set_rgb_color(cr,red,green,blue); \ +- cairo_set_alpha(cr,alpha); } +-#endif +- + + GType +-gst_textoverlay_get_type (void) ++gst_cairotextoverlay_get_type (void) + { + static GType textoverlay_type = 0; + +@@ -113,7 +104,7 @@ + }; + + textoverlay_type = +- g_type_register_static (GST_TYPE_ELEMENT, "GstTextOverlay", ++ g_type_register_static (GST_TYPE_ELEMENT, "GstCairoTextOverlay", + &textoverlay_info, 0); + } + return textoverlay_type; +@@ -221,30 +212,37 @@ + int textlen) + { + cairo_text_extents_t extents; ++ cairo_surface_t *surface; ++ cairo_t *cr; + char *string; + double x, y; + + string = g_strndup (text, textlen); + +- if (overlay->text_fill_image) +- g_free (overlay->text_fill_image); + overlay->text_fill_image = +- g_malloc (4 * overlay->width * overlay->text_height); +- cairo_set_target_image (overlay->cr, (gchar *) overlay->text_fill_image, ++ g_realloc (overlay->text_fill_image, ++ 4 * overlay->width * overlay->text_height); ++ ++ surface = cairo_image_surface_create_for_data (overlay->text_fill_image, + CAIRO_FORMAT_ARGB32, overlay->width, overlay->text_height, + overlay->width * 4); + +- cairo_save (overlay->cr); +- cairo_rectangle (overlay->cr, 0, 0, overlay->width, overlay->text_height); +- cairo_set_source_rgba (overlay->cr, 0, 0, 0, 1.0); +- +- cairo_set_operator (overlay->cr, CAIRO_OPERATOR_SRC); +- cairo_fill (overlay->cr); +- cairo_restore (overlay->cr); +- +- cairo_save (overlay->cr); +- cairo_text_extents (overlay->cr, (guchar *) string, &extents); +- cairo_set_source_rgba (overlay->cr, 1, 1, 1, 1.0); ++ cr = cairo_create (surface); ++ ++ cairo_select_font_face (cr, overlay->font, overlay->slant, overlay->weight); ++ cairo_set_font_size (cr, overlay->scale); ++ ++ cairo_save (cr); ++ cairo_rectangle (cr, 0, 0, overlay->width, overlay->text_height); ++ cairo_set_source_rgba (cr, 0, 0, 0, 1.0); ++ ++ cairo_set_operator (cr, CAIRO_OPERATOR_SOURCE); ++ cairo_fill (cr); ++ cairo_restore (cr); ++ ++ cairo_save (cr); ++ cairo_text_extents (cr, string, &extents); ++ cairo_set_source_rgba (cr, 1, 1, 1, 1.0); + + switch (overlay->halign) { + case GST_TEXT_OVERLAY_HALIGN_LEFT: +@@ -260,42 +258,53 @@ + x = 0; + } + y = overlay->text_height - 2; +- cairo_move_to (overlay->cr, x, y); +- cairo_show_text (overlay->cr, (guchar *) string); +- cairo_restore (overlay->cr); ++ cairo_move_to (cr, x, y); ++ cairo_show_text (cr, string); ++ cairo_restore (cr); ++ ++ cairo_destroy (cr); ++ cairo_surface_destroy (surface); ++ ++ /* ----------- */ + +- if (overlay->text_outline_image) +- g_free (overlay->text_outline_image); + overlay->text_outline_image = +- g_malloc (4 * overlay->width * overlay->text_height); +- cairo_set_target_image (overlay->cr, (gchar *) overlay->text_outline_image, ++ g_realloc (overlay->text_outline_image, ++ 4 * overlay->width * overlay->text_height); ++ ++ surface = cairo_image_surface_create_for_data (overlay->text_outline_image, + CAIRO_FORMAT_ARGB32, overlay->width, overlay->text_height, + overlay->width * 4); + +- cairo_save (overlay->cr); +- cairo_rectangle (overlay->cr, 0, 0, overlay->width, overlay->text_height); +- cairo_set_source_rgba (overlay->cr, 0, 0, 0, 1.0); +- cairo_set_operator (overlay->cr, CAIRO_OPERATOR_SRC); +- cairo_fill (overlay->cr); +- cairo_restore (overlay->cr); +- +- cairo_save (overlay->cr); +- cairo_move_to (overlay->cr, x, y); +- cairo_set_source_rgba (overlay->cr, 1, 1, 1, 1.0); +- cairo_set_line_width (overlay->cr, 1.0); +- cairo_text_path (overlay->cr, (guchar *) string); +- cairo_stroke (overlay->cr); +- cairo_restore (overlay->cr); ++ cr = cairo_create (surface); + +- g_free (string); +-} ++ cairo_select_font_face (cr, overlay->font, overlay->slant, overlay->weight); ++ cairo_set_font_size (cr, overlay->scale); + +-/* static GstPadLinkReturn */ +-/* gst_textoverlay_text_sinkconnect (GstPad *pad, GstCaps *caps) */ +-/* { */ +-/* return GST_PAD_LINK_DONE; */ +-/* } */ ++/* ++ cairo_set_target_image (cr, (gchar*) overlay->text_outline_image, ++ CAIRO_FORMAT_ARGB32, overlay->width, overlay->text_height, ++ overlay->width * 4); ++*/ ++ cairo_save (cr); ++ cairo_rectangle (cr, 0, 0, overlay->width, overlay->text_height); ++ cairo_set_source_rgba (cr, 0, 0, 0, 1.0); ++ cairo_set_operator (cr, CAIRO_OPERATOR_SOURCE); ++ cairo_fill (cr); ++ cairo_restore (cr); ++ ++ cairo_save (cr); ++ cairo_move_to (cr, x, y); ++ cairo_set_source_rgba (cr, 1, 1, 1, 1.0); ++ cairo_set_line_width (cr, 1.0); ++ cairo_text_path (cr, (guchar *) string); ++ cairo_stroke (cr); ++ cairo_restore (cr); ++ ++ g_free (string); + ++ cairo_destroy (cr); ++ cairo_surface_destroy (surface); ++} + + static GstPadLinkReturn + gst_textoverlay_video_sinkconnect (GstPad * pad, const GstCaps * caps) +@@ -542,17 +551,24 @@ + gst_textoverlay_font_init (GstTextOverlay * overlay) + { + cairo_font_extents_t font_extents; ++ cairo_surface_t *surface; ++ cairo_t *cr; ++ ++ surface = cairo_image_surface_create (CAIRO_FORMAT_ARGB32, 64, 64); ++ cr = cairo_create (surface); + +- cairo_select_font (overlay->cr, overlay->font, overlay->slant, +- overlay->weight); +- cairo_scale_font (overlay->cr, overlay->scale); ++ cairo_select_font_face (cr, overlay->font, overlay->slant, overlay->weight); ++ cairo_set_font_size (cr, overlay->scale); + +- cairo_current_font_extents (overlay->cr, &font_extents); ++ cairo_font_extents (cr, &font_extents); + overlay->text_height = font_extents.height; + if (overlay->text_height & 1) + overlay->text_height++; + + overlay->need_render = TRUE; ++ ++ cairo_destroy (cr); ++ cairo_surface_destroy (surface); + } + + static GstElementStateReturn +@@ -581,10 +597,8 @@ + { + GstTextOverlay *overlay = GST_TEXTOVERLAY (object); + +- if (overlay->cr) { +- cairo_destroy (overlay->cr); +- } +- ++ g_free (overlay->font); ++ g_free (overlay->default_text); + G_OBJECT_CLASS (parent_class)->finalize (object); + } + +@@ -611,8 +625,6 @@ + (&textoverlay_src_template_factory), "src"); + gst_element_add_pad (GST_ELEMENT (overlay), overlay->srcpad); + +- overlay->cr = cairo_create (); +- + overlay->halign = GST_TEXT_OVERLAY_HALIGN_CENTER; + overlay->valign = GST_TEXT_OVERLAY_VALIGN_BASELINE; + overlay->x0 = overlay->y0 = 25; +@@ -635,17 +647,14 @@ + { + GstTextOverlay *overlay; + +- /* it's not null if we got it, but it might not be ours */ + g_return_if_fail (GST_IS_TEXTOVERLAY (object)); + overlay = GST_TEXTOVERLAY (object); + + switch (prop_id) { + + case ARG_TEXT: +- if (overlay->default_text) { +- g_free (overlay->default_text); +- } +- overlay->default_text = g_strdup (g_value_get_string (value)); ++ g_free (overlay->default_text); ++ overlay->default_text = g_value_dup_string (value); + overlay->need_render = TRUE; + break; + +@@ -684,9 +693,8 @@ + break; + + case ARG_FONT_DESC: +- if (overlay->font) +- g_free (overlay->font); +- overlay->font = g_strdup (g_value_get_string (value)); ++ g_free (overlay->font); ++ overlay->font = g_value_dup_string (value); + gst_textoverlay_font_init (overlay); + break; + diff --git a/multimedia/gstreamer-plugins80/files/patch-ext_cairo_gsttextoverlay.h b/multimedia/gstreamer-plugins80/files/patch-ext_cairo_gsttextoverlay.h new file mode 100644 index 000000000..a27e832a9 --- /dev/null +++ b/multimedia/gstreamer-plugins80/files/patch-ext_cairo_gsttextoverlay.h @@ -0,0 +1,28 @@ +--- ext/cairo/gsttextoverlay.h.orig Sun Jun 12 10:43:36 2005 ++++ ext/cairo/gsttextoverlay.h Sun Jun 12 10:44:04 2005 +@@ -10,7 +10,7 @@ + GST_DEBUG_CATEGORY_EXTERN (cairo_debug); + #define GST_CAT_DEFAULT cairo_debug + +-#define GST_TYPE_TEXTOVERLAY (gst_textoverlay_get_type()) ++#define GST_TYPE_TEXTOVERLAY (gst_cairotextoverlay_get_type()) + #define GST_TEXTOVERLAY(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),\ + GST_TYPE_TEXTOVERLAY, GstTextOverlay)) + #define GST_TEXTOVERLAY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),\ +@@ -56,7 +56,6 @@ + gint y0; + gchar *default_text; + +- cairo_t *cr; + guchar *text_fill_image; + guchar *text_outline_image; + int text_height; +@@ -75,7 +74,7 @@ + GstElementClass parent_class; + }; + +-GType gst_textoverlay_get_type(void) G_GNUC_CONST; ++GType gst_cairotextoverlay_get_type(void) G_GNUC_CONST; + + G_END_DECLS + diff --git a/multimedia/gstreamer-plugins80/files/patch-ext_cairo_gsttimeoverlay.c b/multimedia/gstreamer-plugins80/files/patch-ext_cairo_gsttimeoverlay.c new file mode 100644 index 000000000..355f4ec32 --- /dev/null +++ b/multimedia/gstreamer-plugins80/files/patch-ext_cairo_gsttimeoverlay.c @@ -0,0 +1,233 @@ +--- ext/cairo/gsttimeoverlay.c.orig Sun Jun 12 10:43:45 2005 ++++ ext/cairo/gsttimeoverlay.c Sun Jun 12 10:44:04 2005 +@@ -34,41 +34,16 @@ + + #include <cairo.h> + +-/* This is for cairo 0.4, remove once we require 0.5 */ +-#ifndef CAIRO_API_SHAKEUP_FLAG_DAY +-#define cairo_set_source_rgba(cr,red,green,blue,alpha) {\ +- cairo_set_rgb_color(cr,red,green,blue); \ +- cairo_set_alpha(cr,alpha); } +-#endif +- +-/* GstTimeoverlay signals and args */ +-enum +-{ +- /* FILL ME */ +- LAST_SIGNAL +-}; +- +-enum +-{ +- ARG_0 +- /* FILL ME */ +-}; +- + static void gst_timeoverlay_base_init (gpointer g_class); + static void gst_timeoverlay_class_init (gpointer g_class, gpointer class_data); + static void gst_timeoverlay_init (GTypeInstance * instance, gpointer g_class); + +-static void gst_timeoverlay_set_property (GObject * object, guint prop_id, +- const GValue * value, GParamSpec * pspec); +-static void gst_timeoverlay_get_property (GObject * object, guint prop_id, +- GValue * value, GParamSpec * pspec); +- + static void gst_timeoverlay_planar411 (GstVideofilter * videofilter, void *dest, + void *src); + static void gst_timeoverlay_setup (GstVideofilter * videofilter); + + GType +-gst_timeoverlay_get_type (void) ++gst_cairotimeoverlay_get_type (void) + { + static GType timeoverlay_type = 0; + +@@ -86,7 +61,7 @@ + }; + + timeoverlay_type = g_type_register_static (GST_TYPE_VIDEOFILTER, +- "GstTimeoverlay", &timeoverlay_info, 0); ++ "GstCairoTimeOverlay", &timeoverlay_info, 0); + } + return timeoverlay_type; + } +@@ -127,16 +102,6 @@ + gobject_class = G_OBJECT_CLASS (g_class); + videofilter_class = GST_VIDEOFILTER_CLASS (g_class); + +-#if 0 +- g_object_class_install_property (gobject_class, ARG_METHOD, +- g_param_spec_enum ("method", "method", "method", +- GST_TYPE_TIMEOVERLAY_METHOD, GST_TIMEOVERLAY_METHOD_1, +- G_PARAM_READWRITE)); +-#endif +- +- gobject_class->set_property = gst_timeoverlay_set_property; +- gobject_class->get_property = gst_timeoverlay_get_property; +- + videofilter_class->setup = gst_timeoverlay_setup; + } + +@@ -154,70 +119,29 @@ + } + + static void +-gst_timeoverlay_set_property (GObject * object, guint prop_id, +- const GValue * value, GParamSpec * pspec) +-{ +- GstTimeoverlay *src; +- +- /* it's not null if we got it, but it might not be ours */ +- g_return_if_fail (GST_IS_TIMEOVERLAY (object)); +- src = GST_TIMEOVERLAY (object); +- +- GST_DEBUG ("gst_timeoverlay_set_property"); +- switch (prop_id) { +-#if 0 +- case ARG_METHOD: +- src->method = g_value_get_enum (value); +- break; +-#endif +- default: +- break; +- } +-} +- +-static void +-gst_timeoverlay_get_property (GObject * object, guint prop_id, GValue * value, +- GParamSpec * pspec) +-{ +- GstTimeoverlay *src; +- +- /* it's not null if we got it, but it might not be ours */ +- g_return_if_fail (GST_IS_TIMEOVERLAY (object)); +- src = GST_TIMEOVERLAY (object); +- +- switch (prop_id) { +-#if 0 +- case ARG_METHOD: +- g_value_set_enum (value, src->method); +- break; +-#endif +- default: +- G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); +- break; +- } +-} +- +-static void + gst_timeoverlay_setup (GstVideofilter * videofilter) + { + GstTimeoverlay *timeoverlay; + cairo_font_extents_t font_extents; ++ cairo_surface_t *surface; ++ cairo_t *cr; + + g_return_if_fail (GST_IS_TIMEOVERLAY (videofilter)); + timeoverlay = GST_TIMEOVERLAY (videofilter); + +- /* if any setup needs to be done, do it here */ +- +- timeoverlay->cr = cairo_create (); ++ surface = cairo_image_surface_create (CAIRO_FORMAT_ARGB32, 64, 64); ++ cr = cairo_create (surface); + +- cairo_set_rgb_color (timeoverlay->cr, 0, 0, 0); ++ cairo_set_source_rgb (cr, 0, 0, 0); + +- cairo_select_font (timeoverlay->cr, "monospace", 0, 0); +- cairo_scale_font (timeoverlay->cr, 20); ++ cairo_select_font_face (cr, "monospace", 0, 0); ++ cairo_set_font_size (cr, 20); + +- cairo_current_font_extents (timeoverlay->cr, &font_extents); ++ cairo_font_extents (cr, &font_extents); + timeoverlay->text_height = font_extents.height; + ++ cairo_destroy (cr); ++ cairo_surface_destroy (surface); + } + + static char * +@@ -251,8 +175,10 @@ + int b_width; + char *string; + int i, j; +- char *image; ++ unsigned char *image; + cairo_text_extents_t extents; ++ cairo_surface_t *surface; ++ cairo_t *cr; + + g_return_if_fail (GST_IS_TIMEOVERLAY (videofilter)); + timeoverlay = GST_TIMEOVERLAY (videofilter); +@@ -266,32 +192,40 @@ + + image = g_malloc (4 * width * timeoverlay->text_height); + +- cairo_set_target_image (timeoverlay->cr, image, CAIRO_FORMAT_ARGB32, ++ surface = cairo_image_surface_create_for_data (image, CAIRO_FORMAT_ARGB32, + width, timeoverlay->text_height, width * 4); + +- cairo_save (timeoverlay->cr); +- cairo_rectangle (timeoverlay->cr, 0, 0, width, timeoverlay->text_height); +- cairo_set_source_rgba (timeoverlay->cr, 0, 0, 0, 0); +- +- cairo_set_operator (timeoverlay->cr, CAIRO_OPERATOR_SRC); +- cairo_fill (timeoverlay->cr); +- cairo_restore (timeoverlay->cr); +- +- cairo_save (timeoverlay->cr); +- cairo_text_extents (timeoverlay->cr, (guchar *) string, &extents); +- +- cairo_set_rgb_color (timeoverlay->cr, 1, 1, 1); +- cairo_move_to (timeoverlay->cr, 0, timeoverlay->text_height - 2); +- cairo_show_text (timeoverlay->cr, (guchar *) string); ++ cr = cairo_create (surface); ++ ++ cairo_set_source_rgb (cr, 0, 0, 0); ++ cairo_select_font_face (cr, "monospace", 0, 0); ++ cairo_set_font_size (cr, 20); ++ ++ cairo_save (cr); ++ ++ cairo_rectangle (cr, 0, 0, width, timeoverlay->text_height); ++ cairo_set_source_rgba (cr, 0, 0, 0, 0); ++ ++ cairo_set_operator (cr, CAIRO_OPERATOR_SOURCE); ++ cairo_fill (cr); ++ cairo_restore (cr); ++ ++ cairo_save (cr); ++ cairo_text_extents (cr, string, &extents); ++ ++ cairo_set_source_rgb (cr, 1, 1, 1); ++ cairo_move_to (cr, 0, timeoverlay->text_height - 2); ++ cairo_show_text (cr, string); + g_free (string); ++ + #if 0 +- cairo_text_path (timeoverlay->cr, string); +- cairo_set_rgb_color (timeoverlay->cr, 1, 1, 1); +- cairo_set_line_width (timeoverlay->cr, 1.0); +- cairo_stroke (timeoverlay->cr); ++ cairo_text_path (cr, string); ++ cairo_set_source_rgb (cr, 1, 1, 1); ++ cairo_set_line_width (cr, 1.0); ++ cairo_stroke (cr); + #endif + +- cairo_restore (timeoverlay->cr); ++ cairo_restore (cr); + + b_width = extents.width; + if (b_width > width) +@@ -310,4 +244,7 @@ + } + + g_free (image); ++ ++ cairo_destroy (cr); ++ cairo_surface_destroy (surface); + } diff --git a/multimedia/gstreamer-plugins80/files/patch-ext_cairo_gsttimeoverlay.h b/multimedia/gstreamer-plugins80/files/patch-ext_cairo_gsttimeoverlay.h new file mode 100644 index 000000000..1c2c4e70f --- /dev/null +++ b/multimedia/gstreamer-plugins80/files/patch-ext_cairo_gsttimeoverlay.h @@ -0,0 +1,30 @@ +--- ext/cairo/gsttimeoverlay.h.orig Sun Jun 12 10:43:50 2005 ++++ ext/cairo/gsttimeoverlay.h Sun Jun 12 10:44:04 2005 +@@ -31,7 +31,7 @@ + G_BEGIN_DECLS + + #define GST_TYPE_TIMEOVERLAY \ +- (gst_timeoverlay_get_type()) ++ (gst_cairotimeoverlay_get_type()) + #define GST_TIMEOVERLAY(obj) \ + (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_TIMEOVERLAY,GstTimeoverlay)) + #define GST_TIMEOVERLAY_CLASS(klass) \ +@@ -46,17 +46,14 @@ + + struct _GstTimeoverlay { + GstVideofilter videofilter; +- +- cairo_t *cr; + int text_height; +- + }; + + struct _GstTimeoverlayClass { + GstVideofilterClass parent_class; + }; + +-GType gst_timeoverlay_get_type(void); ++GType gst_cairotimeoverlay_get_type(void); + + G_END_DECLS + diff --git a/multimedia/gstreamer-plugins80/files/patch-ext_cdparanoia_gstcdparanoia.c b/multimedia/gstreamer-plugins80/files/patch-ext_cdparanoia_gstcdparanoia.c new file mode 100644 index 000000000..17e8469ad --- /dev/null +++ b/multimedia/gstreamer-plugins80/files/patch-ext_cdparanoia_gstcdparanoia.c @@ -0,0 +1,18 @@ +--- ext/cdparanoia/gstcdparanoia.c.orig Fri Jun 3 06:59:43 2005 ++++ ext/cdparanoia/gstcdparanoia.c Fri Jun 3 07:00:13 2005 +@@ -561,6 +561,7 @@ + gint16 *cdda_buf; + gint64 timestamp; + GstFormat format; ++ GstEvent *discont_ev; + + /* convert the sequence sector number to a timestamp */ + format = GST_FORMAT_TIME; +@@ -574,7 +575,6 @@ + gst_pad_convert (src->srcpad, sector_format, + get_relative (src, src->cur_track, src->cur_sector), &format, + ×tamp); +- GstEvent *discont_ev; + + if (src->flush_pending) { + src->flush_pending = FALSE; diff --git a/multimedia/gstreamer-plugins80/files/patch-gst_librfb_gstrfbsrc.c b/multimedia/gstreamer-plugins80/files/patch-gst_librfb_gstrfbsrc.c new file mode 100644 index 000000000..e83f13650 --- /dev/null +++ b/multimedia/gstreamer-plugins80/files/patch-gst_librfb_gstrfbsrc.c @@ -0,0 +1,10 @@ +--- gst/librfb/gstrfbsrc.c.orig Fri Jun 3 06:06:43 2005 ++++ gst/librfb/gstrfbsrc.c Fri Jun 3 06:08:21 2005 +@@ -28,6 +28,7 @@ + #include <string.h> + #include <stdlib.h> + #include <unistd.h> ++#include <sys/time.h> + + #include <librfb/rfb.h> + diff --git a/multimedia/gstreamer-plugins80/pkg-plist b/multimedia/gstreamer-plugins80/pkg-plist index 34c1cb992..5bf665b1f 100644 --- a/multimedia/gstreamer-plugins80/pkg-plist +++ b/multimedia/gstreamer-plugins80/pkg-plist @@ -63,6 +63,7 @@ lib/gstreamer-%%VERSION%%/libgstfestival.so lib/gstreamer-%%VERSION%%/libgstffmpegcolorspace.so lib/gstreamer-%%VERSION%%/libgstfilter.so lib/gstreamer-%%VERSION%%/libgstflxdec.so +lib/gstreamer-%%VERSION%%/libgstfreeze.so lib/gstreamer-%%VERSION%%/libgstgamma.so lib/gstreamer-%%VERSION%%/libgstgoom.so lib/gstreamer-%%VERSION%%/libgstidct.so @@ -100,6 +101,7 @@ lib/gstreamer-%%VERSION%%/libgstsilence.so lib/gstreamer-%%VERSION%%/libgstsinesrc.so lib/gstreamer-%%VERSION%%/libgstsmooth.so lib/gstreamer-%%VERSION%%/libgstsmpte.so +@comment lib/gstreamer-%%VERSION%%/libgstspc.so lib/gstreamer-%%VERSION%%/libgstspectrum.so lib/gstreamer-%%VERSION%%/libgstspeed.so lib/gstreamer-%%VERSION%%/libgststereo.so @@ -127,6 +129,7 @@ lib/gstreamer-%%VERSION%%/libgstvideotestsrc.so lib/gstreamer-%%VERSION%%/libgstvolenv.so lib/gstreamer-%%VERSION%%/libgstvolume.so lib/gstreamer-%%VERSION%%/libgstwavenc.so +lib/gstreamer-%%VERSION%%/libgstwavpack.so lib/gstreamer-%%VERSION%%/libgstwavparse.so lib/gstreamer-%%VERSION%%/libgstximagesink.so lib/gstreamer-%%VERSION%%/libgstxvimagesink.so @@ -160,6 +163,7 @@ share/locale/sr/LC_MESSAGES/gst-plugins-%%VERSION%%.mo share/locale/sv/LC_MESSAGES/gst-plugins-%%VERSION%%.mo share/locale/uk/LC_MESSAGES/gst-plugins-%%VERSION%%.mo share/locale/vi/LC_MESSAGES/gst-plugins-%%VERSION%%.mo +share/locale/zh_TW/LC_MESSAGES/gst-plugins-%%VERSION%%.mo @dirrm lib/gstreamer-%%VERSION%% @dirrm include/gstreamer-%%VERSION%%/gst/xwindowlistener @dirrm include/gstreamer-%%VERSION%%/gst/xoverlay |