diff options
author | Thiago Santos <thiagoss@osg.samsung.com> | 2015-09-15 09:58:20 -0300 |
---|---|---|
committer | Thiago Santos <thiagoss@osg.samsung.com> | 2015-09-15 12:46:31 -0300 |
commit | bd710e5e1b3df5c4b4cc9f48fc64478dc33a8ae6 (patch) | |
tree | 8795c901321e07766c3a3e06ba12a86cb8620445 /ext | |
parent | fe8de1857a704af9ed6160dfdf8f93131e78ba19 (diff) | |
download | gstreamer-plugins-bad-bd710e5e1b3df5c4b4cc9f48fc64478dc33a8ae6.tar.gz |
dashdemux: fix return when trying to advance in subfragmented stream
Even if it doesn't actually advance the subfragment in the default way
for streams that have subfragments, it can help the base class to return
EOS when there is no more fragments instead of signaling it that it should
continue downloading.
https://bugzilla.gnome.org/show_bug.cgi?id=755042
Diffstat (limited to 'ext')
-rw-r--r-- | ext/dash/gstdashdemux.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/ext/dash/gstdashdemux.c b/ext/dash/gstdashdemux.c index 91de3c620..f1b30917e 100644 --- a/ext/dash/gstdashdemux.c +++ b/ext/dash/gstdashdemux.c @@ -1460,9 +1460,12 @@ gst_dash_demux_stream_fragment_finished (GstAdaptiveDemux * demux, GstDashDemuxStream *dashstream = (GstDashDemuxStream *) stream; if (gst_mpd_client_has_isoff_ondemand_profile (dashdemux->client) && - dashstream->sidx_parser.status == GST_ISOFF_SIDX_PARSER_FINISHED) + dashstream->sidx_parser.status == GST_ISOFF_SIDX_PARSER_FINISHED) { /* fragment is advanced on data_received when byte limits are reached */ - return GST_FLOW_OK; + if (gst_dash_demux_stream_has_next_fragment (stream)) + return GST_FLOW_OK; + return GST_FLOW_EOS; + } if (G_UNLIKELY (stream->downloading_header || stream->downloading_index)) return GST_FLOW_OK; |