Opened 21 years ago

Closed 21 years ago

Last modified 6 years ago

#768 closed defect (worksforme)

Endian issue in sound/mixer code

Reported by: (none) Owned by: fingolfin
Priority: normal Component: Audio
Version: Keywords:
Cc: Game:


There appears to be an endian issue in the mixer/sound code. My environment is OpenBSD/macppc 3.3-current using scummvm 0.4.0 with Day of the Tentacle, sound files encoded into mp3. On OpenBSD/i386 it works fine.

Can anyone confirm or deny this with linux/ppc or some other bigendian machine?

Ticket imported from: #737415. Ticket imported from: bugs/768.

Change History (15)

comment:1 by SF/khalek, 21 years ago

Owner: set to fingolfin

comment:2 by SF/khalek, 21 years ago

I believe it works fine on macs and other big endian machines, if you are using the sdl backend I think SCUMM_BIG_ENDIAN should get defined for you.

Assigning to fingolfin as he runs osx

comment:3 by fingolfin, 21 years ago

Jolan, if you'd explain *why+ you think there are endian issues... (usually in a bug report, it's better to describe the problem symptoms, not what you think is the cause, that should if at all only come at the end ;-)

As khalek writes, I develop ScummVM on Mac OS X, on big endian hardware.

comment:4 by (none), 21 years ago

Uh, the comment in the configure script specifies that the script does nothing, therefore I'm not using it. I can change this of course... Or just define SCUMM_BIG_ENDIAN

Why assign it to an osx guy? Doesn't the OSX port use coreaudio rather than SDL..?

Anyway, I think it's an endian issue because I have to remove my headphones immediately or else risk going deaf ;) The audio is garbled/scratchy/etc.

comment:5 by (none), 21 years ago

Actually, I see that SCUMM_BIG_ENDIAN is defined.. but it (obviously) doesn't seem to help..?

comment:6 by SF/khalek, 21 years ago

optionally coreaudio for midi, sdl for everything else

comment:7 by fingolfin, 21 years ago

It's been assigned to me because a) I am one of the primary ScummVM developers, b) have a big endian machine. Audio output is done on Mac OS X via SDL, too, as khalek pointed out. And no, the configure script is not used for anything, you can safely ignore it. Rather, for builds using SDL, we relay on SDL telling us correctly which endianess the system has (as in your case).

comment:8 by (none), 21 years ago

Yes, I see now that you use the SDL endian detection. I don't trust "works on MacOSX so it's okay on big endian". also has endian issues in the sound code and some of the sound plays fine on MacOSX, but not at all on other platforms. I'd prefer to hear from someone running linux/ppc.
Anyway, I'll investigate further when I get home and can test on my sparc & sparc64 machines.

comment:9 by fingolfin, 21 years ago

Well, we have more, non-OS X, big endian users, You are the first, AFAIK, to report such issues.

The sc2 example is not comparable, because there are different sound backends involved in that one.

comment:10 by SF/wooshell, 21 years ago

I have just tried to reproduce the bug on my bigendian Sun box (sun4u Ultra1), to no avail. Sound plays fine here. (english DOTT Talkie, mp3 sound file, audio through SDL1.2.6.)

comment:11 by fingolfin, 21 years ago

Resolution: worksforme
Status: newclosed

comment:12 by fingolfin, 21 years ago

This almost guranteed to not be an endian bug. check your MP3 files, check the rest of your setup, etc. Maybe you can find some other Linux/PPC users who run ScummVM and can exchange experiences with them.

comment:13 by (none), 21 years ago

Which OS on the Ultra 1 machine?

SDL 1.2.6 doesn't exist..?

As I stated before my mp3 works fine on i386.

I am not a Linux/PPC user... I just figured that would be the closest platform to OpenBSD/macppc...

comment:14 by SF/wooshell, 21 years ago

Solaris 8 Rev. 02/02 (MU6 108528-11) SDL 1.2.6 is the cvs version, built somewhen middle April.

comment:15 by digitall, 6 years ago

Component: --Unset--Audio
Note: See TracTickets for help on using tickets.