After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 736141 - dashdemux: do not override last known stream error
dashdemux: do not override last known stream error
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
1.4.1
Other All
: Normal normal
: 1.5.1
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2014-09-05 16:16 UTC by Matthieu Bouron
Modified: 2014-11-07 22:58 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
dashdemux: do not override last known stream error (1.32 KB, patch)
2014-09-05 16:17 UTC, Matthieu Bouron
committed Details | Review
dashdemux: do not stop a fragment download because of not-linked downstream (1.41 KB, patch)
2014-09-09 05:13 UTC, Thiago Sousa Santos
accepted-commit_now Details | Review

Description Matthieu Bouron 2014-09-05 16:16:08 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.
Comment 1 Matthieu Bouron 2014-09-05 16:17:42 UTC
Created attachment 285505 [details] [review]
dashdemux: do not override last known stream error

NOTE: same patch applies to hlsdemux and mssdemux.
Comment 2 Thiago Sousa Santos 2014-09-09 05:13:06 UTC
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.
Comment 3 Thiago Sousa Santos 2014-11-07 22:52:44 UTC
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
Comment 4 Thiago Sousa Santos 2014-11-07 22:56:58 UTC
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