avformat/avienc: Avoid float usage
authorMichael Niedermayer <michaelni@gmx.at>
Sat, 23 May 2015 20:46:51 +0000 (22:46 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Sat, 23 May 2015 21:42:51 +0000 (23:42 +0200)
reduces risk for rounding differences between platforms

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavformat/avienc.c

index fb2cdd2..5396a7d 100644 (file)
@@ -409,7 +409,7 @@ static int avi_write_header(AVFormatContext *s)
             avio_wl32(pb, 0); // video format   = unknown
             avio_wl32(pb, 0); // video standard = unknown
             // TODO: should be avg_frame_rate
-            avio_wl32(pb, lrintf(1.0 / av_q2d(st->time_base)));
+            avio_wl32(pb, (2LL*st->time_base.den + st->time_base.num - 1) / (2LL * st->time_base.num));
             avio_wl32(pb, enc->width);
             avio_wl32(pb, enc->height);
             avio_wl16(pb, den);