Releases: libxmp/libxmp
Releases · libxmp/libxmp
libxmp 4.6.0
Checksums (sha256):
2d3c45fe523b50907e89e60f9a3b7f4cc9aab83ec9dbba7743eaffbcdcb35ea6 libxmp-4.6.0.tar.gz
71a93eb0119824bcc56eca95db154d1cdf30304b33d89a4732de6fef8a2c6f38 libxmp-lite-4.6.0.tar.gz
Changes in version 4.6.0 (2023-06-15):
- Fix linkage with gcc when versioned symbols and LTO are enabled.
- Cmake build system support.
- Several build system updates.
- Fixed numerous defects found by fuzzing.
- Cleanups and refactoring of platform-specific code.
- Multiple code cleanups.
- Add Astroidea XMF format loader.
- Implement S3M and IT mix volume.
- Add IT MIDI macro filter effects support.
- Fix for IT filter cutoff 127 on new note behavior.
- Add missing IT filter clamp to mixer loops.
- Fix IT duplicate note check to use the key prior to transpose.
- Fix multiple IT playback bugs affecting, e.g. Atomic Playboy.
- Fix IT tone portamento and offset.
- Fix reverse sustain loop release bug, add IT effect S9F support.
- Add Modplug ADPCM4 support for Impulse Tracker modules.
- Improve anticlick performance and fix anticlick filter volume bug.
- IT fade envelope reset should only affect volume envelope.
- Fix Impulse Tracker envelope and fadeout order.
- Replace bidirectional loop unrolling with reverse sample rendering.
- Fix crash when
xmp_set_row()
is used on an IT end marker. - Fix NNA and tone portamento interaction with sample changes.
- Add compatibility for Modplug Tracker preamp scaling.
- Add tracker detection for ModPlug Tracker XMs, pre-alpha ITs.
- New Protracker CIA and VBlank timing detection routine.
- Fix detection for TakeTracker TDZx MODs.
- Fix loading of Digital Tracker FA0x MODs.
- Fix ASYLUM Music Format restart byte.
- Galaxy Music System loading no longer needs including depackers
to inflate MUSE container. - Fix >1MB S3M modules relying on the sample segment high byte.
- New MIT-licensed Digital Symphony LZW decoder.
- Add support for Digital Symphony sigma-delta samples.
- Fix Digital Symphony effects and pattern loading issues.
- Fix support for most Farandole Composer effects.
- Implement Ultra Tracker tone portamento.
- Fix MMD0 pattern loader to honor play transpose setting.
- Multiple OctaMED fixes and support for MMDC packed modules.
- Fix MED Soundstudio 2 default note events.
- Fix MTM tempo effect and FX_SPEED scan bugs.
- Add MTM module tempo mode detection and comments support.
- Multiple fixes and updates for ST modules.
- Move interpolation wraparound handling out of sample loader.
- Don't increment voice position by step value at loop/tick end.
- Several loading performance improvements.
- Allow up to 255 sequences to be scanned.
- Allow
xmp_smix_play
functions to play key off, cut and fade events. - Allow loading MED2 samples from the module directory.
- Fix misc. bugs in the MASI 16 loader.
- Integrate the OXM depacker with the XM loader.
- Fix heap corruption in Coconizer loader with invalid sequences.
- Fix MMCMP literal block unpacking.
- Fix bad seeking behavior in MMCMP compressed blocks.
- New permissive licensed Amiga LZX and ARC/ArcFS depackers.
- Update XZ depacker with an MIT reimplementation.
- Change several depackers to work without using a temporary file.
- Replace inflate code with permissive licensed miniz.
- Update the bzip2 depacker code to a newer 0BSD-licensed version.
- Update to latest version of stb_vorbis depacker.
- Relicensed XFD decruncher under MIT.
- Fixes and cleanups for C++ compatibility.
- Fix compilation for UWP platform.
libxmp 4.5.0
Checksums (sha256):
7847d262112d14e8442f44e5ac6ed9ddbca54c251284720b563c852b31f26e75 libxmp-4.5.0.tar.gz
19a019abd5a3ddf449cd20ca52cfe18970f6ab28abdffdd54cff563981a943bb libxmp-lite-4.5.0.tar.gz
Changes in version 4.5.0 (2021-06-06):
- explicitly document that callers of
xmp_load_module_from_file()
are responsible for closing their own file. xmp_load_module_from_memory()
no longer accepts sizes <= 0.- add new
xmp_syserrno
call to the api xmp_get_format_list()
now returnsconst char* const*
, notchar**
(no ABI change)xmp_test_module
,xmp_load_module
,xmp_set_instrument_path
and
xmp_smix_load_sample()
now acceptconst char*
path parameters
(no ABI change)xmp_load_module_from_memory()
now accepts aconst void*
memory
param (no ABI change)xmp_load_module_from_callbacks
andxmp_test_module_from_callbacks
added to api- add
xmp_test_module_from_memory
andxmp_test_module_from_file
calls to api - add new
xmp_set_row()
call to skip replay to the given row - add new
xmp_set_tempo_factor()
call to set the replay tempo
multiplier - remove nonportable use of
fdopen
inxmp_load_module_from_file()
- fix a seek issue with
xmp_load_module_from_memory
- fix memory-io functions' error handling
- fix lite build mod loader symbols
- fix windows static library builds
- fix linkage errors with MSVC debug builds
- fix Emscripten builds
- fix win64 compatibility in ptpopen()
- fix build with C89 compilers
- fix issues related to visibility attributes
- fix compatibility with old gcc, mingw, djgpp
- fix warnings in configure script
- fix Watcom C build on OS/2
- support compiling for Windows with OpenWatcom
- fix Amiga builds
- fix
xmp_set_position
et al. when used during loops, pattern delay - make
xmp_set_position()
consistently clear pattern break/jump vars - fix vorbis depacker to function properly on big endian systems
- avoid shell command injection when calling external unmo3 or unrar
- fix volume event handling for FAR modules
- fix GDM loader to correctly handle empty notes
- fix GDM fine effects
- fix incorrect handling of GDM speed effect
- implement GDM surround effect
- add support for DSMI 0.8 and 0.9 AMF modules
- fix incorrect DSMI AMF volume and note 0x7f handling
- fix DSMI AMF track 0 remapping bug
- fix DSMI AMF speed effect and pan command conversions
- fix IMAGO Orpheus channel panning and status values
- fix S3M ADPCM4 samples
- fix OctaMED 'tracker compatibility' tempos, more accurate OctaMED
8-channel mode BPM tables. - ignore MED volume/slide effects with param of 0, fix speed bound.
- improve MOD loader checks for Mod's Grave WOW files
- fix Schism Tracker version date calculation
- fix MED2 BPM handling
- fix MED modules with pattern lengths > 256
- fix MED instrument corruption
- allow up to 512 rows in X-Tracker patterns
- add support for DigiBooster Pro pan envelopes
- fix DigiBooster Pro volume envelope number of points
- fix fine effects for DigiBooster Pro modules
- fix loading DigiBooster Pro modules with large sample chunks
- fix IT bug where Cxx on same row as SBx would not be ignored
- fix IT bug where Qxy would ignore the volume parameter
- fix IT sample global volume and sample vibrato
- fix two IT bugs related to note off and volume handling
- fix event out-of-bounds reads due to invalid key values
- fix multiple out-of-bounds reads/writes, memory corruptions,
uninitialized reads and hangs in several loaders - fix
xmp_release_module
double frees when invoked multiple times - check external sample file names before opening them
- make it possible to disable module depacker functionality
- make it possible to disable prowizard module loaders
- fix samples corruption in STM modules
- support more versions of STM modules
- fix number of envelope points sanity check in IMF loader
- rewrite the UMX loader
- revise sanity checks to prevent oob reads in s404 depacker
- IT: T00 now repeats previous slide
- prevent clobbering of muted channels' volumes in IT modules
- clamp number of IT envelope nodes at load time
- fix IT message (comment) length miscalculation
- fix IT volume panning effect
- fix mute status on player creation
- fix sanity check in Digital Symphony loader
- fix and enable the Coconizer loader
- fix MMD3 instrument type sanity check
- fix strictness of MOD pattern data tester
- fix loading of XMLiTE XM modules
- fix loading of ST modules with invalid names
- fix PTM loader issues
- fix MED4 invalid sample load error
- fix NNA and DCT/DCA issues
- handle XM 16-bit samples with odd in-file data
- fix smix sample allocation
- force reset of buffer state on player start
- fix IT pattern delay volume reset bug (read row events only
once per row) - fix volume, pitch and pan slides lagging behind one frame
- fix tempo assignment in module scan to fix seek issues/crashes
- fix double free in case of ADPCM sample load error
- code refactoring and cleanup
- fix XM keyoff with instrument
- fix loading xm instruments with more than 16 samples
- several code clean-ups