[gst-cvs] gst-plugins-bad: output-selector: keep ref to buffer for resending only if explicitly requested

Stefan Kost ensonic at kemper.freedesktop.org
Fri Jun 5 00:17:49 PDT 2009


Module: gst-plugins-bad
Branch: master
Commit: ab169897b354d1fb6bad36a66c5f2e6471cb750c
URL:    http://cgit.freedesktop.org/gstreamer/gst-plugins-bad/commit/?id=ab169897b354d1fb6bad36a66c5f2e6471cb750c

Author: Lasse Laukkanen <ext-lasse.2.laukkanen at nokia.com>
Date:   Thu Apr 16 17:32:03 2009 +0300

output-selector: keep ref to buffer for resending only if explicitly requested

---

 gst/selector/gstoutputselector.c |   12 +++++++-----
 1 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/gst/selector/gstoutputselector.c b/gst/selector/gstoutputselector.c
index bf354a7..06443cf 100644
--- a/gst/selector/gstoutputselector.c
+++ b/gst/selector/gstoutputselector.c
@@ -388,11 +388,13 @@ gst_output_selector_chain (GstPad * pad, GstBuffer * buf)
     /* Do the switch */
     gst_output_selector_switch (osel);
   }
-
-  /* Keep reference to latest buffer to resend it after switch */
-  if (osel->latest_buffer)
-    gst_buffer_unref (osel->latest_buffer);
-  osel->latest_buffer = gst_buffer_ref (buf);
+  
+  if (osel->resend_latest) {
+    /* Keep reference to latest buffer to resend it after switch */
+    if (osel->latest_buffer)
+      gst_buffer_unref (osel->latest_buffer);
+    osel->latest_buffer = gst_buffer_ref (buf);
+  }
 
   /* Keep track of last stop and use it in NEWSEGMENT start after 
      switching to a new src pad */





More information about the Gstreamer-commits mailing list