diff options
author | Lionel Landwerlin <llandwerlin@gmail.com> | 2013-11-29 15:05:11 +0000 |
---|---|---|
committer | Lionel Landwerlin <llandwerlin@gmail.com> | 2013-11-29 15:05:11 +0000 |
commit | 937257d8c84b4a04c9748b008884eede3f7cf837 (patch) | |
tree | a772770555421cbd9b4a1b1699bc67204c3fe249 | |
parent | 85504c2ccac288121b8412e806e42d0bfc6f1ee7 (diff) | |
download | clutter-gst-937257d8c84b4a04c9748b008884eede3f7cf837.tar.gz |
plugin: use coglsink template sink as template sink
-rw-r--r-- | clutter-gst/clutter-gst-auto-video-sink.c | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/clutter-gst/clutter-gst-auto-video-sink.c b/clutter-gst/clutter-gst-auto-video-sink.c index 0b82e7e..63aea78 100644 --- a/clutter-gst/clutter-gst-auto-video-sink.c +++ b/clutter-gst/clutter-gst-auto-video-sink.c @@ -108,12 +108,17 @@ clutter_gst_auto_video_sink_class_init (ClutterGstAutoVideoSinkClass *klass) CLUTTER_GST_TYPE_CONTENT, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + GstElement *cogl_sink = clutter_gst_create_video_sink (); + gst_element_class_add_pad_template (eklass, - gst_static_pad_template_get (&sink_template)); + gst_element_class_get_pad_template (GST_ELEMENT_GET_CLASS (cogl_sink), "sink")); + /* gst_static_pad_template_get (&sink_template)); */ gst_element_class_set_static_metadata (eklass, "Clutter Auto video sink", "Sink/Video", "Video sink using a Clutter as output", "Lionel Landwerlin <lionel.g.landwerlin@linux.intel.com>"); + + g_object_unref (cogl_sink); } static void @@ -156,19 +161,22 @@ clutter_gst_auto_video_sink_reset (ClutterGstAutoVideoSink *sink) /* pad, setting this target should always work */ targetpad = gst_element_get_static_pad (sink->kid, "sink"); - gst_ghost_pad_set_target (GST_GHOST_PAD (sink->pad), targetpad); + if (!gst_ghost_pad_set_target (GST_GHOST_PAD (sink->pad), targetpad)) + g_warning ("Couldn't link ghostpad's to target pad"); gst_object_unref (targetpad); } static void clutter_gst_auto_video_sink_init (ClutterGstAutoVideoSink *sink) { + sink->ts_offset = DEFAULT_TS_OFFSET; + sink->pad = gst_ghost_pad_new_no_target ("sink", GST_PAD_SINK); gst_element_add_pad (GST_ELEMENT (sink), sink->pad); clutter_gst_auto_video_sink_reset (sink); - sink->ts_offset = DEFAULT_TS_OFFSET; + /* mark as sink */ GST_OBJECT_FLAG_SET (sink, GST_ELEMENT_FLAG_SINK); |