diff options
author | Martin Storsjö <martin@martin.st> | 2011-03-21 00:23:54 +0200 |
---|---|---|
committer | Martin Storsjö <martin@martin.st> | 2011-04-04 13:01:59 +0300 |
commit | 0d8a33b11e605f7fb6b51640d438d41fec08db1c (patch) | |
tree | 757ebfe49c43fa69a71e5d7534a14f151582edb6 | |
parent | 6cc7f1398257d4ffa89f79d52f10b2cabd9ad232 (diff) | |
download | ffmpeg-streaming-0d8a33b11e605f7fb6b51640d438d41fec08db1c.zip ffmpeg-streaming-0d8a33b11e605f7fb6b51640d438d41fec08db1c.tar.gz |
applehttp: Merge two for loops
The previous commit didn't do this straight away, to keep the
diff slightly simpler.
-rw-r--r-- | libavformat/applehttp.c | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/libavformat/applehttp.c b/libavformat/applehttp.c index 7ab3ab7..93f928a 100644 --- a/libavformat/applehttp.c +++ b/libavformat/applehttp.c @@ -506,9 +506,15 @@ static int applehttp_read_seek(AVFormatContext *s, int stream_index, if ((flags & AVSEEK_FLAG_BYTE) || !c->variants[0]->finished) return AVERROR(ENOSYS); - /* Reset the variants */ + timestamp = av_rescale_rnd(timestamp, 1, stream_index >= 0 ? + s->streams[stream_index]->time_base.den : + AV_TIME_BASE, flags & AVSEEK_FLAG_BACKWARD ? + AV_ROUND_DOWN : AV_ROUND_UP); + ret = AVERROR(EIO); for (i = 0; i < c->n_variants; i++) { + /* Reset reading */ struct variant *var = c->variants[i]; + int64_t pos = 0; if (var->input) { url_close(var->input); var->input = NULL; @@ -516,16 +522,7 @@ static int applehttp_read_seek(AVFormatContext *s, int stream_index, av_free_packet(&var->pkt); reset_packet(&var->pkt); var->pb.eof_reached = 0; - } - timestamp = av_rescale_rnd(timestamp, 1, stream_index >= 0 ? - s->streams[stream_index]->time_base.den : - AV_TIME_BASE, flags & AVSEEK_FLAG_BACKWARD ? - AV_ROUND_DOWN : AV_ROUND_UP); - ret = AVERROR(EIO); - for (i = 0; i < c->n_variants; i++) { - struct variant *var = c->variants[i]; - int64_t pos = 0; /* Locate the segment that contains the target timestamp */ for (j = 0; j < var->n_segments; j++) { if (timestamp >= pos && |