[FFmpeg-cvslog] sidxindex: Don' t adjust the Period start time depending on the track start time

Martin Storsjö git at videolan.org
Sat Jan 3 05:16:45 CET 2015


ffmpeg | branch: master | Martin Storsjö <martin at martin.st> | Fri Nov 28 09:40:31 2014 +0200| [5cf6bda6e2eae496e8eb2bb06c96852d59a58b8a] | committer: Martin Storsjö

sidxindex: Don't adjust the Period start time depending on the track start time

This was only necessary to get playback to start with dash.js 1.2.0,
it has been fixed in the git version.

The previous behaviour was incorrect - the Period's start time
is irrespective of the actual first timestamp of the contents
within the period. The Period start time only says when, within the
global timeline, this particular piece should start to be played
back.

Signed-off-by: Martin Storsjö <martin at martin.st>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=5cf6bda6e2eae496e8eb2bb06c96852d59a58b8a
---

 tools/sidxindex.c |   13 +------------
 1 file changed, 1 insertion(+), 12 deletions(-)

diff --git a/tools/sidxindex.c b/tools/sidxindex.c
index 62f021f..6c6b3a4 100644
--- a/tools/sidxindex.c
+++ b/tools/sidxindex.c
@@ -252,7 +252,6 @@ static int output_mpd(struct Tracks *tracks, const char *filename)
     int nb_tracks_buf[2] = { 0 };
     int *nb_tracks;
     int set, nb_sets;
-    int64_t latest_start = 0;
 
     if (!tracks->multiple_tracks_per_file) {
         adaptation_sets = adaptation_sets_buf;
@@ -299,17 +298,7 @@ static int output_mpd(struct Tracks *tracks, const char *filename)
     fprintf(out, "\"\n");
     fprintf(out, "\tminBufferTime=\"PT5S\">\n");
 
-    for (i = 0; i < tracks->nb_tracks; i++) {
-        int64_t start = av_rescale_rnd(tracks->tracks[i]->earliest_presentation,
-                                       AV_TIME_BASE,
-                                       tracks->tracks[i]->earliest_presentation_timescale,
-                                       AV_ROUND_UP);
-        latest_start = FFMAX(start, latest_start);
-    }
-    fprintf(out, "\t<Period start=\"");
-    write_time(out, latest_start, 3, AV_ROUND_UP);
-    fprintf(out, "\">\n");
-
+    fprintf(out, "\t<Period start=\"PT0.0S\">\n");
 
     for (set = 0; set < nb_sets; set++) {
         if (nb_tracks[set] == 0)



More information about the ffmpeg-cvslog mailing list