Trials HD .XWB Music Extraction
Posted: Fri Jan 06, 2012 12:11 am
Hey everyone! I've been going through a lot of games extracting music, and most of them are a simple case of discovering the file format, getting the right tool from Google, and extracting. But this one has got me stumped.
I'm trying to extract the music from the Xbox Live Arcade game Trials HD. I transferred the file to my PC, extracted everything with wxPirs, and ended up with a pretty simple structure - a Music.xwb file in a XACT folder, and a few pak files in the data folder. I used QuickBMS with the pak script from Trials 2 SE to extract those and found more xwb files (sound effects, voiceovers, etc) and xsb files, including Music.xsb. So here's what I've tried so far on Music.xwb:
1. unxwb - saw the files inside as WMA, extracted with WAV extension and RIFF/WAVE header, but they won't play in VLC
2. towav - doesn't do anything with Music.xwb, extracted WAV files, or extracted raw files (.dat with unxwb)
3. xactxtract (the German one) - it was hard to find this one, as file-upload.net doesn't work for me, but this didn't work (I don't remember exactly what it did and I don't want to try again because AVG kept complaining about it)
4. xactextract (http://stryder.rev-crew.info/blog/2011/ ... xwb-files/) - this initially didn't work because Music.xwb is big endian and the program was designed for a PC game (which is little endian). After messing around with the source code a lot, I got it to read the header version and signature, as well as the proper number of files, but they're all flagged as 1 (XMA). When I remove the check for format 3 (xWMA) the program crashes with a call to abort().
5. xWMAEncode - needs a valid xWMA header to work, and only xactextract can create one
6. xmaencode - doesn't work on the raw .dat files and runs forever on the .wav files (which end up just being loud static)
7. xma_test (xma_parse) - complains about skip bits not matching previous packet overflow on both .dat and .wav files
8. EkszBox - freezes when trying to open Music.xwb
9. VGMToolBox - I did some messing around the XMA converter but couldn't get anything to work
The Music.xsb seems to be useless because there aren't any filenames in there, but I'm sure it has some purpose. Also, all of the other xwb's (found in the pak files) have files seen as XMA in unxwb, and towav spit out playable wav files for every xwb with no trouble. I haven't tried it, but those xsb appear to have filenames as well.
So I'm at a loss as to what's different about Music.xwb. I still can't tell if the files inside are XMA or xWMA. Anyone have any ideas?
P.S. Here's the xwb and xsb files I'm working with: [redacted]
I'm trying to extract the music from the Xbox Live Arcade game Trials HD. I transferred the file to my PC, extracted everything with wxPirs, and ended up with a pretty simple structure - a Music.xwb file in a XACT folder, and a few pak files in the data folder. I used QuickBMS with the pak script from Trials 2 SE to extract those and found more xwb files (sound effects, voiceovers, etc) and xsb files, including Music.xsb. So here's what I've tried so far on Music.xwb:
1. unxwb - saw the files inside as WMA, extracted with WAV extension and RIFF/WAVE header, but they won't play in VLC
2. towav - doesn't do anything with Music.xwb, extracted WAV files, or extracted raw files (.dat with unxwb)
3. xactxtract (the German one) - it was hard to find this one, as file-upload.net doesn't work for me, but this didn't work (I don't remember exactly what it did and I don't want to try again because AVG kept complaining about it)
4. xactextract (http://stryder.rev-crew.info/blog/2011/ ... xwb-files/) - this initially didn't work because Music.xwb is big endian and the program was designed for a PC game (which is little endian). After messing around with the source code a lot, I got it to read the header version and signature, as well as the proper number of files, but they're all flagged as 1 (XMA). When I remove the check for format 3 (xWMA) the program crashes with a call to abort().
5. xWMAEncode - needs a valid xWMA header to work, and only xactextract can create one
6. xmaencode - doesn't work on the raw .dat files and runs forever on the .wav files (which end up just being loud static)
7. xma_test (xma_parse) - complains about skip bits not matching previous packet overflow on both .dat and .wav files
8. EkszBox - freezes when trying to open Music.xwb
9. VGMToolBox - I did some messing around the XMA converter but couldn't get anything to work
The Music.xsb seems to be useless because there aren't any filenames in there, but I'm sure it has some purpose. Also, all of the other xwb's (found in the pak files) have files seen as XMA in unxwb, and towav spit out playable wav files for every xwb with no trouble. I haven't tried it, but those xsb appear to have filenames as well.
So I'm at a loss as to what's different about Music.xwb. I still can't tell if the files inside are XMA or xWMA. Anyone have any ideas?
P.S. Here's the xwb and xsb files I'm working with: [redacted]