Skip to content

Releases: PsyCommando/ppmdu

ppmdu statsutil 0.23.3a

25 Feb 21:04
9731ea1
Compare
Choose a tag to compare
Pre-release

Added support for WiiU virtual console roms of Explorers of Sky. Plus some extra config entries.

ppmd_audioutil_0.37

14 Dec 09:10
312998c
Compare
Choose a tag to compare
  • Fixed bug #39
  • Now music from games that don't have a main bank file export to one sf2 per midi by default!
  • -blobpath switch now can work with directories or be used several times to add more blob file to be processed.

ppmd_statsutil 0.23.2a

10 Sep 02:02
Compare
Choose a tag to compare
Pre-release

A patch update to fix error reporting not working at all in 0.23.1!
Added a compiler report file to make it easier to see the actual result of the script compilation.

ppmd_kaoutil_0.42

25 Aug 02:40
Compare
Choose a tag to compare
  • I actually forgot to release this last November.. It fix a bit issue with the parameters passed to it. In version 0.41 it was almost completely useless. But now it seems to be working correctly

ppmd_statsutil_0.23.1a

25 Aug 02:21
Compare
Choose a tag to compare
Pre-release
  • Fixed issue #33

ppmd_statsutil 0.23a

23 Aug 03:04
Compare
Choose a tag to compare
ppmd_statsutil 0.23a Pre-release
Pre-release
  • Added WIP script decompilation/compilation for explorers of sky only.
  • Changed completely how the command line works.
  • NOTE randomly generated dungeon data editing has been postponed to next release. Because its not being very cooperative..
  • Added some more bugs.

ppmd_statsutil 0.22a

19 Jun 03:51
Compare
Choose a tag to compare
ppmd_statsutil 0.22a Pre-release
Pre-release
  • Fix for issue #26 which would result in SIR0 files being incorrectly padded, and the game failing to properly read from the level up list in the exported m_level.bin file.
  • Please Note: Optimization had to be disabled, because of a bug in the VS2015 compiler which crashes the whole thing when compiling statsutil. So the executable is a bit bigger, and a bit slower than it should really be.. (I'm seriously considering porting to mingw.. because I'm getting sick of crippling MSVC compiler bugs)

ppmd_audioutil_0.36

02 May 02:39
Compare
Choose a tag to compare
ppmd_audioutil_0.36 Pre-release
Pre-release
    - Fixed "-nobake" generated sounfonts from sounding horribly off-pitch. Because I forgot to uncomment
      the line assigning the root key to each samples while I was testing stuff.
    - Removed the sample length legality check when building a soundfont. So really short samples
      aren't mangled anymore.

    + I'm still desperatly looking for help with the envelope duration calculations. Because the formula:
        lround( 1200 * log2(durationinsecond) )
      doesn't seems to give me accurate envelope phase durations, and that even considering that soundfont
      envelopes are logarithmic.
    + Still also trying to fix pitch issues with some samples.. But I got nothing..

ppmd_audioutil_0.35

30 Apr 20:51
Compare
Choose a tag to compare
ppmd_audioutil_0.35 Pre-release
Pre-release
  • Added experimental support for ripping matched smd/swd pairs from any non-compressed or encrypted file format.
    Just use the :

    -blobpath "path/to/file/containing/the/swd/and/smd/containers.whatever"

    switch at the commandline. Its going to be very buggy, so keep that in mind. If it doesn't work, just rip each SWD and SMD individually and place them in their own files, and use the other commandline options!

  • Added support for SWD and SMD pairs stored individually into SIR0 containers/files
    (The file extension is usually arbirtrary, so check the 4 char code for SIR0).
    Use the switch:

    -bgmcntpath "Path/to/Directory" "FilextensionToLookFor"

    Just specify what the file extension all SIR0 files have as the second param, and the directory path as first. No need to put a dot or anything before the file extension. Its kind of redundant because the blobscanner can do the same thing, but at least this one can handle the SIR0s in batches unlike the blobscanner method above.

  • Tweaked some DSE events, and finally properly handles the modulation event, which I forgot about properly implementing for about 6 months now..

  • Made a lot of fixes and tweaking to everything.

  • Added a verbose option to cut on log size.
    The formatting is still pretty terrible, but it does the job.

  • Fixed a MASSIVE brainfart on my part. Samples weren't being correctly collected when doing a batch export.
    As a result, only the first samples were collected correctly. Some games which assigned a lot of samples slots were mostly spared from the issue. But it caused massive issues in other games!

      => KNOWN BUGS:
          - All PCM16 and possibly PCM8 samples exported to a soundfont will have the wrong pitch:
              That's due to me having to loop the samples when they're shorter than the shortest allowed samples 
              length for looping them according to the soundfont specification. And of course, "baking" the volume 
              envelope in the samples further worsen the issue.
              I'll have to see how the NDS loops PCM16 and PCM8 samples, because it doesn't appears to have this issue..
          - Samples don't have LFO effects applied to them:
              The soundfont format only supports 2 LFOs, while DSE supports 4. Not to mention,
              the oscillator's frenquency range is much wider on the NDS than in the soundfont format,
              so the effects are just impossible to convert to something equivalent.
              And to top it off, the NDS's resampling algorithm or the way the sample points are processed is
              particular because it gives a sort of ringy effect in some cases. And the people writing music
              for the games using DSE seems to have taken advantage of that. So it doesn't sound the same at all..
              Additionally, the depth parameter for the LFOs in DSE are an arbirtrary signed 16 bits integer value.
              So its hard to guess what it represents. But its definitely not a logarithmic value like the ones used in
              the sounfont format..
              And, the DSE format supports many more oscillator waveforms than soundfont can.
    
                  =>tl;dr: Essentially, sounfonts will never be an accurate portrayal of the original music, 
                           because its literally impossible because of limitations in the sounfont format.
                           DLS isn't an alternative, as its almost just as limited. SFZ is seldom used,
                           and I don't know any players that supports those, so that's out of the question too.
                           I will make a Foobar2000 plugin instead I think.
    

ppmd_audioutil 0.20

07 Dec 11:10
Compare
Choose a tag to compare
ppmd_audioutil 0.20 Pre-release
Pre-release

New release of the audio tool for PMD2 and other games using the DSE NDS audio driver.

  • Added Support for generating a conversion info XML file from a set of DSE containers. It means no more adding the data for every single programs by hands, the program writes it all and you can just edit the values as seen fit!
  • Now renders the samples' volume envelope directly into the sound samples to give a much more accurate result.(with some mild artifacts for some tracks) The soundfont generated with this method is much larger! To use the previous method, you can simply put a command line option as specified in the readme.
  • SYNTH WAVE SOUND SAMPLES, POSSIBLY OTHERS, ARE STILL COMPLETELY OFF-PITCH. Sorry, but I can't find a solution right now, I'm not an audio engineer, I'm an audio noob. So I'll release the tool in its current state, since this release is long overdue !
  • Currently, XML + samples export is broken. Import is not yet implemented. So avoid using those!
  • A bunch of bugfixes, and an extra dose of validation so even professor layton can't crash the program with its missing references! (Exporting prof layton's soundtrack needs a bit more involvement and manual work on your part though.. Not gonna describe the process here. But try extracting the common.darc file, and feeding the smds and swds to audioutil. The main bank is named BG.SWD btw.)
  • MOAR BUGS! I know you guys love those. They're just really well hidden, and you have to find them by accident :P