[FFmpeg-devel] [PATCHv2 2/2] avcodec/sinewin_tablegen: use sin instead of sinf for fixed point to improve precision
Marton Balint
cus at passwd.hu
Sun Mar 13 23:50:54 CET 2016
Signed-off-by: Marton Balint <cus at passwd.hu>
---
libavcodec/sinewin_tablegen.h | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/libavcodec/sinewin_tablegen.h b/libavcodec/sinewin_tablegen.h
index 4432135..9c912aa 100644
--- a/libavcodec/sinewin_tablegen.h
+++ b/libavcodec/sinewin_tablegen.h
@@ -50,9 +50,9 @@ SINETABLE(8192);
#endif
#if USE_FIXED
-#define SIN_FIX(a) (int)floor((a) * 0x80000000 + 0.5)
+#define SIN_FIX(a) (int)floor(sin(a) * 0x80000000 + 0.5)
#else
-#define SIN_FIX(a) a
+#define SIN_FIX(a) sinf(a)
#endif
SINETABLE_CONST INTFLOAT * const AAC_RENAME(ff_sine_windows)[] = {
@@ -66,7 +66,7 @@ SINETABLE_CONST INTFLOAT * const AAC_RENAME(ff_sine_windows)[] = {
av_cold void AAC_RENAME(ff_sine_window_init)(INTFLOAT *window, int n) {
int i;
for(i = 0; i < n; i++)
- window[i] = SIN_FIX(sinf((i + 0.5) * (M_PI / (2.0 * n))));
+ window[i] = SIN_FIX((i + 0.5) * (M_PI / (2.0 * n)));
}
av_cold void AAC_RENAME(ff_init_ff_sine_windows)(int index) {
--
2.6.2
More information about the ffmpeg-devel
mailing list