A downloadable mod

Download NowName your own price

The CD release of Gabriel Knight: Sins of the Fathers (1993) features a terrific vocal cast. Unfortunately - due to what I believe was a mistake in their DPCM encoder - the resultant speech audio is full of clicks, pops and crackles. This persists across all known releases of the original game, including the current GOG release (ScummVM-based).

After studying the issue, I wrote a tool which decodes, repairs and re-encodes the waveforms - converted finally into a delta patch for the RESOURCE.AUD file. The patched file should work for DOS, Windows, and ScummVM versions of the game. It doesn't fix every audio issue in the game, but it makes a huge difference!

NOTE: I've implemented a simpler realtime version, available in ScummVM versions 2.9.0 and later. This data patch still works and is slightly superior, but it's far less necessary. Improvements to the realtime version are planned!

INSTRUCTIONS

You will need something which can apply LZMA-compressed xdelta patches, such as Delta Patcher (grab the appropriate file for your machine, e.g. windows_bin_x86.zip). Many other implementations exist for various platforms.

Alternatively, you can use the BPS patch with other typical ROM patching tools, including browser-based ones - I've tested with RomPatcher.js.

Further instructions appear on the download page.

DOWNLOAD


Naturally, this is a free mod - but if you'd like to drop me a tip, it'd really help me out - and helps itch.io pay for bandwidth!


Updated 26 days ago
StatusReleased
CategoryGame mod
Rating
Rated 5.0 out of 5 stars
(1 total ratings)
AuthorAllTinker
GenreAdventure
Tags1993, fix, gabriel-knight, Point & Click

Download

Download NowName your own price

Click download now to get access to the following files:

RESOURCE.AUD.xdelta (v2) 181 MB
RESOURCE.AUD.bps (v2) 204 MB

Development log

Comments

Log in with itch.io to leave a comment.

Thanks so much for your work AllTinker, this is brilliant!

I know some of the comments elsewhere may have left a bad taste in your mouth, but I really appreciate what you've done and the love you show for the game.

Would you be willing to release the tool you wrote to extract the audio and rebuild the resource.aud file? I'd love to use AI tools to further clean up the audio - I've got some really nice results working on files extracted using SCI Resource Viewer, but the game doesn't seem to have an override mechanism so I believe the only way to get the restored audio back into the game would be to recompress them (as losslessly as possible) and rebuild the resource.aud file. Do you think that's doable?

Thanks for the kind words. =)

It's doable... But in this case "losslessly as possible" would mean recompressing the audio to 4-bit DPCM @ 22KHz... And the ramps they picked for the DPCM are kind of dubious even then. So I'd keep your expectations quite low...

If that doesn't discourage you, I can send you a build of the tool for GK - maybe drop me an email (my username at alltinker.com). It's obviously very specific; I'm chipping away at a better/more general tool for a potential public release later on; also to help with my work on further improvements to the realtime repairs in ScummVM.

oh yeah with all this helping I forgot to say Killer job!

not even sure you check this page anymore but it there a direct link i don't think i should have to install another tool right i just want pop and click free :P i have the gog version although i converted it to DOSBox staging

Well I don't think you should have to either, but some folks out there vehemently disagree - one even decided it was worth their time to send me an outright legal threat... So this is the minimum level of inconvenience I'm afraid!

(+1)

Have you consider ROM Patcher JS? for example 

Step 1: Install beat (if not already):

Step 2: Create a .bps patch:

bash
beat patch original_resource.aud fixed_resource.aud gk1_audio_fix.bps 
Step 3: Provide Instructions:

Link to ROM Patcher JS:

  1. Go to https://www.marcrobledo.com/RomPatcher.js/
  2. Upload your original resource.aud
  3. Upload gk1_audio_fix.bps
  4. Click Apply patch
  5. Download the fixed file

    This would allow you to stay protected well making it easy and browser based for users
(+1)

https://github.com/marcrobledo/RomPatcher.js/

(+1)

Done - I've added the BPS version as an alternative and verified it with RomPatcher.js. Thanks for the suggestion. =)

No problem! Here's a quick how-to, since it can be a bit confusing—especially because the file isn’t technically a ROM:

Once you have the .bps patch and the original .aud file:

  1. Go to https://www.marcrobledo.com/RomPatcher.js/

  2. Under "ROM file", upload the original .aud file

  3. Under "Patch file", upload the .bps patch

  4. The patch is applied automatically in your browser

  5. Click "Download" to get the patched .aud file

Even though it’s not a ROM, this method works just fine!

also id it worth updating your original forum post from last year?

Glad i could help cheers! 

Great work. It doesn't seem to apply on my Sierra Originals version, unfortunately.

(+1)

Thanks for letting me know - I'll see if I can track down a copy to test...

(+1)

Hmmn, I tracked down a copy with the Sierra Originals label; it's working fine here! For ref I did a "full" install (in DOSBox), copied over RESOURCE.AUD into the install directory, and ran Delta Patcher on it.

My Sierra Originals RESOURCE.AUD file seems to be the same as every other copy I've found; MD5 checksum is 0e2229c87873ca1d861cc67f1813b668, dated 1993-12-04 13:15.

I'd be very curious to hear if your copy has a different checksum/date!

(1 edit)

Although the date and time match, the MD5 hash of my file is 510ed31b0b3c5a33bd822f5db290e00c.

I found that very unusual, because of the matching date and time. So I also did the checksum on the original CD, thinking it might have gotten corrupted on my hard drive, but the version on the CD has 510ed31b0b3c5a33bd822f5db290e00c too.

It could of course be a dodgy CD, but I've been able to play through the game itself without issues. Have attached a photo of the CD (which has the number "S0010304" on it), just so you might be able to see if it is indeed a different release somehow (I'm in the Netherlands - perhaps there is a European version that's different from the US one)?


(2 edits) (+1)

Welp, make that a corrupted CD!

Having done a file compare between the file on the CD and the resource.aud from the GOG version, there is a difference, but only in that file, everything else on the CD matches GOG's version. The difference runs entirely from 018C3800 to 018C3FFF. Exactly 2048 bytes, which is too round a binary number to be a coincidence, and it is the sector size of a CD-ROM. So there is probably a single corrupt sector on my CD (or the master it was built from)!

In my CD's version, the 303 consecutive bytes at offset 018C3ED1..018C3FFF all have value FF, which is obviously wrong. I'll just use the GOG copy then, and apply the patch to that!

Nice, glad you figured it out! Hopefully it wasn't a bad master and it's just a one-off, but I guess we'll see if this crops up again for anyone else...

LOL I remember this issue.