When writing an explicit time, reset the cur_time variable to this
value as well. This avoids writing excessive time attributes for each
segment in the timeline, as long as the segments are continuous.
---
libavformat/dashenc.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/libavformat/dashenc.c b/libavformat/dashenc.c
index b4fd194..7dd08ec 100644
--- a/libavformat/dashenc.c
+++ b/libavformat/dashenc.c
@@ -214,8 +214,10 @@ static void output_segment_list(OutputStream *os,
AVIOContext *out, DASHContext
Segment *seg = os->segments[i];
int repeat = 0;
avio_printf(out, "\t\t\t\t\t\t<S ");
- if (i == start_index || seg->time != cur_time)
+ if (i == start_index || seg->time != cur_time) {
+ cur_time = seg->time;
avio_printf(out, "t=\"%"PRId64"\" ", seg->time);
+ }
avio_printf(out, "d=\"%d\" ", seg->duration);
while (i + repeat + 1 < os->nb_segments &&
os->segments[i + repeat + 1]->duration == seg->duration
&&
--
1.9.3 (Apple Git-50)
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel