SHERLOCK: Workaround for bad doorbell sound in Serrated Scalpel

The sound of the doorbell at Lord Brumwell's mansion is played at 1100
Hz. That has to be an error in the game data. The other sound effects I
checked were usually 11000 Hz, and sometimes 22000 Hz. It's hard to tell
by ear which one is correct here, but 11000 Hz seems to match the 3DO
version quite well.

This bug is present in the original DOS version, though less noticeably
so. Perhaps the original audio driver clamps the sample rate to a
reasonable interval? It still gets it wrong, but not as badly?

This fixes bug #10838.
This commit is contained in:
Torbjörn Andersson 2021-11-30 09:47:28 +01:00 committed by Paul Gilbert
parent edb7fd916c
commit aa2b0f5b8c

View File

@ -313,6 +313,14 @@ bool Sound::playSoundResource(const Common::String &name, const Common::String &
byte *decoded = (byte *)malloc((size - 1) * 2);
// WORKAROUND: The doorbell at Lord Brumwell's mansion sounds really
// strange at 1100 Hz. The game isn't heavy on sounds, but other sound
// effects seem to be mostly at 11000 Hz, and that sounds about right
// here since it matches the 3DO version.
if (name == "JFCHIME.SND" && rate == 1100) {
rate = 11000;
}
// Holmes uses Creative ADPCM 4-bit data
int counter = 0;
byte reference = ptr[0];