diff options
author | Damien Lespiau <damien.lespiau@intel.com> | 2012-04-27 14:45:36 +0100 |
---|---|---|
committer | Damien Lespiau <damien.lespiau@intel.com> | 2012-04-27 14:45:36 +0100 |
commit | 2fad0f91de031fe18697fc827706ed2db4e1e350 (patch) | |
tree | d33f62907b7b5c0c69a82d51e67ae0ef2096206f | |
parent | 10d80387ec266583e26e4bc6ae35b8750b874937 (diff) | |
download | clutter-gst-2fad0f91de031fe18697fc827706ed2db4e1e350.tar.gz |
Revert "Revert "Revert "Revert "video-texture: Use autocluttersink""""
This reverts commit 9f89087ee96b9c9157e8f1ac2e4b7b98e0b0837d.
-rw-r--r-- | clutter-gst/clutter-gst-video-texture.c | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/clutter-gst/clutter-gst-video-texture.c b/clutter-gst/clutter-gst-video-texture.c index f5fcb6d..8a9e3af 100644 --- a/clutter-gst/clutter-gst-video-texture.c +++ b/clutter-gst/clutter-gst-video-texture.c @@ -44,6 +44,7 @@ #include <glib.h> #include <gio/gio.h> +#include <gst/base/gstbasesink.h> #include <gst/video/video.h> #include "clutter-gst-debug.h" @@ -531,6 +532,15 @@ idle_cb (ClutterGstVideoTexture *video_texture, clutter_actor_queue_redraw (CLUTTER_ACTOR (video_texture)); } +static void +on_autocluttersink_element_added (GstBin *bin, + GstElement *element, + ClutterGstVideoTexture *data) +{ + if (GST_IS_BASE_SINK (element)) + g_object_set (G_OBJECT (element), "qos", TRUE, NULL); +} + static gboolean setup_pipeline (ClutterGstVideoTexture *video_texture) { @@ -544,11 +554,14 @@ setup_pipeline (ClutterGstVideoTexture *video_texture) return FALSE; } - video_sink = gst_element_factory_make ("cluttersink", NULL); + video_sink = gst_element_factory_make ("autocluttersink", NULL); + g_signal_connect (video_sink, + "element-added", + G_CALLBACK (on_autocluttersink_element_added), + video_texture); g_object_set (G_OBJECT (video_sink), "texture", CLUTTER_TEXTURE (video_texture), - "qos", TRUE, - "sync", TRUE, NULL); + NULL); g_object_set (G_OBJECT (pipeline), "video-sink", video_sink, "subtitle-font-desc", "Sans 16", |