diff options
author | Pacho Ramos <pacho@gentoo.org> | 2015-10-17 12:21:15 +0200 |
---|---|---|
committer | Pacho Ramos <pacho@gentoo.org> | 2015-10-17 12:21:37 +0200 |
commit | 8eae415540435a937341a3528189999e1a115892 (patch) | |
tree | 13c5aeab1a3ffd7def8a28f82af90746f3740736 /media-video | |
parent | net-fs/samba: Removed old. (diff) | |
download | gentoo-8eae415540435a937341a3528189999e1a115892.tar.gz gentoo-8eae415540435a937341a3528189999e1a115892.tar.bz2 gentoo-8eae415540435a937341a3528189999e1a115892.zip |
media-video/snappy: Fix blocker (#562736 by Martin Sekera), apply upstream fixes to make this work again with gnome 3.16 stack.
Package-Manager: portage-2.2.23
Diffstat (limited to 'media-video')
7 files changed, 329 insertions, 0 deletions
diff --git a/media-video/snappy/files/snappy-1.0-clutter-1.22.patch b/media-video/snappy/files/snappy-1.0-clutter-1.22.patch new file mode 100644 index 000000000000..f79d26786732 --- /dev/null +++ b/media-video/snappy/files/snappy-1.0-clutter-1.22.patch @@ -0,0 +1,25 @@ +From 529445d6fc5da3ea6e5c81051248b9d4818a1224 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Ball=C3=B3=20Gy=C3=B6rgy?= <ballogyor@gmail.com> +Date: Wed, 15 Apr 2015 15:46:14 +0200 +Subject: Set windowing backend to X11 + +This required to work with Clutter 1.22. +--- + src/snappy.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/snappy.c b/src/snappy.c +index 6054c88..c2bb2d0 100644 +--- a/src/snappy.c ++++ b/src/snappy.c +@@ -179,6 +179,7 @@ main (int argc, char *argv[]) + + context = g_option_context_new ("<media file> - Play movie files"); + ++ clutter_set_windowing_backend (CLUTTER_WINDOWING_X11); + ci_err = gtk_clutter_init (&argc, &argv); + if (ci_err != CLUTTER_INIT_SUCCESS) + goto quit; +-- +cgit v0.11.2 + diff --git a/media-video/snappy/files/snappy-1.0-clutter-gst-3.patch b/media-video/snappy/files/snappy-1.0-clutter-gst-3.patch new file mode 100644 index 000000000000..c914b028d1dd --- /dev/null +++ b/media-video/snappy/files/snappy-1.0-clutter-gst-3.patch @@ -0,0 +1,128 @@ +From 872fc2ed3d0339559e4023523fa0935f168f631a Mon Sep 17 00:00:00 2001 +From: Luis de Bethencourt <luis@debethencourt.com> +Date: Tue, 28 Jul 2015 12:06:16 +0100 +Subject: clutter: upgrade to clutter-gst-3.0 + +--- + configure.ac | 4 ++-- + src/gst_engine.c | 2 +- + src/gst_engine.h | 5 +++-- + src/snappy.c | 7 ++----- + src/user_interface.h | 4 ++++ + 5 files changed, 12 insertions(+), 10 deletions(-) + +diff --git a/configure.ac b/configure.ac +index b2986c6..75ffb8d 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -35,7 +35,7 @@ AC_CANONICAL_HOST + # keep one single GST_REQ, core/base should be same versions anyway + GST_REQ=1.4.0 + CLUTTER_REQS=1.20.0 +-CLUTTER_GST_REQS=2.0.12 ++CLUTTER_GST_REQS=2.99.2 + CLUTTER_GTK_REQS=1.6.0 + GTK_REQS=3.5.0 + GIO_REQ=2.32 +@@ -55,7 +55,7 @@ PKG_CHECK_MODULES([CLUTTER], + AC_SUBST(CLUTTER_CFLAGS) + AC_SUBST(CLUTTER_LIBS) + +-PKG_CHECK_MODULES([CLUTTER_GST], [clutter-gst-2.0 >= $CLUTTER_GST_REQS]) ++PKG_CHECK_MODULES([CLUTTER_GST], [clutter-gst-3.0 >= $CLUTTER_GST_REQS]) + AC_SUBST(CLUTTER_GST_CFLAGS) + AC_SUBST(CLUTTER_GST_LIBS) + +diff --git a/src/gst_engine.c b/src/gst_engine.c +index 8fc16d4..431d77c 100644 +--- a/src/gst_engine.c ++++ b/src/gst_engine.c +@@ -724,7 +724,7 @@ cycle_streams (GstEngine * engine, guint streamid) + + /* Init GstEngine variables */ + gboolean +-engine_init (GstEngine * engine, GstElement * sink) ++engine_init (GstEngine * engine, ClutterGstVideoSink * sink) + { + engine->playing = FALSE; + engine->direction_foward = TRUE; +diff --git a/src/gst_engine.h b/src/gst_engine.h +index 70dce63..1c044eb 100644 +--- a/src/gst_engine.h ++++ b/src/gst_engine.h +@@ -24,6 +24,7 @@ + #define __GST_ENGINE_H__ + + #include <gst/gst.h> ++#include <clutter-gst/clutter-gst.h> + + /* GStreamer Interfaces */ + #include <gst/video/navigation.h> +@@ -50,7 +51,7 @@ struct _GstEngine + gchar *uri; + + GstElement *player; +- GstElement *sink; ++ ClutterGstVideoSink *sink; + + GstBus *bus; + +@@ -64,7 +65,7 @@ gboolean bus_call (GstBus * bus, GstMessage * msg, gpointer data); + gboolean change_state (GstEngine * engine, gchar * state); + gboolean check_missing_plugins_error (GstEngine * engine, GstMessage * msg); + gboolean cycle_streams (GstEngine * engine, guint streamid); +-gboolean engine_init (GstEngine * engine, GstElement * sink); ++gboolean engine_init (GstEngine * engine, ClutterGstVideoSink * sink); + gboolean engine_change_offset (GstEngine * engine, gint64 av_offest); + gboolean engine_change_speed (GstEngine * engine, gdouble rate); + void engine_load_uri (GstEngine * engine, gchar * uri); +diff --git a/src/snappy.c b/src/snappy.c +index c2bb2d0..c06fd10 100644 +--- a/src/snappy.c ++++ b/src/snappy.c +@@ -29,9 +29,6 @@ + #include <stdlib.h> + #include <unistd.h> + #include <string.h> +-#include <clutter/clutter.h> +-#include <clutter-gst/clutter-gst.h> +-#include <clutter-gtk/clutter-gtk.h> + + #include "user_interface.h" + +@@ -160,7 +157,7 @@ main (int argc, char *argv[]) + UserInterface *ui = NULL; + GstEngine *engine = NULL; + ClutterActor *video_texture; +- GstElement *sink; ++ ClutterGstVideoSink *sink; + + gboolean ok, blind = FALSE, fullscreen = FALSE, hide = FALSE, loop = FALSE; + gboolean secret = FALSE, tags = FALSE; +@@ -230,7 +227,7 @@ main (int argc, char *argv[]) + + /* Gstreamer engine */ + engine = g_new (GstEngine, 1); +- sink = gst_element_factory_make ("cluttersink", "video-sink"); ++ sink = clutter_gst_video_sink_new (); + if (sink == NULL) { + g_print ("ERROR: Failed to create clutter-gst sink element\n"); + return FALSE; +diff --git a/src/user_interface.h b/src/user_interface.h +index 6fe43c5..b011da0 100644 +--- a/src/user_interface.h ++++ b/src/user_interface.h +@@ -23,6 +23,10 @@ + #ifndef __USER_INTERFACE_H__ + #define __USER_INTERFACE_H__ + ++#include <clutter/clutter.h> ++#include <clutter-gst/clutter-gst.h> ++#include <clutter-gtk/clutter-gtk.h> ++ + #include <gtk/gtk.h> + + #include "gst_engine.h" +-- +cgit v0.11.2 + diff --git a/media-video/snappy/files/snappy-1.0-configure1.patch b/media-video/snappy/files/snappy-1.0-configure1.patch new file mode 100644 index 000000000000..cd499d7197ab --- /dev/null +++ b/media-video/snappy/files/snappy-1.0-configure1.patch @@ -0,0 +1,25 @@ +From 259bebe65f0f108726d5a0504b23c85525199b15 Mon Sep 17 00:00:00 2001 +From: Luis de Bethencourt <luis.bg@samsung.com> +Date: Tue, 2 Jun 2015 16:47:31 +0100 +Subject: configure: update GStreamer version + +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index b628f33..430647f 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -33,7 +33,7 @@ AC_LIBTOOL_WIN32_DLL + AC_CANONICAL_HOST + + # keep one single GST_REQ, core/base should be same versions anyway +-GST_REQ=1.0.0 ++GST_REQ=1.4.0 + CLUTTER_REQS=1.12.0 + CLUTTER_GST_REQS=2.0.0 + CLUTTER_GTK_REQS=1.0.2 +-- +cgit v0.11.2 + diff --git a/media-video/snappy/files/snappy-1.0-configure2.patch b/media-video/snappy/files/snappy-1.0-configure2.patch new file mode 100644 index 000000000000..c4787d846a8d --- /dev/null +++ b/media-video/snappy/files/snappy-1.0-configure2.patch @@ -0,0 +1,29 @@ +From c0eacf30b2a0476488004c6000de659ce4380534 Mon Sep 17 00:00:00 2001 +From: Luis de Bethencourt <luis.bg@samsung.com> +Date: Tue, 2 Jun 2015 16:56:14 +0100 +Subject: configure: update Clutter version + +--- + configure.ac | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 430647f..b2986c6 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -34,9 +34,9 @@ AC_CANONICAL_HOST + + # keep one single GST_REQ, core/base should be same versions anyway + GST_REQ=1.4.0 +-CLUTTER_REQS=1.12.0 +-CLUTTER_GST_REQS=2.0.0 +-CLUTTER_GTK_REQS=1.0.2 ++CLUTTER_REQS=1.20.0 ++CLUTTER_GST_REQS=2.0.12 ++CLUTTER_GTK_REQS=1.6.0 + GTK_REQS=3.5.0 + GIO_REQ=2.32 + +-- +cgit v0.11.2 + diff --git a/media-video/snappy/files/snappy-1.0-string-concatenation.patch b/media-video/snappy/files/snappy-1.0-string-concatenation.patch new file mode 100644 index 000000000000..bafaa164a2d8 --- /dev/null +++ b/media-video/snappy/files/snappy-1.0-string-concatenation.patch @@ -0,0 +1,28 @@ +From f2d51cde0e72853050495b3d995db4aee14c66a6 Mon Sep 17 00:00:00 2001 +From: Jan Schmidt <jan@centricular.com> +Date: Tue, 13 May 2014 14:30:34 -0400 +Subject: ui: string concatenation to use corect format + +--- + src/user_interface.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/user_interface.c b/src/user_interface.c +index c29c688..8e3894a 100644 +--- a/src/user_interface.c ++++ b/src/user_interface.c +@@ -1052,9 +1052,9 @@ position_ns_to_str (UserInterface * ui, gint64 nanoseconds) + seconds = seconds - (minutes * SEC_IN_MIN); + + if (hours >= 1) +- return g_strdup_printf ("%d:%02d:%02ld", hours, minutes, seconds); ++ return g_strdup_printf ("%d:%02d:%02" G_GINT64_FORMAT, hours, minutes, seconds); + else +- return g_strdup_printf ("%02d:%02ld", minutes, seconds); ++ return g_strdup_printf ("%02d:%02" G_GINT64_FORMAT, minutes, seconds); + } + + static void +-- +cgit v0.11.2 + diff --git a/media-video/snappy/files/snappy-1.0-video-texture.patch b/media-video/snappy/files/snappy-1.0-video-texture.patch new file mode 100644 index 000000000000..eed0bd491ae4 --- /dev/null +++ b/media-video/snappy/files/snappy-1.0-video-texture.patch @@ -0,0 +1,36 @@ +From f33f7a5e9424544884a37b264bf88ee1866a56ac Mon Sep 17 00:00:00 2001 +From: Luis de Bethencourt <luis@debethencourt.com> +Date: Tue, 28 Jul 2015 14:02:44 +0100 +Subject: clutter: update method to create video texture + +--- + src/snappy.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/src/snappy.c b/src/snappy.c +index c06fd10..94b6e5b 100644 +--- a/src/snappy.c ++++ b/src/snappy.c +@@ -222,8 +222,6 @@ main (int argc, char *argv[]) + ui->tags = tags; + ui->data_dir = data_dir; + interface_init (ui); +- video_texture = g_object_new (CLUTTER_TYPE_TEXTURE, "disable-slicing", TRUE, +- NULL); + + /* Gstreamer engine */ + engine = g_new (GstEngine, 1); +@@ -232,7 +230,9 @@ main (int argc, char *argv[]) + g_print ("ERROR: Failed to create clutter-gst sink element\n"); + return FALSE; + } +- g_object_set (G_OBJECT (sink), "texture", video_texture, NULL); ++ video_texture = g_object_new (CLUTTER_TYPE_ACTOR, "content", ++ g_object_new (CLUTTER_GST_TYPE_CONTENT, "sink", sink, NULL), ++ "name", "texture", NULL); + + ok = engine_init (engine, sink); + if (!ok) +-- +cgit v0.11.2 + diff --git a/media-video/snappy/snappy-1.0-r1.ebuild b/media-video/snappy/snappy-1.0-r1.ebuild new file mode 100644 index 000000000000..bb9efdfde619 --- /dev/null +++ b/media-video/snappy/snappy-1.0-r1.ebuild @@ -0,0 +1,58 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +GCONF_DEBUG="no" + +inherit autotools eutils gnome2 + +DESCRIPTION="A simple media player written using GStreamer and Clutter" +HOMEPAGE="https://wiki.gnome.org/Apps/Snappy" + +KEYWORDS="~amd64 ~x86" + +LICENSE="GPL-2 LGPL-2" +SLOT="0" +IUSE="" + +RDEPEND=" + >=dev-libs/glib-2.32:2 + >=media-libs/clutter-1.20.0:1.0 + media-libs/clutter-gst:3.0 + >=media-libs/clutter-gtk-1.6.0:1.0 + >=x11-libs/gtk+-3.5.0:3 + x11-libs/libXtst + + >=media-libs/gstreamer-1.4.0:1.0 + >=media-libs/gst-plugins-base-1.4.0:1.0 + + media-plugins/gst-plugins-meta:1.0 + + !!<net-misc/spice-gtk-0.19 +" # File collision -- /usr/bin/snappy with older versions + +DEPEND="${RDEPEND}" + +src_prepare() { + # Fix compat with clutter-1.22 (from 'master') + epatch "${FILESDIR}"/${P}-clutter-1.22.patch + + # ui: string concatenation to use corect format (from 'master') + epatch "${FILESDIR}"/${P}-string-concatenation.patch + + # clutter: update method to create video texture (from 'master') + epatch "${FILESDIR}"/${P}-video-texture.patch + + # Move to clutter-gst-3 (from 'master') + epatch "${FILESDIR}"/${P}-configure{1,2}.patch + epatch "${FILESDIR}"/${P}-clutter-gst-3.patch + + eautoreconf + gnome2_src_prepare +} + +src_configure() { + DOCS="AUTHORS README THANKS ToDo docs/*" + gnome2_src_configure --enable-dbus +} |