rygel r352 - trunk/src/rygel



Author: zeeshanak
Date: Sun Dec 14 20:23:00 2008
New Revision: 352
URL: http://svn.gnome.org/viewvc/rygel?rev=352&view=rev

Log:
Use fakesink instead of appsink.

appsink is currently in gst-plugins-bad and no distro ships it.

Modified:
   trunk/src/rygel/rygel-gst-stream.vala

Modified: trunk/src/rygel/rygel-gst-stream.vala
==============================================================================
--- trunk/src/rygel/rygel-gst-stream.vala	(original)
+++ trunk/src/rygel/rygel-gst-stream.vala	Sun Dec 14 20:23:00 2008
@@ -50,29 +50,23 @@
     }
 
     private void prepare_pipeline (Element src) throws Error {
-        dynamic Element sink = ElementFactory.make ("appsink", null);
+        dynamic Element sink = ElementFactory.make ("fakesink", null);
 
         if (sink == null) {
             throw new GstStreamError.MISSING_PLUGIN ("Required plugin " +
                                                      "'appsink' missing");
         }
 
-        sink.emit_signals = true;
-        sink.new_buffer += this.on_new_buffer;
+        sink.signal_handoffs = true;
+        sink.handoff += this.on_new_buffer;
 
         this.add_many (src, sink);
         src.link (sink);
     }
 
-    private void on_new_buffer (dynamic Element sink) {
-        Buffer buffer = null;
-
-        GLib.Signal.emit_by_name (sink, "pull-buffer", out buffer);
-        if (buffer == null) {
-            critical ("Failed to get buffer from pipeline");
-            return;
-        }
-
+    private void on_new_buffer (Element sink,
+                                Buffer  buffer,
+                                Pad     pad) {
         this.buffers.push (buffer);
         Idle.add_full (Priority.HIGH_IDLE, this.idle_handler);
     }



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]