]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
Changing ast_samp2tv to not use floating point.
authorDavid Vossel <dvossel@digium.com>
Thu, 9 Jul 2009 16:18:09 +0000 (16:18 +0000)
committerDavid Vossel <dvossel@digium.com>
Thu, 9 Jul 2009 16:18:09 +0000 (16:18 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@205599 65c4cc65-6c06-0410-ace0-fbb531ad65f3

include/asterisk/time.h

index 306ea7ffb0f1add2a1d648d1161cbc796ac1c28a..103e25c1e1dcc7b8c2365da615e4727776dff183 100644 (file)
@@ -137,7 +137,7 @@ struct timeval ast_tv(ast_time_t sec, ast_suseconds_t usec),
 AST_INLINE_API(
 struct timeval ast_samp2tv(unsigned int _nsamp, unsigned int _rate),
 {
-       return ast_tv(_nsamp / _rate, (_nsamp % _rate) * (1000000 / (float) _rate));
+       return ast_tv(_nsamp / _rate, ((_nsamp % _rate) * (4000000 / _rate)) / 4); /* this calculation is accurate up to 32000Hz. */
 }
 )