[ALPHA Release] SR2 Improved Audio

Which sounds better in which category? Please choose one from each category

  • Homie/Gameplay Voices - V0.01

    Votes: 0 0.0%

  • Total voters
    5
PLEASE NOTE: All ingame audio sliders should be set to 50%. Additional distortion will be introduced if set to other values. Ideally use the dial on your speakers with PC volume set to 100 to minimize distortion, but if you need to use a digital control use your computer's mixer.

CURRENT STATUS: music4.vpp_pc - Main cutscenes, ambient(store/club) music loops, Ingame voices for Playa and homies

ADDED V0.02 - Should provide less muddy audio in cutscenes, gameplay voices, and store music loops. The cutscene audio will probably be a bit more scratchy, and there are still volume leveling issues in the gameplay voices and ambient music. I want feedback on which you think is better after having tried the mods, by voting in the poll and by replying to the thread. If you think neither are an improvement, that's useful information as well. I want the process 100% locked down before I commit to doing the rest of the audio, which will likely take weeks to do.


So, I've been playing around with the SR2 audio files and I think I've managed to produce something worthwhile. I'm still trying to refine the process, but wanted to put out what I have. Music4.vpp_pc covers the main story cutscenes (though many still draw some sounds from the foley banks in audio.vpp_pc,) player gameplay voices, and gameplay voices for some homies, gang members and other NPCs. I started here because the horrible sounding cutscenes were one of my biggest pet peeves with the game. I plan to expand to the other soundbanks once I'm confident with my methods, but there's a lot of work to do still and I'm not exactly happy with the quality yet.


VIDEO EXAMPLE: 3 cutscenes played in vanilla, then with the mod:

Drawbacks -- unfortunately as a result of the resampling I have to do, some fidelity of the audio is being lost. Same for having to work from the already compressed banks contained in the game rather than the original masters. Some of these audio files have been compressed/resampled 4 or 5 times before you hear them, giving them a somewhat muddy sound. I'm effectively trying to compensate for the weaknesses of the game's internal audio player by resampling the audio, when the smarter move would be to just replace the borked audio player itself. Unfortunately I believe that's built into the .exe. There are some lines that are obviously too quiet (Many of the gameplay voice lines fall into this category.)

The game has also been crashing a fair bit during testing, but I have no way of knowing if that's Saints Row 2 being its wonderful self or if the mod is actually reducing stability. Feedback in this area would be appreciated. Currently the gameplay voices have double the vanilla sample rate which could potentially be causing issues.

Google Drive mirror added, but a staff member can add a site mirror if they want. Worth noting this is definitely not intended to be the final version of the mod, mostly just looking for feedback at this stage.

SEE BOLD AT TOP BEFORE DOWNLOADING
V0.01


V0.02


Installation instructions: Extract the archive and replace music4.vpp_pc in the game's root directory. (On steam, rightclick game in library list -> properties -> local files -> browse...) Note that you may want to BACK UP the original music4.vpp_pc somewhere, or just rename it music4.vpp_pc.bak, if you want to restore it later. Remember, this is a WIP mod and less than perfect.

Remember to also grab N69's High Quality Radio Mod if you haven't! -> https://www.saintsrowmods.com/forum/threads/high-quality-radio-mod.9515/


Technical info:
The 'secret sauce' here is ISO 908 De-emphasis. It helps to dampen the scratchy treble region that causes S and TH sounds to sound like cheese graters on your eardrums, as well as reducing a lot of the treble overemphasis 'cheapening' what should be bassier sound effects like engine roars and building collapses.

V0.01

SR2_CUTSCENES.xwb: Extracted from 360 files using towav.exe -> used SoX to resample from ~44.1kHz 16bit to exactly 44.1kHz 16bit -> used SoX to apply ISO 908 De-emphasis -> Packed in parts using XactBld3 (Aug 2008) -> parts assembled with 010 hex editor

