diff options
author | Jan de Groot | 2015-11-04 10:00:14 +0000 |
---|---|---|
committer | Jan de Groot | 2015-11-04 10:00:14 +0000 |
commit | bddfb0cece1aa04a4582cd9599f590fb1002753f (patch) | |
tree | 6c438f2a917d273b4ad0145277c8353543bc3026 | |
parent | acd88c406f82544bbc227d8cf3c2dcee2d9b2a49 (diff) | |
download | aur-bddfb0cece1aa04a4582cd9599f590fb1002753f.tar.gz |
Port to clutter-gst3
-rw-r--r-- | PKGBUILD | 12 | ||||
-rw-r--r-- | clutter-gst3.patch | 164 |
2 files changed, 172 insertions, 4 deletions
@@ -3,12 +3,12 @@ pkgname=snappy-player _pkgname=snappy pkgver=1.0 -pkgrel=2 +pkgrel=3 pkgdesc="Powerful media player with a minimalistic interface" arch=('i686' 'x86_64') url="https://wiki.gnome.org/Apps/Snappy" license=('GPL') -depends=('gst-plugins-base' 'clutter-gst2' 'clutter-gtk' 'desktop-file-utils') +depends=('gst-plugins-base' 'clutter-gst' 'clutter-gtk' 'desktop-file-utils') optdepends=('gst-plugins-good: Extra media codecs' 'gst-plugins-bad: Extra media codecs' 'gst-plugins-ugly: Extra media codecs' @@ -16,18 +16,22 @@ optdepends=('gst-plugins-good: Extra media codecs' 'gst-vaapi: Hardware accelerated video decode') install=$pkgname.install source=(http://ftp.gnome.org/pub/GNOME/sources/$_pkgname/$pkgver/$_pkgname-$pkgver.tar.xz - 0001-Set-windowing-backend-to-X11.patch) + 0001-Set-windowing-backend-to-X11.patch + clutter-gst3.patch) sha256sums=('0d33a05c1ad3cc075b8b9bf38d45634ea5204159454597b0882dd6a8d9763f58' - 'cfd50c1768d206feb3bb7310e53363ca02a78ce200b1e2ba7b16bccd4720b176') + 'cfd50c1768d206feb3bb7310e53363ca02a78ce200b1e2ba7b16bccd4720b176' + '0c9e0f5cacd03c204871e301e11e5cc904e7fbece38f0162ff63b3e2b3bbc7bf') prepare() { cd $_pkgname-$pkgver # Fix compatibility with Clutter 1.22 patch -Np1 -i ../0001-Set-windowing-backend-to-X11.patch + patch -Np1 -i ../clutter-gst3.patch } build() { cd $_pkgname-$pkgver + autoreconf -fi ./configure --prefix=/usr make } diff --git a/clutter-gst3.patch b/clutter-gst3.patch new file mode 100644 index 000000000000..8f6a56360b2a --- /dev/null +++ b/clutter-gst3.patch @@ -0,0 +1,164 @@ +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.0.0 + CLUTTER_REQS=1.12.0 +-CLUTTER_GST_REQS=2.0.0 ++CLUTTER_GST_REQS=2.99.2 + CLUTTER_GTK_REQS=1.0.2 + 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 + +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 + |