Trying To Rip Voice Clips from Bomberman Generation (GC)

Get help on any and all audio formats, or chip in and help others!
SteamyJ
ultra-n00b
Posts: 8
Joined: Wed May 15, 2019 9:44 pm

Trying To Rip Voice Clips from Bomberman Generation (GC)

Post by SteamyJ » Wed May 15, 2019 9:46 pm

Hello all. I've been struggling with this for a while and could use some help. I extracted the files from the iso using Dolphin and it seems the voice clips are in the .MDT files. Is there anyway to extract these or explore them further? I've tried just about everything I can think of.

Pingu
veteran
Posts: 94
Joined: Sat Apr 16, 2016 3:15 am
Has thanked: 5 times
Been thanked: 18 times

Re: Trying To Rip Voice Clips from Bomberman Generation (GC)

Post by Pingu » Thu May 16, 2019 6:18 am

Can you upload some sample MDT? We may be able to help. :)

SteamyJ
ultra-n00b
Posts: 8
Joined: Wed May 15, 2019 9:44 pm

Re: Trying To Rip Voice Clips from Bomberman Generation (GC)

Post by SteamyJ » Thu May 16, 2019 7:53 am

Sure thing. This link has all the MDT files I found.

https://mega.nz/#F!uWh2BYAY!yx9KYjjiAWZhs8sCpH8VgA

DKDave
n00b
Posts: 15
Joined: Mon May 06, 2019 6:07 pm
Has thanked: 1 time
Been thanked: 2 times

Re: Trying To Rip Voice Clips from Bomberman Generation (GC)

Post by DKDave » Thu May 16, 2019 6:20 pm

I'm not sure if the .mdt files contain any audio. As far as I can tell, the .seb files are the ones that contain the voices.

I've tried experimenting with various GENH audio formats, but can only get very crackly and barely audible voices at best. I can't find the correct audio format for these files, which would make things much easier!

Pingu
veteran
Posts: 94
Joined: Sat Apr 16, 2016 3:15 am
Has thanked: 5 times
Been thanked: 18 times

Re: Trying To Rip Voice Clips from Bomberman Generation (GC)

Post by Pingu » Thu May 16, 2019 9:14 pm

