# HG changeset patch # User mru # Date 1284124568 0 # Node ID b3aea89a4f63876a654e4058d01f8e01603c081f # Parent 5d5fbab4d608483c787538262d88a36e01b29855 nutenc: fix unstable floating-point calculations diff -r 5d5fbab4d608 -r b3aea89a4f63 nutenc.c --- a/nutenc.c Thu Sep 09 23:15:17 2010 +0000 +++ b/nutenc.c Fri Sep 10 13:16:08 2010 +0000 @@ -561,11 +561,11 @@ if(j==nut->time_base_count) nut->time_base_count++; - if(av_q2d(time_base) >= 0.001) + if(INT64_C(1000) * time_base.num >= time_base.den) nut->stream[i].msb_pts_shift = 7; else nut->stream[i].msb_pts_shift = 14; - nut->stream[i].max_pts_distance= FFMAX(1/av_q2d(time_base), 1); + nut->stream[i].max_pts_distance= FFMAX(time_base.den, time_base.num) / time_base.num; } nut->max_distance = MAX_DISTANCE;