From 872fc2ed3d0339559e4023523fa0935f168f631a Mon Sep 17 00:00:00 2001 From: Luis de Bethencourt 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 +#include /* GStreamer Interfaces */ #include @@ -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 #include #include -#include -#include -#include #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 +#include +#include + #include #include "gst_engine.h" -- cgit v0.11.2 From f33f7a5e9424544884a37b264bf88ee1866a56ac Mon Sep 17 00:00:00 2001 From: Luis de Bethencourt 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