mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-11-21 10:55:51 +02:00
Fix a bug with reading non-interleaved AVI if one the streams is
shorter. Patch by Maksym Veremeyenko, verem m1stereo tv Originally committed as revision 19798 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
b60de406a4
commit
2c14ded386
@ -679,12 +679,18 @@ static int avi_read_packet(AVFormatContext *s, AVPacket *pkt)
|
||||
AVStream *st = s->streams[i];
|
||||
AVIStream *ast = st->priv_data;
|
||||
int64_t ts= ast->frame_offset;
|
||||
int64_t last_ts;
|
||||
|
||||
if(!st->nb_index_entries)
|
||||
continue;
|
||||
|
||||
if(ast->sample_size)
|
||||
ts /= ast->sample_size;
|
||||
|
||||
last_ts = st->index_entries[st->nb_index_entries - 1].timestamp;
|
||||
if(!ast->remaining && ts > last_ts)
|
||||
continue;
|
||||
|
||||
ts = av_rescale_q(ts, st->time_base, AV_TIME_BASE_Q);
|
||||
|
||||
// av_log(s, AV_LOG_DEBUG, "%"PRId64" %d/%d %"PRId64"\n", ts, st->time_base.num, st->time_base.den, ast->frame_offset);
|
||||
|
Loading…
Reference in New Issue
Block a user