I started working on this tool when I spotted a demand for isolating instruments in PSFs. The idea had also been in the back of my mind for quite a few years, as I knew that a universal solution was somewhat feasible (being that all sequenced PS1 games use Sony ADPCM samples.. at least AFAIK), but I never really got around to it until now.
With that said, this tool doesn't technically isolate instruments, but rather the samples. So, for multi-layered instruments, such as drumkits, the output might be a bit awkward/unexpected, but it ultimately does give you more control.
The initial version of the program was rather 'dumb', and you would actually have to manually specify a start offset (and yeah, only one) for sample data, and it also didn't support minipsf. Now it will automatically detect samples, and minipsf support has been added (the output format can also be set). Simply drop a PSF file onto the program, and it should (hopefully) do the job.
At this point, I'm hoping to get some feedback on stability/bugs, suggestions, and any PSF sets on which it fails somehow. The default settings for the sample detection algorithm (can be changed via commandline) may not be optimal for all sets. But if they can be tweaked further without compromising on other sets, it would be helpful. I have really only tested this with around 10 PSF sets so far, so please do test it on your favorite PSF soundtracks and let me know how/if it works.
Future ideas (any help with these would be greatly appreciated):
* Custom selection of tracks to mute/isolate * Mitigate false positive samples by excluding CPU instructions, strings, etc. from the search space
I just fixed a rather fatal (and embarrassing) mistake in one of the most basic but fundamental functions used in the program: max(). Surprised this doesn't seem to have affected any of the PSFs I tested though.. Nevertheless, I recommend everyone to update. My apologies.
Amazing. This tool is incredible, it doesn't really show how much effort you put into this, since it make it looks so easy. I just dropped a file and it exported 20 tracks, each one with only a sample playing. Can't get any better than that, really! Thank you SO MUCH!