diff -u -r wis-streamer/Options.hh wis-streamer-powerpc/Options.hh --- wis-streamer/Options.hh 2007-04-29 07:27:06.000000000 -0700 +++ wis-streamer-powerpc/Options.hh 2008-02-04 10:16:30.837523860 -0800 @@ -72,6 +72,6 @@ extern void checkArgs(UsageEnvironment& env, int argc, char** argv); extern void reclaimArgs(); -#define PCM_AUDIO_IS_LITTLE_ENDIAN 1 +#define PCM_AUDIO_IS_LITTLE_ENDIAN 0 #endif diff -u -r wis-streamer/WISInput.cpp wis-streamer-powerpc/WISInput.cpp --- wis-streamer/WISInput.cpp 2007-06-11 11:12:13.000000000 -0700 +++ wis-streamer-powerpc/WISInput.cpp 2008-02-04 10:27:54.737523860 -0800 @@ -204,7 +204,13 @@ char line[128]; while (fgets(line, sizeof line, file) != NULL) { int m, n; - if (sscanf(line, "%d: [%u-%*u]: digital audio\n", &m, &n) != 2) continue; + char *c; + //printf(line, "%d: [%u-%*u]: digital audio\n", &m, &n); + if ((c = strrchr(line, ':')) == NULL || + strcmp(c, ": digital audio\n") || + sscanf(line, "%d: [%u-%*u]:", &m, &n) != 2) + continue; + //if (sscanf(line, "%d: [%u-%*u]: digital audio\n", &m, &n) != 2) continue; if (n == i) { minor = m; break; @@ -263,7 +269,7 @@ Boolean WISInput::initALSA(UsageEnvironment& env) { do { int arg; - arg = AFMT_S16_LE; + arg = AFMT_S16_BE; if (ioctl(fOurAudioFileNo, SNDCTL_DSP_SETFMT, &arg) < 0) { printErr(env, "SNDCTL_DSP_SETFMT"); break; diff -u -r wis-streamer/bswap.h wis-streamer-powerpc/bswap.h --- wis-streamer/bswap.h 2006-01-17 04:53:27.000000000 -0800 +++ wis-streamer-powerpc/bswap.h 2008-02-04 10:04:34.477523860 -0800 @@ -5,6 +5,7 @@ #ifndef __BSWAP_H__ #define __BSWAP_H__ +#define WORDS_BIGENDIAN 1 #ifdef HAVE_BYTESWAP_H #include