mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-24 02:31:03 +00:00
dashdemux: use effective segment duration to reschedule the streaming task
do not assume segment duration is constant Conflicts: ext/dash/gstdashdemux.c
This commit is contained in:
parent
cfcd9ffac6
commit
dc5d7d258e
1 changed files with 2 additions and 0 deletions
|
@ -935,6 +935,7 @@ gst_dash_demux_stream_loop (GstDashDemux * demux)
|
|||
GstBufferList *buffer_list;
|
||||
guint nb_adaptation_set = 0;
|
||||
GstActiveStream *stream;
|
||||
GstClockTime duration = 0;
|
||||
|
||||
/* Wait until the next scheduled push downstream */
|
||||
if (g_cond_timed_wait (GST_TASK_GET_COND (demux->stream_task),
|
||||
|
@ -972,6 +973,7 @@ gst_dash_demux_stream_loop (GstDashDemux * demux)
|
|||
for (i = 0; i < nb_adaptation_set; i++) {
|
||||
GstFragment *fragment = g_list_nth_data (listfragment, i);
|
||||
stream = gst_mpdparser_get_active_stream_by_index (demux->client, i);
|
||||
duration = fragment->stop_time - fragment->start_time;
|
||||
if (demux->need_segment) {
|
||||
GstClockTime start = fragment->start_time + demux->position_shift;
|
||||
/* And send a newsegment */
|
||||
|
|
Loading…
Reference in a new issue