[FFmpeg-cvslog] avidec: Fix infinite loop caused by rounding of timestamps in non interleaved avis .

Michael Niedermayer git at videolan.org
Fri Dec 16 06:25:15 CET 2011


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Fri Dec 16 05:13:58 2011 +0100| [e098fba5d9c9d52aaddd83e63dd910ff20b841d2] | committer: Michael Niedermayer

avidec: Fix infinite loop caused by rounding of timestamps in non interleaved avis.
Fixes Ticket775
Bug found by: Diana Elena Muscalu

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=e098fba5d9c9d52aaddd83e63dd910ff20b841d2
---

 libavformat/avidec.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/libavformat/avidec.c b/libavformat/avidec.c
index c74aa10..05f5d58 100644
--- a/libavformat/avidec.c
+++ b/libavformat/avidec.c
@@ -1050,7 +1050,7 @@ static int avi_read_packet(AVFormatContext *s, AVPacket *pkt)
             return AVERROR_EOF;
 
         best_ast = best_st->priv_data;
-        best_ts = av_rescale_q(best_ts, (AVRational){FFMAX(1, best_ast->sample_size), AV_TIME_BASE}, best_st->time_base);
+        best_ts = best_ast->frame_offset;
         if(best_ast->remaining)
             i= av_index_search_timestamp(best_st, best_ts, AVSEEK_FLAG_ANY | AVSEEK_FLAG_BACKWARD);
         else{



More information about the ffmpeg-cvslog mailing list