GNOME Bugzilla – Bug 736141
dashdemux: do not override last known stream error
Last modified: 2014-11-07 22:58:01 UTC
If an error is posted by a source element, gst_dash_demux_handle_message and gst_dash_download_uri will override its value with GST_FLOW_CUSTOM_ERROR. This behaviour, for example, prevents dashdemux to properly stops its download tasks when the pads are not linked.
Created attachment 285505 [details] [review] dashdemux: do not override last known stream error NOTE: same patch applies to hlsdemux and mssdemux.
Created attachment 285709 [details] [review] dashdemux: do not stop a fragment download because of not-linked downstream When the fragment is over, dashdemux will notice and stop the download. This avoids delivering only part of a fragment downstream, causing the downstream demuxer to be in an unexpected state and fail when new data is received. --- This avoids downstream demuxer issues, but I'd prefer if demuxers could be improved to clean up their internal state somehow. One could use a time segment or a discont to let the downstream demuxer know that it should discart its current data as it will receive a new one.
commit 1d733eacf79b46cfc1dd7f22219f726ad49a7283 Author: Matthieu Bouron <matthieu.bouron@collabora.com> Date: Fri Sep 5 17:57:47 2014 +0200 dashdemux: do not override last known stream error https://bugzilla.gnome.org/show_bug.cgi?id=736141
I created a bug for the other patch as I'm still unsure about the best solution here. https://bugzilla.gnome.org/show_bug.cgi?id=739798