]> code.delx.au - pulseaudio/blobdiff - src/pulsecore/sconv-s16le.c
Remove unnecessary #includes
[pulseaudio] / src / pulsecore / sconv-s16le.c
index 307ce7b7de89fdd3a91b59e59b4c0cf64ffce729..138e41857cccb5fa6894753493fbb698bb513e34 100644 (file)
 
 #include <inttypes.h>
 #include <stdio.h>
-
-#include <liboil/liboilfuncs.h>
+#include <math.h>
 
 #include <pulsecore/sconv.h>
 #include <pulsecore/macro.h>
-#include <pulsecore/log.h>
-
-#include "endianmacros.h"
+#include <pulsecore/endianmacros.h>
 
 #include "sconv-s16le.h"
 
@@ -86,17 +83,13 @@ void pa_sconv_s16le_to_float32ne(unsigned n, const int16_t *a, float *b) {
     pa_assert(b);
 
 #if SWAP_WORDS == 1
-
     for (; n > 0; n--) {
         int16_t s = *(a++);
         *(b++) = ((float) INT16_FROM(s))/(float) 0x7FFF;
     }
-
 #else
-{
-    static const double add = 0, factor = 1.0/0x7FFF;
-    oil_scaleconv_f32_s16(b, a, (int) n, &add, &factor);
-}
+    for (; n > 0; n--)
+        *(b++) = ((float) (*(a++)))/(float) 0x7FFF;
 #endif
 }
 
@@ -105,17 +98,13 @@ void pa_sconv_s32le_to_float32ne(unsigned n, const int32_t *a, float *b) {
     pa_assert(b);
 
 #if SWAP_WORDS == 1
-
     for (; n > 0; n--) {
         int32_t s = *(a++);
         *(b++) = (float) (((double) INT32_FROM(s))/0x7FFFFFFF);
     }
-
 #else
-{
-    static const double add = 0, factor = 1.0/0x7FFFFFFF;
-    oil_scaleconv_f32_s32(b, a, (int) n, &add, &factor);
-}
+    for (; n > 0; n--)
+        *(b++) = (float) (((double) (*(a++)))/0x7FFFFFFF);
 #endif
 }
 
@@ -124,7 +113,6 @@ void pa_sconv_s16le_from_float32ne(unsigned n, const float *a, int16_t *b) {
     pa_assert(b);
 
 #if SWAP_WORDS == 1
-
     for (; n > 0; n--) {
         int16_t s;
         float v = *(a++);
@@ -133,12 +121,13 @@ void pa_sconv_s16le_from_float32ne(unsigned n, const float *a, int16_t *b) {
         s = (int16_t) lrintf(v * 0x7FFF);
         *(b++) = INT16_TO(s);
     }
-
 #else
-{
-    static const double add = 0, factor = 0x7FFF;
-    oil_scaleconv_s16_f32(b, a, (int) n, &add, &factor);
-}
+    for (; n > 0; n--) {
+        float v = *(a++);
+
+        v = PA_CLAMP_UNLIKELY(v, -1.0f, 1.f);
+        *(b++) = (int16_t) lrintf(v * 0x7FFF);
+    }
 #endif
 }
 
@@ -147,7 +136,6 @@ void pa_sconv_s32le_from_float32ne(unsigned n, const float *a, int32_t *b) {
     pa_assert(b);
 
 #if SWAP_WORDS == 1
-
     for (; n > 0; n--) {
         int32_t s;
         float v = *(a++);
@@ -156,12 +144,13 @@ void pa_sconv_s32le_from_float32ne(unsigned n, const float *a, int32_t *b) {
         s = (int32_t) lrint((double) v * (double) 0x7FFFFFFF);
         *(b++) = INT32_TO(s);
     }
-
 #else
-{
-    static const double add = 0, factor = 0x7FFFFFFF;
-    oil_scaleconv_s32_f32(b, a, (int) n, &add, &factor);
-}
+    for (; n > 0; n--) {
+        float v = *(a++);
+
+        v = PA_CLAMP_UNLIKELY(v, -1.0f, 1.0f);
+        *(b++) = (int32_t) lrint((double) v * (double) 0x7FFFFFFF);
+    }
 #endif
 }
 
@@ -370,7 +359,7 @@ void pa_sconv_s24_32le_to_s16ne(unsigned n, const uint32_t *a, int16_t *b) {
     pa_assert(b);
 
     for (; n > 0; n--) {
-        *b = (int16_t) ((int32_t) (UINT32_FROM(*a) << 8) >> 16);
+        *b = (int16_t) (((int32_t) (UINT32_FROM(*a) << 8)) >> 16);
         a++;
         b++;
     }
@@ -416,8 +405,8 @@ void pa_sconv_s24_32le_to_float32ne(unsigned n, const uint32_t *a, float *b) {
     pa_assert(b);
 
     for (; n > 0; n--) {
-        int32_t s = (int16_t) ((int32_t) (UINT32_FROM(*a) << 8));
-        *b = ((float) s) / 0x7FFFFFFF;
+        int32_t s = (int32_t) (UINT32_FROM(*a) << 8);
+        *b = (float) s / (float) 0x7FFFFFFF;
         a ++;
         b ++;
     }
@@ -428,8 +417,8 @@ void pa_sconv_s24_32le_to_float32re(unsigned n, const uint32_t *a, float *b) {
     pa_assert(b);
 
     for (; n > 0; n--) {
-        int32_t s = (int16_t) ((int32_t) (UINT32_FROM(*a) << 8));
-        float k = ((float) s) / 0x7FFFFFFF;
+        int32_t s = (int32_t) (UINT32_FROM(*a) << 8);
+        float k = (float) s / (float) 0x7FFFFFFF;
         *b = PA_FLOAT32_SWAP(k);
         a ++;
         b ++;