gstreamer: baseparse: always attempt to push if not-linked
Sebastian Dröge
slomo at kemper.freedesktop.org
Mon Apr 2 06:30:18 PDT 2012
Module: gstreamer
Branch: master
Commit: df6d0b06969f9fe2cc8a6238bca7a4a57c17e621
URL: http://cgit.freedesktop.org/gstreamer/gstreamer/commit/?id=df6d0b06969f9fe2cc8a6238bca7a4a57c17e621
Author: Edward Hervey <edward.hervey at collabora.co.uk>
Date: Mon Apr 2 15:13:24 2012 +0200
baseparse: always attempt to push if not-linked
This avoids ending up with plenty of pending data (since we'll only
try to parse/push one frame from the incoming buffer).
Fixes increasing memory consumption when parsers aren't linked
---
libs/gst/base/gstbaseparse.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/libs/gst/base/gstbaseparse.c b/libs/gst/base/gstbaseparse.c
index 108ee89..56a0818 100644
--- a/libs/gst/base/gstbaseparse.c
+++ b/libs/gst/base/gstbaseparse.c
@@ -2466,7 +2466,7 @@ gst_base_parse_chain (GstPad * pad, GstBuffer * buffer)
ret = gst_base_parse_handle_and_push_frame (parse, bclass, frame);
GST_PAD_STREAM_UNLOCK (parse->srcpad);
- if (ret != GST_FLOW_OK) {
+ if (ret != GST_FLOW_OK && ret != GST_FLOW_NOT_LINKED) {
GST_LOG_OBJECT (parse, "push returned %d", ret);
break;
}
More information about the gstreamer-commits
mailing list