Releases of OpenMPT component (kode54 fork)

0.5.4 current version, released on: 2020-12-02

  • AMS: An upper bound for uncompressed sample size is now established to avoid memory exhaustion from malformed files.
  • DMF: Support early format beta versions (in particular versions 1-4).
  • MED: Also use octave wrapping in 8-channel mode for MMD0/MMD1 modules.
  • MED: If 8-channel mode is activated, ignore BPM mode.
  • MED: Emulate tempo commands F01 and F02 quirk.
  • MED: Tempo commands below 32 BPM were interpreted as tempo slides.
  • IMF: Instrument sample mapping was off by one octave, notable in the guitar part of Astaris by Karsten Koch.

0.5.3 released on: 2020-10-25

  • Updated libopenmpt to version 0.5.3, with one security fix and several minor changes

0.5.2+1 released on: 2020-09-13

  • Now supports setting the playback sample rate automatically in foobar2000 1.6.1 and newer

0.5.2 released on: 2020-08-31

  • Updated libopenmpt to version 0.5.2, with minor changes

0.5.1 released on: 2020-07-26

  • MPTM: Qxy now retriggers OPL notes if new compatibility flag is set in file.
  • MPTM: Bring back old OPL note end-of-envelope behaviour for files made with OpenMPT 1.28.
  • IT: Global volume slides with both nibbles set preferred the “slide up” nibble over the “slide down” nibble in old OpenMPT versions, unlike other slides. Such old files are now imported correctly again.
  • IT: Fixed an edge case where, if the filter hit full cutoff / no resonance on the first tick of a row where a new delayed note would be triggered, the filter would be disabled even though it should stay active. Fixes by maddie.
  • OXM: Some sample loops were not imported correctly.
  • XM: Out-of-range arpeggio clamping behaviour broke in OpenMPT The arpeggios in Binary World by Dakota now play correctly again.
  • S3M: Support old-style sample pre-amp value in very early S3M files.
  • S3M: Only force-enable fast slides for files ST 3.00. Previously, any S3M file made with an ST3 version older than 3.20 enabled them.
  • S3M: Only apply volume and middle-C speed on instrument change if the new sample slot has sample data.
  • MOD: Fix an infinite loop in GamerMan by MrGamer by playing non-ProTracker MODs more like FT2 would.
  • M15: Improve tracker detection heuristics to never assume SoundTracker 2.0 if there is a huge number of Dxx commands, as that is a definite hint that they should be treated as volume slides. Fixes Monty On The Run by Master Blaster.
  • MO3: Support OPL patches in MO3 files created from MPTM and S3M.
  • DBM: If a global pattern command would be lost because both effect commands in a cell would have to go into the regular effect column (e.g. a speed and a tempo command), the lost command is now attempted to be written into a different cell on the same row. Fixes “Party-Question V” by grogon.
  • mpg123: Update to v1.26.3 (2020-07-16).

stb_vorbis: Update v1.20 commit b42009b3b9d4ca35bc703f5310eedc74f584be58 (2020-07-13).

0.5.0 released on: 2020-05-25

  • Component is now built and linked with Visual Studio 2019, for Windows 7 or newer, using dynamic runtime, and enabling SSE2.
  • OggMod compressed FastTracker 2 XM (OXM) modules are now supported.
  • Greatly improved MED import. Synthesized instruments are still not supported but support was added for: Multisampled instruments, delta samples, more pattern commands, Hold and Decay, VSTi and MIDI output, multiple songs and many other small changes.
  • Improved OPL channel allocation when more than 18 notes are active, so that channels that have completely faded out are prioritized over channels that have already been released but have not faded out yet.
  • Interactively triggering an OPL instrument could cause the first pattern channel to no longer be played back correctly.
  • Fix some inaccuracies in OPL emulator.
  • Fix overflow of OPL amplification happening at a synth volume level of 510.
  • End-of-sample pop reduction of surround channels was applied to front channels instead, causing a pop on the front channels instead of removing it on the back channels.
  • IT: Disable retrigger with short notes quirk for modules saved with Chibi * Tracker, as it does not implement that quirk.
  • IT: Instrument and sample panning should not override channel panning for following notes.
  • IT: SBx is now prioritized over Bxx commands that are to the left of it.
  • IT: Duplicate Check Type “Sample” should only be applied if the instruments match, too.
  • IT: Duplicate Check Type “Note” should compare pattern notes, but it was comparing the new pattern note against the old translated note.
  • IT: Various fixes for envelope resetting.
  • IT / S3M: When combining SBx and EEx effects, don’t skip the first row of the loop like in FastTracker 2.
  • S3M: Empty pattern commands now affect effect memory as well.
  • S3M: Offset beyond loop end wraps around to loop start like in Scream Tracker 3 + GUS (previously it just keep playing from the loop start, which is neither what GUS nor Sound Blaster drivers do).
  • S3M: Notes cannot be retriggered after they have been cut.
  • S3M: Fix portamento after note cut (fixes antediluvian_song.s3m).
  • S3M / MOD: Previous note offset is no longer used for retriggered notes if there was no instrument number next to the Qxy effect.
  • MOD: Sample swapping now also works if the sample that is being swapped from does not loop. Swapping to a non-looped sample now stops playback once the swapped-from sample reaches its (loop) end.
  • MOD: Fix early song ending due to ProTracker pattern jump quirk (EEx + Dxx on same row) if infinite looping is disabled. Fixes Haunted Tracks.mod by Triace.
  • MOD: Previous note offset is no longer used for retriggered notes if there was no instrument number next to the E9x effect.
  • MOD: Vibrato type “ramp down” was upside down.
  • XM: If a file contains patterns longer than 1024 rows, they are now clamped to 1024 rows instead of 64 rows.
  • XM: Do not reset note-off status on portamento if there is no instrument number.

0.4.11 released on: 2019-12-23

  • Updated libopenmpt to version 0.4.11 with bug fixes