I have a slight feeling that these are headerless DSP files, as just scrolling through the files I can see sample rates, and possibly a coefficient table for it. I just need to figure out how to parse it, as there seems to be several tables before the data starts (Still can't find the data start :P).

Looking at "1000.seb" here are the values I've found thus far:

Code: Select all

0x4 uint32 file size
0xA uint16 # of samples in file (?)
0x1c uint32 Start offset of sample data (probably acts as a base-offset)
EDIT: Was able to manually extract one sample from the SEB and have figured out it is DSP. Now that I know how to convert the data, I have to figure out how to link it all together in order to create a cohesive script.

DKDave
n00b
Posts: 15
Joined: Mon May 06, 2019 6:07 pm
Has thanked: 1 time
Been thanked: 2 times

Re: Trying To Rip Voice Clips from Bomberman Generation (GC)

Post by DKDave » Thu May 16, 2019 11:50 pm

Also what I've worked out in combination with yours:

0x04 - size of file (maybe used for calculating the size of the final entry in table 3, as it doesn't seem to store file lengths)
0x0A - number of entries in table 1
0x0C - offset to 'table 1' (8 bytes per entry)
0x10 - offset to 'table 2' (first entry in this table is the size of the data)
0x14 - offset to 'table 3' (32 bytes per entry) + a chunk of other data, see below
0x18 - offset to 'table 4'
0x1C - offset to start of sample data

What I've managed to work out of table 3 is as follows:

Offset 0x00 - not sure, but if 0xFFFF, this signifies the end of the entries in this table.
Offset 0x04 - offset to the start of this entry's audio data (relative to the start of the audio offset at 0x1C), so first file is at 0x2EC60.
Offset 0x0E - sample rate.
Offset 0x1C - this is an offset to some other data for each entry, relative to start of table 3 - so first entry is at 0x1464 (0x7C0 + 0xCA4).

That should be enough to at least extract the raw data files.

Pingu - did you manage to get your extracted data to play correctly? If so, what did you use? Thanks.

Pingu
veteran
Posts: 94
Joined: Sat Apr 16, 2016 3:15 am
Has thanked: 5 times
Been thanked: 18 times

Re: Trying To Rip Voice Clips from Bomberman Generation (GC)

Post by Pingu » Fri May 17, 2019 3:46 am

I utilized vgmstream. The problem with GENH is that it doesn't provide the ability to provide decoding coefficients. Currently working on a BMS implementation for this. The pointer at address 0x1C of table 3 points to each set of decoding coefficients, which usually is seen as 16 sets of uint16s. They are necessary to implement with the stream for decoding. You are correct with the file offsets, but obviously you can just subtract the current offset from the next offset to get the size, and if it's a case where its the last element , itll utilize EOF as the endpoint.

As well, the uint16 at 0x8 seems to be constant through other SEB so I assume it's some type of version ID. Since there's seems to be no entry count for table three, I guess I'd just read up to the next offset value, and if the next read offset = the 0xFFFFFFFF then break the script...

Pingu
veteran
Posts: 94
Joined: Sat Apr 16, 2016 3:15 am
Has thanked: 5 times
Been thanked: 18 times

Re: Trying To Rip Voice Clips from Bomberman Generation (GC)

Post by Pingu » Fri May 17, 2019 5:22 am

Script is complete. So, here's how to extract and convert these files:

Firstly. download QuickBMS:
http://aluigi.altervista.org/quickbms.htm

Next, download Foobar2000 + the latest vgmstream component (you can find this under "Components" on the main website):
https://www.foobar2000.org/

Finally download this pack of tools, which has a .bms , .vgmstream.txth and an example picture:
SEB.zip
(NOTE! Sometimes windows can be temperamental and rename the txth to "vgmstream.txth" you need to have the dot in front of it so it stays named ".vgmstream.txth")

Firstly, run the BMS script on the SEB archive, which should extract custom .vgmstream files (The GUI can show you how if you're confused)

Next, once you extracted the files to the folder of your choice, place the TXTH in the same folder as the .vgmstream files (See example photo please!!!)

Finally, open up foobar, and from that folder just drag and drop the .vgmstream 's from the folder to the foobar program, and they should be able to play fine and you can convert them.

Cheers!
You do not have the required permissions to view the files attached to this post.

SteamyJ
ultra-n00b
Posts: 8
Joined: Wed May 15, 2019 9:44 pm

Re: Trying To Rip Voice Clips from Bomberman Generation (GC)

Post by SteamyJ » Fri May 17, 2019 10:31 am

Sorry for the trouble but I've never used QuickBMS before. I'm trying different combination of files but I can't seem to get it to extract. I'm sure it's something simple but here's what I have so far.

https://imgur.com/vN5P5s8

Pingu
veteran
Posts: 94
Joined: Sat Apr 16, 2016 3:15 am
Has thanked: 5 times
Been thanked: 18 times

Re: Trying To Rip Voice Clips from Bomberman Generation (GC)

Post by Pingu » Fri May 17, 2019 3:45 pm

You’re opening the input archive wrong. You should first select the *.bms, and then a *.seb (not the vgmstream.txth file!) and then an output folder.

DKDave
n00b
Posts: 15
Joined: Mon May 06, 2019 6:07 pm
Has thanked: 1 time
Been thanked: 2 times

Re: Trying To Rip Voice Clips from Bomberman Generation (GC)

Post by DKDave » Fri May 17, 2019 4:44 pm

Good work, Pingu :-)

DKDave
n00b
Posts: 15
Joined: Mon May 06, 2019 6:07 pm
Has thanked: 1 time
Been thanked: 2 times

Re: Trying To Rip Voice Clips from Bomberman Generation (GC)

Post by DKDave » Fri May 17, 2019 11:39 pm

Just an update:

I have discovered that the MDT files do in fact contain voice samples, contrary to my initial assumption. The normal .seb files seem to be just sound effects.

The MDT files contain various file types, but there is definitely a .seb file structure within each one - I've managed to extract them manually as there doesn't seem to be an easy way to do it. They're in exactly the same format as the stand-alone .seb files, so they're easy to recognise.

For example, in 1110.mdt, the .seb file is at location 0x217C0.

SteamyJ
ultra-n00b
Posts: 8
Joined: Wed May 15, 2019 9:44 pm

Re: Trying To Rip Voice Clips from Bomberman Generation (GC)

Post by SteamyJ » Sat May 18, 2019 2:28 pm

Ah good news! I tried the steps again and got it working this time. This has been invaluable to me and I thank you both for your hard work.

While some voices are here, there are still quite a few that are not contained in these .seb files. Many of the game's bosses and villain voices are still out there. I'm thinking they're still hiding in the .MDT files as DKDave pointed out.

DKDave
n00b
Posts: 15
Joined: Mon May 06, 2019 6:07 pm
Has thanked: 1 time
Been thanked: 2 times

Re: Trying To Rip Voice Clips from Bomberman Generation (GC)

Post by DKDave » Sat May 18, 2019 8:23 pm

I have now extracted all of the voice files from the MDT archives, and all the dialogue seems to be there.

I'm not sure if I'm allowed to attach the .seb files here that are contained within the MDT files - but all you need to do is find them within the MDT files and use the same procedure to convert them as previously.

Let me know if you need any help on getting to them.

SteamyJ
ultra-n00b
Posts: 8
Joined: Wed May 15, 2019 9:44 pm

Re: Trying To Rip Voice Clips from Bomberman Generation (GC)

Post by SteamyJ » Sun May 19, 2019 2:14 pm

How do I extract the .seb files from the .MDT files? I'm not sure how to explore it.

Post Reply