I encountered the same problem with xmms-cdread and my TiBook. i read thru the source of xmms-cdread and tried passing different endian
flags to the audio routines, but that didnt seem to help. in the end i hacked xmms-cdread to swab() the data going to the audio device. the curious thing was the data being passed to the spectrum analyzer was being displayed correctly without swab(). i contacted the author of xmms-cdread and he advised me to try the native_endian flag, which i never tried. in the end i got lazy because i had hacked myself a solution and never pursued the correct solution. but clearly somewhere between the driver and many audio apps, there are endianness assumptions that break ppc stuff. i am using ide-scsi for my cdrom and this may have something to do with it. if i do cdrecord -dev 0,0,0 -eject, the output indicates that the driver has the SWABAUDIO flag... i dont know if this is part of the problem or what applications should be looking for to determine what endianness should be used. rob