Browse Source

ismindex: Use the individual stream duration instead of the global one

The stream duration is used for calculating the duration of the
last fragment easily without manually parsing anything else than
the mfra/tfra atoms. When the global file duration was used
previously, the duration of the last fragment could end up wrong
if the streams weren't equally long.

Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö 11 years ago
parent
commit
d347a7b248
1 changed files with 1 additions and 2 deletions
  1. 1 2
      tools/ismindex.c

+ 1 - 2
tools/ismindex.c

@@ -320,8 +320,7 @@ static int handle_file(struct Tracks *tracks, const char *file, int split)
         track->bitrate   = st->codec->bit_rate;
         track->bitrate   = st->codec->bit_rate;
         track->track_id  = st->id;
         track->track_id  = st->id;
         track->timescale = st->time_base.den;
         track->timescale = st->time_base.den;
-        track->duration  = av_rescale_rnd(ctx->duration, track->timescale,
-                                          AV_TIME_BASE, AV_ROUND_UP);
+        track->duration  = st->duration;
         track->is_audio  = st->codec->codec_type == AVMEDIA_TYPE_AUDIO;
         track->is_audio  = st->codec->codec_type == AVMEDIA_TYPE_AUDIO;
         track->is_video  = st->codec->codec_type == AVMEDIA_TYPE_VIDEO;
         track->is_video  = st->codec->codec_type == AVMEDIA_TYPE_VIDEO;