summaryrefslogtreecommitdiff
path: root/libavformat
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2005-05-06 21:11:38 +0000
committerMichael Niedermayer <michaelni@gmx.at>2005-05-06 21:11:38 +0000
commit09f75b5b38c19ce98447f5a86e3c7985d8d7e7ce (patch)
tree885c00ae19e4647a65e0233ff5aa7201df368523 /libavformat
parent327c4076a3eec0c0f48190e319dfe466c4e0bb8a (diff)
division by zero fix
Originally committed as revision 4191 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavformat')
-rw-r--r--libavformat/utils.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libavformat/utils.c b/libavformat/utils.c
index 21fd82528c..bf3330d066 100644
--- a/libavformat/utils.c
+++ b/libavformat/utils.c
@@ -1841,12 +1841,12 @@ int av_find_stream_info(AVFormatContext *ic)
if(st->codec.codec_id == CODEC_ID_RAWVIDEO && !st->codec.codec_tag && !st->codec.bits_per_sample)
st->codec.codec_tag= avcodec_pix_fmt_to_codec_tag(st->codec.pix_fmt);
- if(best_duration[i] < INT64_MAX && st->codec.time_base.num*1000 <= st->codec.time_base.den){
+ if(best_duration[i] < INT64_MAX && st->codec.time_base.num*1000 <= st->codec.time_base.den &&
+ st->time_base.num*best_duration[i]*1000LL > st->time_base.den){
int int_fps;
st->r_frame_rate.num= st->time_base.den;
st->r_frame_rate.den= st->time_base.num*best_duration[i];
- av_reduce(&st->r_frame_rate.num, &st->r_frame_rate.den, st->r_frame_rate.num, st->r_frame_rate.den, 1<<15);
int_fps= av_rescale(st->r_frame_rate.num, 1, st->r_frame_rate.den); // 1/0