MONSTER.SOU compression problem - tools 1.1.1

Ask for help with ScummVM problems

Moderator: ScummVM Team

Post Reply
User avatar
Jimbob
Posts: 307
Joined: Mon Oct 31, 2005 4:36 pm
Location: Somewhere in the UK

MONSTER.SOU compression problem - tools 1.1.1

Post by Jimbob »

Hi,

I've just installed ScummVM 1.1.1 on my SGI O2 running Irix 6.5.29 and I've been trying to get DOTT and Sam & Max Hit The Road working (the games are from the retail CD containing both games in a folder called BUILD). I downloaded the ScummVM tools package (also 1.1.1) for Irix and I tried to compress the MONSTER.SOU files in MP3 format using lame from the Nekochan distribution. My problem is that I still have music for the games but the speech has disappeared, in the console are messages similar to: -

Code: Select all

WARNING: startTalkSound: did not find sound at offset 3715569! 
WARNING: startTalkSound: did not find sound at offset 3787036! 
WARNING: startTalkSound: did not find sound at offset 166121894! 
WARNING: startTalkSound: did not find sound at offset 3864263! 
WARNING: startTalkSound: did not find sound at offset 3971826! 
WARNING: startTalkSound: did not find sound at offset 167115218! 
WARNING: startTalkSound: did not find sound at offset 166896148! 
WARNING: startTalkSound: did not find sound at offset 4059741! 
WARNING: startTalkSound: did not find sound at offset 4073288!
I started the encoder with the standard defaults using: -

Code: Select all

<path to scummvm-tools>/scummvm-tools-cli --mp3 MONSTER.SOU
So, I thought the lame executable from the Nekochan distribution may be playing up and I tried FLAC. The same problem occurred.

My next plan was to compress the files on my iMac G5 running OS X Leopard and to burn the files to a CD to copy onto the SGI machine. Again, I tried all 3 compression formats and all 3 result in no speech in the game with similar messages output to the console like the ones above. This was using version 1.1.1 of ScummVM and ScummVM-Tools.

What am I doing wrong? The games seem to be fine using the standard MONSTER.SOU files but hard disk space is limited on the SGI machine. I setup ScummVM years ago on my Macs using compressed files but now I don't seem to be able to use the compression utilities ... has a bug crept in or am I doing something stupid?

Thanks for your help.

One last thing, one similarity between the SGI O2 and my iMac G5 is both machines are big endian.
User avatar
eriktorbjorn
ScummVM Developer
Posts: 3557
Joined: Mon Oct 31, 2005 7:39 am

Post by eriktorbjorn »

I don't have that particular hardware myself, but I can't reproduce the problem on my Linux box.

I don't know if it helps, but I believe I can explain what the "did not find sound at offset" messages mean. The game scripts do not, as one might first think, say "play sound ID X" or anything like that. They just say "play the sound at offset X". That's why you see numbers like 3715569, 3787036, etc. It's also why you can't take the MONSTER.SOU from one game and use in another. Not even if the two games are the same game in different languages. (Judging by your numbers, I'd say you have the English version of the game.)

Compressing shrinks the file (obviously), giving all the sounds new offsets. To convert from the old offsets to the new offsets, the compression tool puts an index at the beginning of the compressed file. The message you see happens when it can't find the offset in that index. The index should be in a well-defined format, so endianness shouldn't matter. Though as I indicated, I don't have any big-endian system to test with myself.

If you were using a little-endian system (or if I could be 100% sure there aren't endian issues), I'd say the most likely explanation was that ScummVM was trying to use the wrong sound file (i.e. the DOTT one for Sam & Max, and vice versa). Now I'm not certain.
User avatar
joostp
ScummVM Developer
Posts: 490
Joined: Wed Sep 21, 2005 3:55 pm

Post by joostp »

This seems to indeed be an endian bug in the tools.
The same happens here on my IRIX machines.

Furthermore, the monster.sog built using the IRIX tools doesn't work on an LE Linux machine's ScummVM, but one built with the LE tools works fine on IRIX.

Please file a bug report about this issue.


EDIT: Should be fixed in SVN trunk now. If you don't have the ability to build the tools yourself, I suggest converting the files on a LE machine.
User avatar
Jimbob
Posts: 307
Joined: Mon Oct 31, 2005 4:36 pm
Location: Somewhere in the UK

Post by Jimbob »

I'll try this tonight on the iMac ... thanks for your help.


EDIT: I think that has fixed it, DOTT seems to work on my iMac G5 using FLAC and OGG compressed MONSTER.SOU ..... thank you :)

Just starting to copy the files onto the O2 .... I'll start playing the games properly to test them.
Post Reply