Unpacking Saints Row 2 PS3 Packages

I'm partway through making an audio replacement mod for Saints Row 2 using files unpacked from the X360 version. Same vein as the High Quality Radio Mod, but for the whole game.

I only recently realised that there was a PS3 version of the game, and it may have even higher quality audio. Thing is, I haven't had any success unpacking its .vpp_ps3 files. Both the original and updated versions of Minimaul's tools crash when trying to extract, and I haven't been able to find any alternatives.

Has anyone had any luck unpacking these files before? Or know of any alternative tools I can try?

Cheers!
 
.vpp_ps3 is same to .vpp_xbox2 format and can be opened with Minimaul's tools. All radio stored in .sack, what looked as XWS sound bank, but it's not. For extracting you can copy a music file from "MSF0" signatue and convet to AT3 by use this http://forum.xentax.com/viewtopic.php?p=43568#p43568
About sound quality. Maybe it's decoder problem, but music is LITTLE slower
CultureClub_KarmaChamel.at3
PS3 - 4:17
X360 - 3:56
But i can't hear any speed difference. PS3 audio also more "compressed"

UPD. I convert AT3 to WAV. Now lenght is same (3:56)
 
Last edited:
Wow, thanks for your informative post N69! By the way, thank you for your radio mod and tutorial on replacing audio. They've helped me immensely, and I wouldn't have known it were even possible to do if you hadn't posted them.

Minimauls tools had been crashing for me immediately when opening ps3_audio_sacks.vpp_ps3, so hearing that you used it without trouble indicated my file was wonky. I sourced it an alternate way and it worked better - I can now extract a fair amount of ps3_audio_sacks.vpp_ps3 - but it's still not great. Now it crashes when extraction reaches sr2_voc_bf.sack, so I still need to find another solution. Did you encounter any of these problems?

