Commit 6fd286a1 authored by michael's avatar michael

fixing some seek failure issues


git-svn-id: file:///var/local/repositories/ffmpeg/trunk@2688 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
parent 7181f397
......@@ -1406,15 +1406,16 @@ static int decode_thread(void *arg)
#endif
if (is->seek_req) {
/* XXX: must lock decoder threads */
ret = av_seek_frame(is->ic, -1, is->seek_pos);
if (ret < 0) {
fprintf(stderr, "%s: error while seeking\n", is->ic->filename);
}else{
if (is->audio_stream >= 0) {
packet_queue_flush(&is->audioq);
}
if (is->video_stream >= 0) {
packet_queue_flush(&is->videoq);
}
ret = av_seek_frame(is->ic, -1, is->seek_pos);
if (ret < 0) {
fprintf(stderr, "%s: error while seeking\n", is->ic->filename);
}
is->seek_req = 0;
}
......
......@@ -496,6 +496,7 @@ static int avi_load_index(AVFormatContext *s)
AVIContext *avi = s->priv_data;
ByteIOContext *pb = &s->pb;
uint32_t tag, size;
offset_t pos= url_ftell(pb);
url_fseek(pb, avi->movi_end, SEEK_SET);
#ifdef DEBUG_SEEK
......@@ -529,6 +530,7 @@ static int avi_load_index(AVFormatContext *s)
}
}
the_end:
url_fseek(pb, pos, SEEK_SET);
return 0;
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment