1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-23 12:43:46 +02:00

move max analyze duration check before considering new packet

Originally committed as revision 18051 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Baptiste Coudurier 2009-03-19 21:54:34 +00:00
parent dd35beb29b
commit 3a5601885b

View File

@ -2137,8 +2137,11 @@ int av_find_stream_info(AVFormatContext *ic)
read_size += pkt->size;
st = ic->streams[pkt->stream_index];
if(codec_info_nb_frames[st->index]>1)
if(codec_info_nb_frames[st->index]>1) {
if (st->time_base.den > 0 && av_rescale_q(codec_info_duration[st->index], st->time_base, AV_TIME_BASE_Q) >= ic->max_analyze_duration)
break;
codec_info_duration[st->index] += pkt->duration;
}
if (pkt->duration != 0)
codec_info_nb_frames[st->index]++;
@ -2199,9 +2202,6 @@ int av_find_stream_info(AVFormatContext *ic)
(st->codec->codec_id == CODEC_ID_MPEG4 && !st->need_parsing))*/)
try_decode_frame(st, pkt->data, pkt->size);
if (st->time_base.den > 0 && av_rescale_q(codec_info_duration[st->index], st->time_base, AV_TIME_BASE_Q) >= ic->max_analyze_duration) {
break;
}
count++;
}