avformat/hls: avoid floating point arithmetic

Should make things more reproducable across platforms

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Michael Niedermayer 2013-07-22 19:36:33 +02:00
parent 2a5891bb9d
commit 419a3d8a43
1 changed files with 3 additions and 3 deletions

View File

@ -524,10 +524,10 @@ static int hls_read_header(AVFormatContext *s)
/* If this isn't a live stream, calculate the total duration of the
* stream. */
if (c->variants[0]->finished) {
double duration = 0.0;
int64_t duration = 0;
for (i = 0; i < c->variants[0]->n_segments; i++)
duration += c->variants[0]->segments[i]->duration;
s->duration = duration * AV_TIME_BASE;
duration += round(c->variants[0]->segments[i]->duration * AV_TIME_BASE);
s->duration = duration;
}
/* Open the demuxer for each variant */