[Bug 788763] dashdemux: segmentbase type with 'sidx' is not working as expected.
GStreamer (GNOME Bugzilla)
bugzilla at gnome.org
Mon Oct 16 08:57:19 UTC 2017
https://bugzilla.gnome.org/show_bug.cgi?id=788763
--- Comment #6 from Jun Xie <jun.xie at samsung.com> ---
Review of attachment 361232:
--> (https://bugzilla.gnome.org/review?bug=788763&attachment=361232)
please review my explaination, thanks
::: ext/dash/gstdashdemux.c
@@ +1357,1 @@
}
yes, I agree "The range request should only be until the end of the current
SIDX entry", that is why here, range end shall be range.start + “current SIDX
entry”‘'s size
fragment.range_end is not updated
@@ +2964,1 @@
/* Need to jump to the requested SIDX entry. Push everything up to
(!stream->downloading_index) this is added when sidx range is not explicitly
specified in the mpd file.
so that *sidx_seek_needed set to true, early terminate currently no-range
downloading whole file, then jump to the requested SIDX entry by using sidx
info.
'ref type 1' is not supported, so 'ref type 1' will downloaded as a whole file
without using 'sidx' info. ref_type1_found added here to guarantee this
pattern not broken, otherwise 'ref type 1' will not be playback at all
::: gst-libs/gst/adaptivedemux/gstadaptivedemux.c
@@ +3297,3 @@
stream->fragment.index_range_end, NULL);
+
+ gst_adaptive_demux_stream_update_fragment_info(stream->demux, stream);
in 'gst_adaptive_demux_stream_download_loop',
'gst_adaptive_demux_stream_update_fragment_info' in called.
at this time, sidx is not retrieved and parsed yet.
fragment range will not be set.
after finish 'gst_adaptive_demux_stream_download_header_fragment', sidx is
retrieved and parsed, however fragment range is not set yet.
'gst_adaptive_demux_stream_update_fragment_info’ is added here to update
fragment range.
otherwise, the whole file will be downloaded without range request
--
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list