Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/GStreamer/gst-plugins-good.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/gst
diff options
context:
space:
mode:
authorVivia Nikolaidou <vivia@ahiru.eu>2020-08-10 20:20:04 +0300
committerVivia Nikolaidou <vivia@ahiru.eu>2020-08-10 20:20:04 +0300
commit75f6ca8a11684757a4751edeae1964b24c9cbb6b (patch)
tree32ede961e60da41b0cd3e9f3bc32f6e46a648fa8 /gst
parent59aab55e715015b048cc766decd843023cb84dda (diff)
flvmux: Return NEED_DATA when no best pad is found
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/696>
Diffstat (limited to 'gst')
-rw-r--r--gst/flv/gstflvmux.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/gst/flv/gstflvmux.c b/gst/flv/gstflvmux.c
index dc06fc0ca..564f9353e 100644
--- a/gst/flv/gstflvmux.c
+++ b/gst/flv/gstflvmux.c
@@ -1959,6 +1959,12 @@ gst_flv_mux_aggregate (GstAggregator * aggregator, gboolean timeout)
}
best = gst_flv_mux_find_best_pad (aggregator, &ts);
+ if (!best) {
+ if (!gst_flv_mux_are_all_pads_eos (mux))
+ return GST_AGGREGATOR_FLOW_NEED_DATA;
+ else
+ return GST_FLOW_OK;
+ }
ret = gst_flv_mux_write_header (mux);
if (ret != GST_FLOW_OK) {
@@ -2006,6 +2012,8 @@ gst_flv_mux_aggregate (GstAggregator * aggregator, gboolean timeout)
GST_STIME_FORMAT, GST_TIME_ARGS (best->pts),
GST_STIME_ARGS (best->dts));
} else {
+ if (!gst_flv_mux_are_all_pads_eos (mux))
+ return GST_AGGREGATOR_FLOW_NEED_DATA;
best_time = GST_CLOCK_STIME_NONE;
}