summaryrefslogtreecommitdiffstats
path: root/format.c
diff options
context:
space:
mode:
Diffstat (limited to 'format.c')
-rw-r--r--format.c17
1 files changed, 8 insertions, 9 deletions
diff --git a/format.c b/format.c
index 7051fcb..91b7464 100644
--- a/format.c
+++ b/format.c
@@ -1,6 +1,5 @@
#include <inttypes.h>
#include <sys/types.h>
-#include <sys/param.h>
#include <liboil/liboil.h>
@@ -167,9 +166,9 @@ static int format_s24_to_s32(bbuffer_t *b, void *dst, size_t dstr, const void *s
unsigned n = bytes/3;
for (; n > 0; n--, d += dstr/sizeof(int32_t), s += sstr/3)
-#if __BYTE_ORDER == __LITTLE_ENDIAN
+#if defined(SA_LITTLE_ENDIAN)
*d = (int32_t) ((int8_t) s[2]) * 0x1000000 + s[1] * 0x10000 + s[0] * 0x100;
-#elif __BYTE_ORDER == __BIG_ENDIAN
+#elif defined(SA_BIG_ENDIAN)
*d = (int32_t) ((int8_t) s[0]) * 0x1000000 + s[1] * 0x10000 + s[2] * 0x100;
#else
#error "Unknown byte order"
@@ -184,9 +183,9 @@ static int format_s24_to_f32(bbuffer_t *b, void *dst, size_t dstr, const void *s
unsigned n = bytes/3;
for (; n > 0; n--, d += dstr/sizeof(float), s += sstr/3)
-#if __BYTE_ORDER == __LITTLE_ENDIAN
+#if defined(SA_LITTLE_ENDIAN)
*d = ((float) ((int8_t) s[2]) * 0x10000 + s[1] * 0x100 + s[0]) / 0x7fffff;
-#elif __BYTE_ORDER == __BIG_ENDIAN
+#elif defined(SA_BIG_ENDIAN)
*d = ((float) ((int8_t) s[0]) * 0x10000 + s[1] * 0x100 + s[2]) / 0x7fffff;
#else
#error "Unknown byte order"
@@ -249,11 +248,11 @@ static int format_s32_to_s24(bbuffer_t *b, void *dst, size_t dstr, const void *s
for (; n > 0; n--, d += dstr/3, s += sstr/sizeof(int32_t)) {
uint32_t j = (uint32_t) (*s) >> 8;
-#if __BYTE_ORDER == __LITTLE_ENDIAN
+#if defined(SA_LITTLE_ENDIAN)
d[0] = j & 0xFF;
d[1] = (j >> 8) & 0xFF;
d[2] = (j >> 16);
-#elif __BYTE_ORDER == __BIG_ENDIAN
+#elif defined(SA_BIG_ENDIAN)
d[2] = j & 0xFF;
d[1] = (j >> 8) & 0xFF;
d[0] = (j >> 16);
@@ -354,11 +353,11 @@ static int format_f32_to_s24(bbuffer_t *b, void *dst, size_t dstr, const void *s
j = (uint32_t) ((int32_t) f);
-#if __BYTE_ORDER == __LITTLE_ENDIAN
+#if defined(SA_LITTLE_ENDIAN)
d[0] = j & 0xFF;
d[1] = (j >> 8) & 0xFF;
d[2] = (j >> 16);
-#elif __BYTE_ORDER == __BIG_ENDIAN
+#elif defined(SA_BIG_ENDIAN)
d[2] = j & 0xFF;
d[1] = (j >> 8) & 0xFF;
d[0] = (j >> 16);