summaryrefslogtreecommitdiffstats
path: root/libmpdemux/cdda.c
diff options
context:
space:
mode:
Diffstat (limited to 'libmpdemux/cdda.c')
-rw-r--r--libmpdemux/cdda.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/libmpdemux/cdda.c b/libmpdemux/cdda.c
index 6d46e1aab3..a348e6ce3d 100644
--- a/libmpdemux/cdda.c
+++ b/libmpdemux/cdda.c
@@ -5,6 +5,7 @@
#include "stream.h"
#include "../m_option.h"
#include "../m_struct.h"
+#include "../bswap.h"
#include <stdio.h>
#include <stdlib.h>
@@ -254,6 +255,11 @@ static int fill_buffer(stream_t* s, char* buffer, int max_len) {
buf = paranoia_read(p->cdp,cdparanoia_callback);
+#ifdef WORDS_BIGENDIAN
+ for(i=0;i<CD_FRAMESIZE_RAW/2;i++)
+ buf[i]=le2me_16(buf[i]);
+#endif
+
p->sector++;
s->pos = p->sector*CD_FRAMESIZE_RAW;
memcpy(buffer,buf,CD_FRAMESIZE_RAW);