[Gamecube] Zapper (*.wav.str/*.sth) by Anterag at 7:51 PM EDT on July 22, 2018
Hi!

Here to download

I need some help figuring out the whole block size of a file. Basically, I want to deinterleave the two streams of that file (with the Alpha23's script) in order to obtain the two streams seperated and then play with vgmstream. Unfortunately, I don't have the block size and also, I'm pretty sure the resulting files will not be playable with vgmstream. It's the Blitz Games STR+STH Gamecube format.
The *.wav.str contains two different files interleaved together (0x8000).
The frequency of the streams is 32000Hz.
The codec used is Nintendo Gamecube DSP 4-bit ADPCM. The coefficients are found in the *.wav.sth file (didn't start to find them, as I'm not at this step right now).

Thanks!
by Nicknine at 3:31 AM EDT on July 24, 2018
I assume these are 4 channel sounds like music in Pac-Man World 3. If that's really the case you can use TXTP with channel mask to play the selected channels only, then you can export the result. Example:

sound.wav#c1,2

This file would play the first two channels from sound.wav.

EDIT: Wait, you said that you haven't played them in vgmstream. Since the header and body are in different files, playing them is a problem as TXTH doesn't provide functionality for such a case.

edited 3:35 AM EDT July 24, 2018

edited 4:10 AM EDT July 24, 2018
by Nicknine at 4:01 AM EDT on July 24, 2018
Well, apparently, there *is* an old parser for this format in vgmstream.
The problem is that it not easily identifiable and differs slightly with each game so this one is unplayable at the moment.

I've dug into the header and you were wrong about the sample rate, it's actually 44100 Hz (at 0x24). I've also found coef tables at 0x11C, 0x17C, 0x1DC, 0x23C.
Unfortunately, like I said, you can't use TXTH header to play them as is.

edited 4:01 AM EDT July 24, 2018
by Anterag at 6:04 AM EDT on July 24, 2018
Oh, ok then...
Thank you for helping me.
by Anterag at 1:07 PM EDT on July 24, 2018
I was wrong though, I said it was two streams interleaved together but it's just multichannel.

I tried creating a GENH header to backyard.wav.str after adding the STH header to the STR.

Here are the settings I used:
Header skip 0x280
Interleave 0x8000
Channels 4
Frequency 44100Hz
No Loops
Coef Offset: Right Channel: 0x11C
Coef Offset: Left Channel: 0x17C

The resulting file has static noise but I can hear the music without distortions, so it's a problem of coefficient offsets. I also tried other coef offsets but it also doesn't work... Any suggestions ?

Thanks!
by bnnm at 5:09 PM EDT on August 4, 2018
I've fixed this, plus you don't need to rename to .sth anymore. Looping may be wrong, and it'll play all channels at once so try .TXTP like Nicknine suggested.

Note that the Blitz STR header is poop and support for their games must be done case by case.
by Anterag at 5:32 PM EDT on August 4, 2018
Thank you!
by Anterag at 6:16 AM EDT on August 5, 2018
But what were the correct coef offsets?


Go to Page 0

Search this thread

Show all threads

Reply to this thread:

User Name Tags:

bold: [b]bold[/b]
italics: [i]italics[/i]
emphasis: [em]emphasis[/em]
underline: [u]underline[/u]
small: [small]small[/small]
Link: [url=http://www.google.com]Link[/url]

[img=https://www.hcs64.com/images/mm1.png]
Password
Subject
Message

HCS Forum Index
Halley's Comet Software
forum source