summaryrefslogtreecommitdiff
path: root/libavformat/avidec.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2008-12-14 15:48:48 +0000
committerMichael Niedermayer <michaelni@gmx.at>2008-12-14 15:48:48 +0000
commit25983dcd532333336ea469c6a2a56f06abdbe66c (patch)
tree4fbe3f08f4cc84d101263dc3edea2c45b603fe4b /libavformat/avidec.c
parent39caffeb9a7b1d06d7789a9581015f482883ed0f (diff)
Fix non interleaved variable fps ODML avis.
Fixed issue738 Originally committed as revision 16127 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavformat/avidec.c')
-rw-r--r--libavformat/avidec.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/libavformat/avidec.c b/libavformat/avidec.c
index eaccd41fe5..6ec30fd0b4 100644
--- a/libavformat/avidec.c
+++ b/libavformat/avidec.c
@@ -668,8 +668,11 @@ static int avi_read_packet(AVFormatContext *s, AVPacket *pkt)
best_ts= av_rescale(best_ts, best_st->time_base.den, AV_TIME_BASE * (int64_t)best_st->time_base.num); //FIXME a little ugly
if(best_ast->remaining)
i= av_index_search_timestamp(best_st, best_ts, AVSEEK_FLAG_ANY | AVSEEK_FLAG_BACKWARD);
- else
+ else{
i= av_index_search_timestamp(best_st, best_ts, AVSEEK_FLAG_ANY);
+ if(i>=0)
+ best_ast->frame_offset= best_st->index_entries[i].timestamp;
+ }
// av_log(NULL, AV_LOG_DEBUG, "%d\n", i);
if(i>=0){