SR2_VOC_SP.xwb: Extracted from 360 files using towav.exe -> used SoX to resample from ~24kHz 16bit to 48kHz 16bit -> used SoX to apply ISO 908 De-emphasis -> Packed using XactBld3 (Aug 2008)

MUS AMBIENT.xwb: Extracted from 360 files using towav.exe -> used SoX to resample from ~24kHz 16bit to 48kHz 16bit -> used SoX to apply ISO 908 De-emphasis -> Used SoX to resample from 48kHz 16bit to 24kHz 16bit -> Packed in parts using XactBld3 (Aug 2008) -> parts assembled with 010 hex editor

V0.02

SR2_CUTSCENES.xwb: Extracted from 360 files using towav.exe -> Used 010 editor to change header sample rate to 44100Hz on all files -> used SoX to apply ISO 908 De-emphasis -> Packed in parts using XactBld3 (Aug 2008) -> parts assembled with 010 hex editor

SR2_VOC_SP.xwb: Extracted from 360 files using towav.exe -> Used Audacity to apply ISO 908-based EQ curve -> Packed using XactBld3 (Aug 2008) (this was EXTREMELY painful as Audacity crashes quite easily with more than ~2k files)

MUS AMBIENT.xwb: Extracted from 360 files using towav.exe -> Used Audacity to apply ISO 908-based EQ curve -> Packed in parts using XactBld3 (Aug 2008) -> parts assembled with 010 hex editor

V0.03 [IN PROGRESS]

Experimenting with other audio processors. foobar2000's filter is up next. It's apparently based on an improved implementation as the SoX filter, and doesn't care about sample rate. So far this is very promising. I plan to keep experimenting with it, but I'm inching closer to console quality audio. I don't quite think I'll reach that point since the PC version's audio player seems hopelessly FUBAR, but I'll do what I can to counteract the distortions it introduces. Still working on this as of the most recent edit, but hit some unexpected issues. Regression testing shows mid-mission dialog is horrendously distorted. Working on a fix. I've started running the 360 version under Xenia to compare against.

ISSUES: The current main issues are that SoX can only apply the de-emphasis filter to 44.1kHz or 48kHz audio, requiring a resample pass to that rate (and possibly back if the resultant files are too large to be packed back into a wavebank, as was the case with MUS AMBIENT.) Something else that can apply the filter to arbitrary sample rates would remove some of the conversion passes, but I haven't been able to find much of anything on the topic. Likely would have to be an EQ curve and much slower per-file, as I suspect the SoX implementation is doing something bit-hacky due to its speed and strict sample rate requirements. Moreover, SoX clips/dithers some samples with every resample pass on most files, which leads to a further reduction in quality even beyond the rounding errors introduced when resampling.

The other issue is that the process of extracting the audio demonstrates rounding errors, in particular with the sample rate. The shorter the file, the further it will be from a standard rate (22.05, 24, 44.1, or 48kHz)
 
Last edited:
Glad it's working alright. I've had some other stuff going on in my personal life so it's been backburnered a bit, but I still do intend to finish it at some point. I think I've found a way to reduce the muddiness in the audio.
 
This is great to see! I'm sure many members of the community(including myself) will be happy when it's finished and out of alpha.
 
Just wanted to give an update, I'm hitting a number of roadblocks, especially when comparing to the xbox version. A big factor I'm finding is that the xbox version plays cutscenes in stereo, which I've been unable to replicate so far even when ripping audio from the xbox ISO.

Moreover, I think I'd have to write my own audio filters to get to the level of quality I'd want for non-cutscene audio, which is currently beyond my skill level.

I'm more convinced than ever that the issue is primarily bugged playback by the game engine, rather than any issue with the audio itself, meaning whatever I can do for audio quality by filtering/resampling is going to be limited.

I still plan to release at some point, but at the moment I'm chipping away on the weekends trying to figure out what to do.

I may end up releasing a cut-down version with just the cutscene audio if I can't mitigate enough quality loss on the non-cutscene audio.
 
Top