Gotta admit, I'm also having trouble splitting the .sack files into audio. I understand the link you posted being a script for (I assume) QuickBMS, but I think I'm getting the steps wrong. I take the script, open it in QuickBMS, choose a .sack file (let's say sr2_activity_cutscenes.sack), then choose an export directory. Problem is, it gives an error quoting that the signature doesn't match. Instead of the .sack file giving signature "MSF", it gives "P3A", and can't extract anything. I've searched for a good while trying find anything about P3A, but keep coming up empty.

Is there an important step I'm missing?
 
Last edited:
No, no. You need a HEX editor (like HxD). Just look a MSF0 signature, copy this part and past into new. Use MSFtoAT3.bms for convert into AT3.
 
I only recently realised that there was a PS3 version of the game, and it may have even higher quality audio. Thing is, I haven't had any success unpacking its .vpp_ps3 files. Both the original and updated versions of Minimaul's tools crash when trying to extract, and I haven't been able to find any alternatives.
The updated tools make absolutely no effort to support console files - this is an area we don't really like covering because modding the games themselves on console is very close to piracy. Extracting data is a bit different, but it's a very very grey area.
 
The updated tools make absolutely no effort to support console files - this is an area we don't really like covering because modding the games themselves on console is very close to piracy. Extracting data is a bit different, but it's a very very grey area.
Makes sense, definitely a fair reasoning. Thanks for the clarification!
 
Makes sense, definitely a fair reasoning. Thanks for the clarification!
I had this same idea when I asked one of the Volition devs about the audio quality, I recommended using the PS3's files if they failed to find the source audio files. When I popped in my SR2 disc, the file setups were extremely similar to the Xbox and PC versions so I thought it may work if I could find a way to extract them properly. Which is why I had tried converting them and kept hitting wall after wall. I had gotten to the point where I was able to extract the sack files, but I couldn't extract their contents, I figured they weren't similar to Xbox sound banks since this is a Sony device after all but I knew they were obviously a similar container and that's when I finally stopped for a while, I don't know much about the PS3's audio designs and formating when it comes to games, okay with the PSP since it's super easy to hack and open the contents of the games but that's as far as my Playstation sound knowledge goes besides MiniDiscs and Walkman formats, I also have no idea where my files are that I was working with so I'd probably need to pop in my copy of SR2 for PS3 and do it from scratch again but I'm glad N69 was able to clear up that issue I was also having. Once you get them extracted as AT3 files you can convert them pretty easily, if they're the same as the PSP's AT3 files, which I believe they are. There's a lot of information on AT3 decoding and converting in the PSP homebrew and development scene. Used to just use foobar and the VGMStream plugin to convert music from PSP games to MP3's, probably the most simple way. Also, you'll probably want to convert them to MP3 files or something similar first since AT3 files from the PS3 and PSP are usually only upwards of 132KBPS (Which I think is the max bit rate the AT3+ format uses on PSP and PS3.) so you aren't wasting time and space on converting them to something like lossless WAV files, or get a codec pack that allows for compressed WAV's and set it as default so you can easily manage them for converting over to SR2 on PC and skip the needlessness of having to convert them multiple times.

Also, have you gotten any further in your quest? I'm hyper interested in this as the audio is one of the biggest things that kills the PC version for me, next to the horrible gamepad button layout (A/X for gas and brake...seriously? Almost being impossible to drive and shoot because of needing to aim with the right stick and use the gas button. And on the Bulldog with the machine gun, the left trigger uses the E-brake and fires the gun at the same time...making it virtually unusable.) that and the hitching while driving, prefetch fix never works for me so I'm stuck with that issue I suppose. Unless Volition is able to fix some of the issues like they said they'd try to. Also, the worst part about the audio, not only does it sound terrible but it's inconsistent, some songs are way higher quality sounding than others and some sound like they were ran through an EQ that ups the low frequencies and exported at 26KBPS and then played over an AM transmitter and re-recorded. It's terrible and I don't know how CD Projekt even messed them up so badly, neither did that Volition dev, Ellix, I talked to.
 
Also, have you gotten any further in your quest?

It's basically finished, I'm just having difficulty repackaging audio.vpp_pc. Even repackaging the original unaltered files isn't working for me. Haven't found a solution yet, but hopefully I'll have time to dig back into it soon.
It's terrible and I don't know how CD Projekt even messed them up so badly

Yep, I hear that. I've put what I found while making the mod below, but the tl;dr is that the software used to build the audio banks was frustrating, bad choices were made about sample rate and compression, and the PC audio engine was poorly implemented.

Details are in spoiler tags because it's a little bit long.
First, the game doesn't seem to like the sound card settings being at 48000 Hz. Changing to 44100 or 96000 removes a lot of the distorted 'clipping' noise. The opening cutscene dialogue is a good test for this.

Second, the engine does not like interpreting files made with stereo audio. Positional audio is fine - a pedestrian NPC to your left will make sounds from your left speaker and so forth. Audio files made to play in stereo though - think music, ambience, or cutscenes - will only ever play in mono. This results in an uncomfortable sounding mix as everything becomes busily squashed into centre stage. Take standing in the street - ambient noise like birds chirping or ships honking are meant to come from all around you, but instead play flatly from the middle. Main cutscenes are playing four files at once - a stereo for left/right, a mono for centre, a mono for sub, and a stereo for rear left/right. All this is squished together and creates an overblown sound to the dialogue; all these sounds overlap and throw out any positioning or subtlety to the mix.

Both 360 and PC audio banks look to have been made using XACT, a Microsoft program designed to 'simplify' making cross-platform audio. It basically takes all your audio, converts it into platform-appropriate formats, then assembles it as one big file. Works pretty alright for 360, but exporting for PC has quite a few quirks. The final banks for SR2 PC used two different compression types - ADPCM and WMA.

WMA is smaller and better, but XACT will only export it when the source sample rate is at 22050Hz or 44100Hz, and the track length is over 1.998 seconds. Much audio has had its sample rate cut too low in order to make it work. Even then it has been done wrong, with many resulting cuts going way lower than needed and sounding even worse. The radio stations are the best example of this. Some WMA files are perfect though, such as the main cutscene audio. These rare files sound exactly how the PC audio should have been - crystal clear stereo with no audible compression and a much higher bitrate than the 360 audio. Such a pity that the game engine itself doesn't know how to handle it.

ADPCM in XACT isn't as picky, but doesn't compress filesize as small and adds noticeably bad grainy noise to the audio. Most NPC barks and short audio is in this format. Many other files are converted to ADPCM simply because they were the wrong sample rate to work with WMA. Such errors are inconsistent, strange, and just seem lazy to not have been done properly.

Another option is available but wasn't used - PCM. This is uncompressed audio, full quality but a huge file size.

These are just a few things off the top of my head that show why the PC audio is so weird. For the mod, I've chosen the better quality between PC and 360, the vast majority being 360. Generally PC audio was badly mistreated, with most having the sample rate cut way too low, or bad noise from ADPCM. Even though a lot of 360 audio has compression artifacts, it overall sounds much better.
 
It's basically finished, I'm just having difficulty repackaging audio.vpp_pc. Even repackaging the original unaltered files isn't working for me. Haven't found a solution yet, but hopefully I'll have time to dig back into it soon.


Yep, I hear that. I've put what I found while making the mod below, but the tl;dr is that the software used to build the audio banks was frustrating, bad choices were made about sample rate and compression, and the PC audio engine was poorly implemented.

Details are in spoiler tags because it's a little bit long.
First, the game doesn't seem to like the sound card settings being at 48000 Hz. Changing to 44100 or 96000 removes a lot of the distorted 'clipping' noise. The opening cutscene dialogue is a good test for this.

Second, the engine does not like interpreting files made with stereo audio. Positional audio is fine - a pedestrian NPC to your left will make sounds from your left speaker and so forth. Audio files made to play in stereo though - think music, ambience, or cutscenes - will only ever play in mono. This results in an uncomfortable sounding mix as everything becomes busily squashed into centre stage. Take standing in the street - ambient noise like birds chirping or ships honking are meant to come from all around you, but instead play flatly from the middle. Main cutscenes are playing four files at once - a stereo for left/right, a mono for centre, a mono for sub, and a stereo for rear left/right. All this is squished together and creates an overblown sound to the dialogue; all these sounds overlap and throw out any positioning or subtlety to the mix.

Both 360 and PC audio banks look to have been made using XACT, a Microsoft program designed to 'simplify' making cross-platform audio. It basically takes all your audio, converts it into platform-appropriate formats, then assembles it as one big file. Works pretty alright for 360, but exporting for PC has quite a few quirks. The final banks for SR2 PC used two different compression types - ADPCM and WMA.

WMA is smaller and better, but XACT will only export it when the source sample rate is at 22050Hz or 44100Hz, and the track length is over 1.998 seconds. Much audio has had its sample rate cut too low in order to make it work. Even then it has been done wrong, with many resulting cuts going way lower than needed and sounding even worse. The radio stations are the best example of this. Some WMA files are perfect though, such as the main cutscene audio. These rare files sound exactly how the PC audio should have been - crystal clear stereo with no audible compression and a much higher bitrate than the 360 audio. Such a pity that the game engine itself doesn't know how to handle it.

ADPCM in XACT isn't as picky, but doesn't compress filesize as small and adds noticeably bad grainy noise to the audio. Most NPC barks and short audio is in this format. Many other files are converted to ADPCM simply because they were the wrong sample rate to work with WMA. Such errors are inconsistent, strange, and just seem lazy to not have been done properly.

Another option is available but wasn't used - PCM. This is uncompressed audio, full quality but a huge file size.

These are just a few things off the top of my head that show why the PC audio is so weird. For the mod, I've chosen the better quality between PC and 360, the vast majority being 360. Generally PC audio was badly mistreated, with most having the sample rate cut way too low, or bad noise from ADPCM. Even though a lot of 360 audio has compression artifacts, it overall sounds much better.
Yeah, I couldn't figure that out myself either, didn't have the time then or now either. Basically, XACT "works", it doesn't work well, but it "works" and it made Xbox to PC ports easier at the time though M$ didn't put much work into the way their tools do platform porting.

As for all those issues you posted, none of that surprises me and yeah, ambience through the center speaker is extremely annoying. When I had hooked up my PC to my Yamaha RX-V363 just to listen to music and later played SR2 just to goof off I noticed some of the wonkiest things, my receiver picked it up as a Prologic II source (Which happens when it's only a stereo source.) and when Men At Work came on it started throwing the sounds all over the different speakers and the bass was randomly there and not there and all peds audio was through the center speaker only and my player's voice was in the rears. It was wild and should not have been happening. I seriously don't get how they messed it up that badly. They could have just left the files alone and exported them with XACT's tools to the needed PC formats. I honestly think Volition probably could have pulled a better port out of their ass with less experience. It seems the peeps at CDPR were completely lost with their port. Couldn't they have just ran the audio through something along the lines of Audacity and export with a higher sample rate? Sure it won't audibly change anything since it was originally recorded at so and so sample rate but it would at least show as that sample rate unless XACT would flag it as false and freak out, I don't know.
 
Back
Top