69 Commits

Author SHA256 Message Date
776a90bc69 - Update to 0.8.4:
* openmpt123: libsndfile float32 output was broken since 0.8.1.
  * [Bug] build/download_externals.txt was missing from makefile
    and msvc source archives.
  * PT36: Some MODs with samples larger than 64k inside PT36
    containers were not read correctly.
  * IT: Files are no longer interpreted as ModPlug-made (thus
    disabling all compatibility settings) just because instrument
    extensions are found (no such files are currently known to
    exist in the wild).

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=124
2025-12-18 19:48:17 +00:00
db0c8e70c0 - Update to 0.8.3:
* [Bug] libopenmpt is now compatible with most non-standard
    builds of libmpg123 which do not by default output signed
    16bit PCM.
  * [Bug] openmpt123: Pausing playback using the space key did
    not work since 0.8.0.
  * IT: Even when the filter cutoff envelope is stopped before its
    first tick is applied, the filter should still be activated.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=122
2025-09-14 00:19:09 +00:00
47e1e06cfc - Update to 0.8.2:
* [Sec] Possible out-of-bounds sample data read in a specific
    combination of reverse sample playback + offset past sample
    loop. (r23711).
  * [Bug] Fixed pre-C++20 undefined behaviour due to left-shifting
    negative integer values.
  * Since libopenmpt 0.8.0, swapping between samples on the rear
    channels could introduce a click on the front channels.
  * IT: Volume column slides no longer propagate their effect
    memory to the regular effect column volume slides.
  * FC: Allow files with a sequence size of 0 to load (fixes a
    broken copy of cult.smod).

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=120
2025-07-19 20:49:33 +00:00
df30ee31f3 - Update to 0.8.1:
* [Bug] openmpt123: Allow for converting to libsndfile formats
    which list the file extension only in the subformat
    (i.e. MP3 with libsndfile 1.1.0 or later).
  * [Change] TCB was added to the list of supported file
    extensions. ModLand and Fujiology use this extension for
    TCB Tracker modules, instead of the canonical MOD extension.
  * IT: Fixed various interactions between Note Cut effect and
    portamentos.
  * MED: When triggering a synth note with a Synth Jump command on
    the same row, the initial speed command was not executed.
  * S3M: Old ModPlug Tracker versions allowed the 28th character
    of sample names to be used. Such sample names are now read
    correctly again.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=118
2025-06-14 20:28:44 +00:00
9181be1cad - Update to 0.8.0:
* [New] Can now read PumaTracker (PUMA) modules.
  * [New] Can now read Face The Music (FTM) modules.
  * [New] Can now read Future Composer (FC / FC13 / FC14 / SMOD)
    modules.
  * [New] Can now read Game Music Creator (GMC) modules.
  * [New] Can now read Chuck Biscuits / Black Artist (CBA) modules
    from the Expoze musicdisk by Heretics
  * [New] Can now read Real Tracker 2 (RTM) modules.
  * [New] Can now read Images Music System (IMS) modules.
  * [New] Can now read ChipTracker (MOD) modules.
  * [New] Can now read TCB Tracker (MOD) modules.
  * [New] Can now read EasyTrax (ETX) modules.
  * [New] Can now load UNIC Tracker v1 (UNIC) files.
  * [New] MED: Synthesized and hybrid instruments are now
    supported.
  * [New] GT2: Better support for old “envelopes”, in particular
    adding support for the previously missing
    tremor / tremolo / vibrato.
  * [New] NST: His Master’s Noise “Mupp” instruments are now
    supported, as well as command 7 “mega-arp”.
  * [New] libopenmpt: New APIs for determining whether order list
    entries or pattern indices have a special meaning:
      openmpt::module::is_order_skip_entry(),
      openmpt::module::is_pattern_skip_item(),
      openmpt::module::is_order_stop_entry(),
      openmpt::module::is_pattern_stop_item() (C++),
      and openmpt_module_is_order_skip_entry(),
      openmpt_module_is_pattern_skip_item(),
      openmpt_module_is_order_stop_entry(),

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=116
2025-06-09 13:54:24 +00:00
f0f602e6b5 - Update to 0.7.13:
* module::get_current_estimated_bpm could return infinity when
    rows per beat was set to 0. A default of 4 rows per beat is now
    assumed in this situation. The internal LFO plugin was also
    affected in Tempo Sync mode.
  * Instruments that have a MIDI channel assigned and NNA set to
    “Continue” could cause NNA channel starvation.
  * In non-compatible linear slide mode, the sample rate could wrap
    around with portamento slides to extremely low frequencies.
    This should only happen in compatible mode.
- Changes in 0.7.12:
  * [Bug] Fixed various undefined behaviour found with ubsan.
  * IT: Don’t report files claiming to be made with Impulse Tracker
    2.08+ as IT-made if they have no edit timer.
  * IT: Ignore sample data in slots that don’t have the “sample
    data present” flag set, if the file vaguely looks IT-made to
    avoid playing garbage caused by an Impulse Tracker bug that
    should not be audible.
  * S3M: Detect early Schism Tracker versions.
  * MOD: When trying to detect MOD files with broken order lists,
    the file size is now rounded down to an even number. This helps
    identifying some malformed files (MOD files can technically not
    have an odd size).
  * MOD: Also enable ProTracker-compatible tremolo ramp waveform
    for M!K! modules.
  * MOD: In ProTracker 1/2 mode, retrigger with instrument-less
    notes now keeps using the previous sample offset.
  * Warn when a Startrekker AM file most likely requires an
    (currently unsupported) external instrument definition file.
  * DBM / IMF / MED: When merging pattern commands, allow to move

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=114
2025-03-16 18:23:19 +00:00
3bc07c4a34 - Update to 0.7.11:
* IT: Don’t import SAx High Offset command for IT 1.xx modules.
    This feature was added in Impulse Tracker 2.00.
  * IT: Limit Vxx parameter to V80 for files made with old Schism
    Tracker versions.
  * IT / S3M: Impulse Tracker 2.14 patch version information was
    incorrect.
  * S3M: O00 effects are no longer ignored if the tracker version
    in the file header indicates Scream Tracker 3.00 / 3.01,
    but the file was clearly saved with another tool (e.g. UNMO3).
  * S3M: As files made with Scream Tracker 3.20 and 3.21 cannot be
    told apart, both versions are now listed in the tracker
    metadata.
  * ULT: Try to preserve global commands if there’s e.g. both a
    speed and tempo command in the same cell.
  * STM: Improved tracker identification metadata.
  * SymMOD: When running out of Zxx macros, try to find the closest
    macro to use instead.
  * SymMOD: Ignore unknown hunks instead of rejecting entire file,
    as that’s what Symphonie does as well.
  * OKT: Disable loop on type “B” samples if they’re used on a
    mixed channel.
  * OKT: The last sample slot was never loaded.
  * PTM: Halve offset command strength for 16-bit samples.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=112
2024-11-12 02:53:01 +00:00
16ab7a4519 Accepting request 1204210 from home:ateixeira:branches:multimedia:libs
- Update to 0.7.10:
  * [Change] FST was added to the list of supported file extension.
    AMP uses this extension for multichannel MODs.
  * [Bug] The Android NDK build system did not enable C++20 when
    available.
  * Fixed inconsistency in length calculation and actual playback
    length with tempo commands below 32 BPM in various formats
    (MDL, MED among others).
  * MED: Command 09 (set speed) was limited to 20 ticks per row
    instead of 32 ticks per row.
  * MED: Allow tempo parameters < 32 BPM.
  * MED: Disallow free panning if hardware mixing is enabled.
  * For MOD-style vibrato, a speed parameter of 0 was not treated
    as effect memory. Vibrato speed is now correct for both vibrato
    commands.
  * MED: Fix pattern index exhaustion in modules with multiple
    subsongs.
  * OKT: Don't drop global commands when setting paired channel
    volume, and try to write channel volume on the next row in this
    situation.
  * PTM: Use square root pan law, like in XM files.
  * SFX: Ignore unused data at end of oneshot samples which
    sometimes caused clicky noises.
  * SFX: More accurate implementation of arpeggio effect.

OBS-URL: https://build.opensuse.org/request/show/1204210
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=110
2024-09-28 14:17:52 +00:00
d647c0094e - Update to 0.7.9:
* [Sec] Potential division by 0 when seeking in the module with
    seek.sync_samples enabled (r21167).
  * [Change] The work-around for
    https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115049
    has been changed from forcing -O1 on GCC 14 to setting
    -fno-ipa-ra on all GCC versions on non-ELF platforms.
  * MOD: Allow sample swapping to work when swapping from a
    non-looping, stopped sample back to a looping sample
    (fixes MOD.energy).
  * DBM: Import second sustain point in case the first sustain
    point is not set, or if it has a lower index than the first.
  * DBM: When several instruments referenced the same sample with
    different properties (volume, loop points, etc.), only one set
    of properties was imported (fixes DBM.Supernova).
  * DBM: Prioritize effects more correctly when the same effect is
    encountered in both effect columns of a cell
    (fixes DBM.143_Gnoj).
  * DBM: Don’t import offset effects when there’s a tone portmento
    next to them.
  * DBM: A few IT-specific playback quirks are disabled for more
    accurate playback (e.g. in “Are You Flying With Me?” by
    Jazzcat).
  * DIGI: Sample play direction was reset if adjacent channel
    contained a Note Cut note.
  * AMF: When running out of sample slots, file reading became be
    misaligned because the sample name was not skipped.
  * MED: Command 0F was not imported.
  * MED: Upper frequency limits should be more accurate now.
  * MED: Channel panning is now only applied in MMD2 files if the

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=108
2024-07-22 09:40:24 +00:00
b50341a930 - Update to 0.7.8:
* [Sec] Potential heap out-of-bounds read with malformed Dynamic
    Studio DSm files.
  * MED: Additional command pages can now be read.
  * MED: Echo DSP is now emulated.
  * AMS: Default channel panning was broken, using all-center
    panning instead of MOD-style panning.
  * STP: Correctly import volume slides where both nibbles are set.
  * MDL: Pitch slide depth was wrong since libopenmpt 0.6.0.
  * DTM: Fix pitch slide depth for samples with finetune.
  * DSm: Don’t import as Amiga module (and thus allow Amig
    a resampler to be enabled), as this PC format can easily
    exceed the Amiga frequency range.
  * DSm: Only the first 48 samples were ever read.
  * STM / STX: Don’t set channel panning.
    ScreamTracker 2 only outputs mono sound.
  * PSM: File header probing was stricter than actual file loader,
    rejecting manipulated files that would otherwise load fine.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=106
2024-06-09 22:01:56 +00:00
6cabf4b24f - Update to 0.7.7:
* IT: Disable a few more compatibility flags for older
    SchismTracker builds.
  * IT: Halve the output volume of files saved with ChibiTracker,
    as its mixer is about half as loud as ours.
  * S3M: In mono mode, the ratio between sample and OPL volume was
    incorrect.
  * S3M: Detect files saved with PlayerPRO.
  * XM: Detect files saved with PlayerPRO. Improved detection of
    files saved with ModPlug Tracker.
  * XM: Files with impossibly small pattern headers are now
    rejected, like FastTracker 2 does.
  * STK: Loosen SoundTracker file rejection heuristics a bit to
    allow loading of files with malformed song titles and overly
    long samples. Other heuristics has been tightened a bit.
  * MOD: Change VBlank timing heuristic to always assume CIA timing
    when long samples unsupported by original ProTracker) are
    found.
  * MOD: Disable NoiseTracker quirks if empty sample slots have a
    default volume other than 0.
  * MOD: 7-bit panning detection may have returned incorrect
    results for MODs with a channel count other than 4.
  * MED: Improve handling of default tempo, panning and channel
    volume in files containing more than one song.
  * MO3: Reduced maximum allowed music data (not samples) size
    from 2 GiB to 512 MiB.
  * XMF: Header validation is now stricter.
  * MDL: Slightly more accurate import of pattern command 9
    (enabling envelopes instead of setting envelope position).
  * ULT: Support the highest three octaves.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=104
2024-05-25 12:09:25 +00:00
4dfe6e1da9 - Update to 0.7.6:
* [Sec] Potential heap out-of-bounds read or write past sample
    end with malformed sustain loops in SymMOD files.
  * MED: Transposed samples were playing too low in some files
    (e.g. mix94.mmd1).
  * OKT: Some files with garbage at the end were rejected
    (e.g. katharsis - piano lesson.okta).
  * Compressor DMO: It was possible that the plugin would not
    behave as intended at mix rates above 500 kHz.
  * Avoid re-allocating the loop state map contents on every
    playthrough of the module.
- Run test suite during package build

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=102
2024-03-29 12:45:27 +00:00
da08864b8d - Update to 0.7.5:
* [Sec] Null-pointer write (32bit platforms) or excessive memory
    allocation (64bit platforms) when reading close to 4GiB of data
    from unseekable files..
  * [Sec] Write buffer overflow when reading unseekable files close
    to 4GiB in size.
  * [Sec] Possible out-of-memory (32bit platforms) or excessive
    memory allocation (64bit platforms) when reading malformed data
    from unseekable files.
  * [Sec] DMF: Possible null-pointer write or excessive memory
    allocation when reading DMF files.
  * IT: In the previous version, Zxx macros in IT files made with
    older MPT versions were no longer working.
  * There was a periodic click when playing a module using the
    Chorus or Flanger DMO plugin at a mix rate exceeding
    ~136.5 kHz.
  * An older bugfix for undefined behaviour in the Distortion DMO
    plugin was incorrect, causing the distorted sound to be
    different in some situations.
  * xmp-openmpt: Metadata retrievel for playlist items was broken.
- Changes in 0.7.4:
  * [Bug] Makefile: libopenmpt 0.7.3 broke running the test suite
    for Emscripten builds.
  * openmpt123: openmpt123 now uses a narrower layout on terminal
    windows with a width of less than 72 characters.
  * Setting all possible load_skip flags resulted in nothing being
    loaded at all, instead of just not loading the selected module
    parts.
  * When playing all subsongs, set_position_seconds didn’t always
    calculate the correct subsong to jump to.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=100
2024-03-17 17:47:55 +00:00
4a8196c32b - Update to 0.7.3:
* Fix: set_pitch_factor no longer affected OPL instruments since
    version 0.6.0.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=98
2023-11-07 00:50:44 +00:00
Danilo Spinella
a876f4d11d Accepting request 1095929 from home:dspinella:branches:multimedia:libs
- Update to 0.7.2:
  * [New] MOD: Can now read modified 8-channel MOD files from the DOS game Aleshar - The World Of Ice.
  * [Sec] Possible out-of-bounds read or write when reading malformed MED files. (r19389)
  * [Bug] The Opal OPL3 emulator symbols were not namespaced properly.

OBS-URL: https://build.opensuse.org/request/show/1095929
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=96
2023-06-29 09:06:12 +00:00
aede4ad48e - Update to 0.7.1
* IT: Improved fingerprinting of early ModPlug Tracker versions.
  * XMF: Modules from Astroidea demos can now be read as well.
- Changes in 0.7.0:
  * [New] 667 files from Composer 667 are now supported.
  * [New] GTK and GT2 files from Gramouf Tracker are now supported.
  * [New] Can now read a variant of the DSMI AMF format called DMF,
    as found in various DOS games distributed by Webfoot (Tronic,
    H2O, PowBall, etc.).
  * [New] DSM files from Dynamic Studio are now supported.
  * [New] XMF files from the DOS game Imperium Galactica are now
    supported.
  * [New] Can now read the hacked MOD format (DMF) from the game
    “Apocalypse Abyss”.
  * [New] libopenmpt: New APIs for getting the current tempo as a
    floating point value: openmpt::module::get_current_tempo2()
    (C++), and openmpt_module_get_current_tempo2() (C).
  * [New] C API: New stream callbacks for various platform
    extensions to the C stdio interface:
      openmpt_stream_get_file_posix_lfs64_callbacks()
      in libopenmpt/libopenmpt_stream_callbacks_file_posix_lfs64.h
      for explicit off64_t on Posix systems,
      openmpt_stream_get_file_posix_callbacks()
      in libopenmpt/libopenmpt_stream_callbacks_file_posix.h
      for off_t on Posix systems,
      openmpt_stream_get_file_msvcrt_callbacks()
      in libopenmpt/libopenmpt_stream_callbacks_file_msvcrt.h
      for 64bit file support on Windows systems with the Microsoft
      C runtime, and openmpt_stream_get_file_mingw_callbacks()
      in libopenmpt/libopenmpt_stream_callbacks_file_mingw.h

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=95
2023-05-08 08:48:27 +00:00
Danilo Spinella
70cdeb882b Accepting request 1080182 from home:ateixeira:branches:multimedia:libs
- Update to 0.6.10
  * [Bug] File probing and loading results could be inconsistent
    for SFX files, so that probing could claim that a file is
    definitely not playable even if it would be.
  * MOD: VBlank heuristics are now applied to MOD files with M!K!
    signature. Fixes mod.siedler ii.
  * NoiseTracker MODs are now always played with VBlank timing.
  * MED: Add support for default instrument pitch.
  * MED: Global play transpose value was not considered for MMD0
    files.
  * 669: Reject files with lots of control characters in song
    message.
  * mpg123: Update to v1.31.3 (2023-03-19).

OBS-URL: https://build.opensuse.org/request/show/1080182
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=93
2023-04-19 08:46:09 +00:00
f567f969b8 - Update to 0.6.9
* [Bug] An exception could be thrown during rendering when trying
    to access the release node of an empty envelope.
  * The fix for the OPL cutoff bug introduced in libopenmpt 0.6.7
    was incomplete.
  * ULT: Offset commands exceeding 65535 samples were sometimes not
    imported correctly even if there was room for them.
  * After seeking with seek.sync_samples=1, the filter settings of
    playing notes were not updated since libopenmpt 0.6.7.
  * Loading of and seeking inside (malformed) modules with
    thousands of short sub-songs has been sped up.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=91
2023-03-29 02:51:57 +00:00
f74b91bb82 Accepting request 1063189 from home:dirkmueller:Factory
- update to 0.6.8:
  * [Bug] DSYM: Loading DSYM files got broken in 0.6.7.
  * When seeking around in a module, the tempo was sometimes
    incorrectly limited to 255 BPM
  * Initial instrument cutoff was broken for OPL instruments in
    libopenmnpt 0.6.7 
  * mpg123: Update to v1.31.2

OBS-URL: https://build.opensuse.org/request/show/1063189
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=89
2023-02-06 14:26:39 +00:00
5aa455a83d - Update to 0.6.7
* IT: In sample mode, portamento to a different sample turns off
    the filter if cutoff / resonance was previously 127 / 0.
  * S3M Detect files saved with Graoumf Tracker instead of claiming
    they were made with OpenMPT 4.47.
  * S3M: Pattern loop state was not propagated anymore since
    libopenmpt 0.6.0, leading to wrong song length calculation and
    SB0 + SBx being located on different channels not working
    properly anymore.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=87
2023-01-09 02:20:10 +00:00
933a2302df - Update to 0.6.6
* [Sec] Possible crash when playing manipulated IT / MPTM files
    with a T00 command.
  * MTM: In MultiTracker, setting speed and tempo are mutually
    exclusive commands. Still, some MultiTracker modules were made
    to be played with external players such as DMP, so they
    actually rely on “standard” speed / tempo behaviour. Decide
    which behaviour to use by checking of speed and tempo commands
    are found on the same row.
  * MTM: Ignore sample loops if the loop end is <= 2.
  * Echo DMO: Migrate left and right delay values in modules made
    with OpenMPT versions between 1.27.01.00 and 1.30.05.00 to the
    correct interpretation.
- Changes in 0.6.5:
  * [Bug] Makefile now also uses CC, CXX, LD, and AR when set as
    environment variables.
  * [New] Makefile now uses PKG_CONFIG as path to pkg-config.
  * DBM: Sample middle-C frequencies were slightly off.
    laffik_-_marynarze.dbm sounds much more bearable now.
  * DBM: Fixed pattern break parameter interpretation.
  * Echo DMO: Setting the delay parameter to 0 yielded a 2-second
    echo delay instead of 1ms.
  * Digi Booster Echo: Setting the delay parameter to 0 yielded a
    510ms echo delay instead of approximately 334ms.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=85
2022-09-29 19:41:01 +00:00
fc9e00c0d1 - Update to 0.6.4
* Fix: Ping-pong sample loops sometimes stopped playing at the
    end of the loop.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=83
2022-06-15 17:01:43 +00:00
388912499d Accepting request 977463 from home:dspinella:branches:multimedia:libs
- Update to 0.6.3:
  * Pitch / Pan Separation and Random Variation instrument properties
    were not resetting properly when seeking, potentially causing
    instruments to be played e.g. at a vastly different pan position
    compared to playing the module continuously.
  * MED: Stereo samples were not imported correctly.

OBS-URL: https://build.opensuse.org/request/show/977463
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=81
2022-05-23 06:50:34 +00:00
86fbf6c9c9 Accepting request 966790 from home:dspinella:branches:multimedia:libs
- Update to 0.6.2:
 *  [**Sec**] Possible out-of-bounds write in malformed IT / XM / MPTM files
    using the internal LFO plugin. (r17076)
 *  [**Sec**] Possible out-of-bounds read when using Amiga BLEP interpolation
    with extremely high-pitched notes. (r17078, r17079)
 *  ISO-8859-1-related charsets from Amiga OS and RISC OS are now handled more
    accurately, thus avoiding some unwanted control characters.
 *  MO3: Pattern indices 254 / 255 were not treated as playable patterns even if
    the original file was a MOD / XM.
 *  Correctly apply ST3-style effect memory when seeking in S3M files.
 *  Command S (S3M / IT style) effect memory was not applied when seeking.
 *  Initial channel mute status was not reported correctly in `get_channel_mute_status`
    since libopenmpt 0.6.0.
- Fix build on Leap by using GCC-11 as charconv header is only included
  from GCC-8 onwards

OBS-URL: https://build.opensuse.org/request/show/966790
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=79
2022-04-04 23:45:33 +00:00
41a8fd9bfa - Update to 0.6.1:
* [Bug] Possible hang with malformed DMF, DSM, MED, MUS, OKT and
    SymMOD files containing 65536 or more patterns when destroying
    the module.
  * [Bug] Avoid NaNs and infinite values with custom tunings and in
    the I3DL2Reverb plugin.
  * MIDI macros are now evaluated when seeking.
  * The letter “z” is now evaluated in fixed MIDI macros (Z80…ZFF)
    the same way as in Impulse Tracker.
  * MOD: Loosened VBlank timing heuristics so that “frame of mind”
    by Dascon plays correctly.
  * MOD: Validate the contents of “hidden” patterns beyond the end
    of the order list when the file size matches the expected size
    when only taken “official” patterns into account. This fixes
    Shofixti Ditty.mod from Star Control 2 while keeping other
    (partly broken) modules working.
  * MED: Command 20 (reverse sample) is now only applied when it’s
    next to a note.
  * S3M: Introducing the “Send OPL key-off when triggering notes”
    compatibility setting broke retrigger for OPL notes again
    (they retriggered rather than not retriggering).
  * S3M: Retriggering a note no longer resets its pitch after a
    portamento.
  * S3M: Partially implement retrigger behaviour for stopped notes
    in SoundBlaster mode: Like in IT, it is not possible to
    retrigger a sample that has already stopped playing.
  * DIGI: Improve compatibility with E3x reverse sample command.
  * DSym: Tempos < 32 were treated as tempo slides.
  * SymMOD: Key-off command was not implemented properly.
- Changes in 0.6.0:

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=78
2022-01-31 07:30:49 +00:00
740695bfdd - Update to 0.5.14:
* [Sec] Possible out-of-bounds read in Chorus plugin with NaN
    plugin parameters. Most implementations of the “fast math”
    compiler optimizations will prevent this crash but it is not
    guaranteed. (r16096)
  * [Bug] Fixed undefined behaviour with custom tunings found with
    ubsan.
  * OPL: Improved channel allocation strategy when there are lots
    of faded-out notes.
  * MOD: Digital Tracker MODs have four unknown bytes right after
    the magic bytes which seem to be ignored even by Digital
    Tracker itself. Just skip over them.
  * The logic when to turn off the resonant filter was broken in
    some edge cases since libopenmpt 0.5.1.
  * IMF: Implemented XE1-XE3 commands, which disable individual
    envelopes. Command Nxy (cutoff slide + resonance) is now also
    partially supported (only resonance for now).
  * IMF: Filter envelopes were upside down.
  * MTM: Omitting pattern loading through the load.skip_patterns
    ctl caused sample data to be corrupted.
  * S3M: Ignore O00 commands in files created with Scream Tracker
    3.00 and 3.01, as this command only gained effect memory in
    version 3.03.
  * STM: Use S3M-like sample swap behaviour.
  * XM: Disable arpeggio quirk for XMs made with Skale Tracker.
    Fixes KAPTENFL.XM.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=77
2021-12-23 06:51:05 +00:00
Danilo Spinella
7ccd83b755 Accepting request 934956 from home:dspinella:branches:multimedia:libs
- Update to 0.5.13:
  * [Bug] Fixed various undefined behaviour found with ubsan.
  * IMF: Change envelope interpretation to be more like in XM instead of
    IT and tighten header validation.
  * MED: Some samples had a ping-pong loop when there should be no loop at all.
  * MT2: Ignore incorrect drums chunk size in early MT2 files (fixes e.g.
    “A little Rock” by Csumi).
  * MT2: Work around initial master volume of 0 used in some files that apply
    a fade-in a the song start using track automation that would stay silent
    forever otherwise (track automation is currently not supported).
  * OKT: Apply portamento on every tick.
  * mpg123: Update to v1.29.2 (2021-10-23).

OBS-URL: https://build.opensuse.org/request/show/934956
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=76
2021-12-02 17:03:46 +00:00
a434c60f8b Accepting request 926980 from home:dspinella:branches:multimedia:libs
- Update to 0.5.12:
  * [Sec] Possible crash when loading malformed MDL files. (r15603)
  * [Bug] Fixed various undefined behaviour found with ubsan.
  * Seeking with sample sync sometimes didn’t compute the correct
    sample position with pingpong-looped samples.
  * IT: Tremor command I11 erroneously behaved like I00 (use previous
    parameter) unless IT Old Effects were enabled.
  * PTM: Panning was translated wrong in some edge cases.
  * IMF / PTM: Note Slide commands were sometimes slightly off.
  * OKT: Better support for fine note slides.
  * DBM: Echo enable effect parameter range checks were incorrect.
  * XM: Sample texts in XMs made with MadTracker are now also
    decoded using Windows-1252 encoding.
  * in_openmpt: Song metadata is no longer reverted when viewing
    file info.
  * mpg123: Update to v1.29.0 (2021-09-06).

OBS-URL: https://build.opensuse.org/request/show/926980
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=75
2021-10-26 06:32:49 +00:00
c534abf9b5 - Update to 0.5.11:
* [Sec] Possible crash with malformed modules when trying to
    access non-existent plugin slots FX251-FX255.
  * [Sec] Possible read beyond sample start after swapping to a
    sample with loop points set but not loop enabled.
  * [Sec] Fixed various possible crashes with malformed MMCMP
    files.
  * [Sec] MED: Possible read past end of sequence name
    (stack-allocated, so relatively unlikely to result in a
    crash).
  * Fixed excessive memory usage with files claiming to have an
    extremely high rows per beat count while also using tempo
    swing. Maximum rows per beat are now limited to 65536.
  * STP: Avoid creating thousands of patterns when loading
    malformed files even though no more pattern data can be read.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=74
2021-08-23 22:42:46 +00:00
fd8ed0e8b7 - Update to 0.5.10:
* S3M: Honor the Stereo flag not being set. This improves the
    sound of some tunes like Turbulence by Purple Motion.
  * S3M: Detect MPT 1.0 alpha versions which didn’t set the Stereo
    flag. In this case, the unset Stereo flag is also ignored
    because MPT 1.0 alpha used the default S3M channel panning
    anyway.
  * S3M: Only for OPL instruments the high sample rate bits should
    be ignored; for PCM instruments they are clamped to 65535 Hz.
  * MOD: Do not apply ProTracker loop length quirk to MODs that
    could have been made with Scream Tracker (fixes Soul-O-Matic
    by Purple Motion).
  * AMF (DSMI): Format revisions 1 and 9, as well as early
    (technically malformed) revision 10 files, are now supported.
    Surround panning commands and instrument number without note
    are now converted correctly.
  * AMF (DSMI): Patterns and samples were not read correctly in
    some files (e.g. AVOID.AMF).
  * GDM: Correctly import extra-fine portamentos.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=73
2021-07-11 08:50:15 +00:00
a07c1903a7 - Update to 0.5.9:
* The retrigger effect didn’t work correctly for OPL instruments
    in some cases depending on the chosen output sample rate.
  * S3M: Emulate IT short sample retrigger quirk in S3M files saved
    with Impulse Tracker and Schism Tracker.
  * ProTracker 3.6 doesn’t support sample swapping. It is now
    disabled when loading a ProTracker 3.6 IFF module.
  * Some files with “hidden” garbage patterns were not played
    correctly since libopenmpt 0.5.3.
  * MOD: E9x retrigger now works the same way as in ProTracker 2.
  * MDL: Improve auto-vibrato accuracy.
  * 669: Reject files that contain any pattern tempo higher than
    15.
  * Reduce memory consumption of malformed XPK-compressed files.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=72
2021-06-23 18:00:01 +00:00
0243fbe3e2 - Update to 0.5.8:
* [Sec] Possible null-pointer dereference read caused by a
    sequence of openmpt::module::read,
    openmpt::module::set_position_order_row pointing to an invalid
    pattern, and another openmpt::module::read call. To trigger the
    crash, pattern 0 must not exist in the file and the tick speed
    before the position jump must be lower than the initial speed
    of the module.
  * [Bug] libopenmpt 0.5.7 broke seeking in some subsongs.
  * The built-in LFO plugin did not load the correct initial LFO
    frequency.
  * IT command S7x (instrument control) is now supported when
    seeking with sample sync enabled.
  * libopenmpt_ext play_note was cutting of channels even when
    there were plenty of free channels to use.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=71
2021-04-20 02:34:32 +00:00
c22f4f8091 - Update to 0.5.7:
* [Sec] Possible null-pointer dereference read caused by a
    sequence of openmpt::module::read,
    openmpt::module::set_position_seconds with a position past the
    song end, and another openmpt::module::read call.
  * IT: Instrument / sample panning was reset on note-off / fade
    commands.
  * IMF: Set Finetune is now implemented correctly.
  * Fixed excessive memory consumption with malformed files in
    various formats.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=69
2021-03-20 20:17:38 +00:00
43b3b7b401 - Update to 0.5.6:
* AMS: Avoid allocating excessive amount of memory for compressed
    song message in malformed files.
  * S3M: Some samples or OPL patches were imported with a too high
    sample rate if module was saved with Scream Tracker 3.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=68
2021-03-14 18:44:25 +00:00
c3568e25c9 - Update to 0.5.5:
* [Bug] stb_vorbis: Fix decoding of Vorbis streams without
    comments which affected most Vorbis samples since stb_vorbis
    v1.20.
  * openmpt::ext::interactive::set_pitch_factor wasn’t applied to
    OPL voices.
  * OPL channel state (in particular current patch) is now updated
    when seeking.
  * The FT2 tremolo quirk is now also applied to MOD files.
    FT2 just copied the quirky code from ProTracker!
  * DMF: Preserve effects better in some situations where there is
    more than one effect in a pattern cell.
  * DMF: Improve import of finetune effect with parameters larger
    than +/-15.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=66
2021-02-02 23:24:48 +00:00
d099cbb8f8 - Update to 0.5.4:
* 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.
Changes in 0.5.3:
  * [Sec] Possible hang if a MED file claimed to contain 256 songs.
  * [Bug] libopenmpt: openmpt::is_extension_supported2() exported
    symbol was missing (C++).
  * [Bug] openmpt::module::set_position_seconds sometimes behaved
    as if the song end was reached when seeking into a pattern loop
    and in some other corner cases.
  * Increase threshold for ignoring panning commands from 820 to
    830.
  * Subsong names now fall back to the first pattern’s name if
    empty.
  * MO3: Avoid certain ModPlug hacks from being fixed up twice,
    which could lead to e.g. very narrow pan swing range for old
    OpenMPT IT files saved with a recent MO3 encoder version.
  * MO3: Some files with corrupted envelope data could be rejected
    completely (normally libopenmpt should fix up the envelope
    data).

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=64
2020-12-16 03:09:38 +00:00
Tomáš Chvátal
23830d6b88 Accepting request 812183 from home:plater
- Remove devel packages requirement on obsolete modplug

OBS-URL: https://build.opensuse.org/request/show/812183
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=62
2020-06-08 06:39:17 +00:00
d3e9713ee3 - Drop libmodpulg-pcfile.patch
- Update to 0.5.0:
  * [New] OggMod compressed FastTracker 2 XM (OXM) modules are now
    supported.
  * [New] The emulated Amiga type when Amiga resampler emulation
    is enabled can now be selected via ctl
    render.resampler.emulate_amiga_type.
    Possible values are: "auto", "a500", "a1200",
    and an experimental option "unfiltered".
  * [New] libopenmpt: New API
    openmpt::module::get_current_estimated_bpm() (C++),
    and openmpt_module_get_current_estimated_bpm() (C)
    which provides accurate beats per minute information for
    module formats with time signature and an educated guess
    based on speed and tempo for others.
  * [New] libopenmpt: New type-aware ctl APIs that do not require
    memory allocations and are thus realtime-safe:
    openmpt::module::ctl_get_boolean(),
    openmpt::module::ctl_get_integer(),
    openmpt::module::ctl_get_floatingpoint(),
    openmpt::module::ctl_get_text(),
    openmpt::module::ctl_set_boolean(),
    openmpt::module::ctl_set_integer(),
    openmpt::module::ctl_set_floatingpoint() (C++),
    and openmpt_module_ctl_get_boolean(),
    openmpt_module_ctl_get_integer(),
    openmpt_module_ctl_get_floatingpoint(),
    openmpt_module_ctl_get_text(),
    openmpt_module_ctl_set_boolean(),
    openmpt_module_ctl_set_integer(),

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=60
2020-05-24 19:01:56 +00:00
0a1722c5c3 - Update to 0.4.12:
* IT: Vibrato was too fast in Old Effects mode since
    libopenmpt 0.3.
  * XM: Treat 8bitbubsy’s FT2 clone exactly like Fasttracker 2 with
    respect to compatibility and playback flags. For example,
    FT2 Pan Law was not applied.
  * DMF: Some files had a wrong tempo since
    libopenmpt 0.2.5705-beta15.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=58
2020-04-13 22:14:52 +00:00
Tomáš Chvátal
ea82fd094b - Update to 0.4.11:
* The “date” metadata could contain a bogus date for some older IT files.
  * Do not apply global volume ramping from initial global volume when seeking.
  * MTM: Sample loop length was off by one.
  * PSM: Sample loop length was off by one in most files.
  * MOD: Fix initial instrument change with no note playing.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=56
2020-01-30 16:10:24 +00:00
Tomáš Chvátal
1ccffe8ce8 - Update to version 0.4.9 bsc#1153102 CVE-2019-17113
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=54
2019-10-07 07:47:00 +00:00
Mia Herkt
144799737f - Update to version 0.4.9
* [Sec] libmodplug: C API: Limit the length of strings copied to
    the output buffer of ModPlug_InstrumentName() and
    ModPlug_SampleName() to 32 bytes (including terminating null)
    as is done by original libmodplug. This avoids potential buffer
    overflows in software relying on this limit instead of querying
    the required buffer size beforehand. libopenmpt can return
    strings longer than 32 bytes here beacuse the internal limit of
    32 bytes applies to strings encoded in arbitrary character
    encodings but the API returns them converted to UTF-8, which
    can be longer. (reported by Antonio Morales Maldonado of Semmle
    Security Research Team) (r12129)
  * [Sec] libmodplug: C++ API: Do not return 0 in
    CSoundFile::GetSampleName() and CSoundFile::GetInstrumentName()
    when a null output pointer is provided. This behaviour differed
    from libmodplug and made it impossible to determine the
    required buffer size. (r12130)

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=53
2019-10-03 00:58:08 +00:00
Mia Herkt
a830c6ac7a - Update to version 0.4.8:
* [Sec] Possible crash due to out-of-bounds read when playing an
    OPL note with active filter in S3M or MPTM files (r12118).
- Update to version 0.4.7:
  * J2B: Ignore notes with non-existing instrument
    (fixes Ending.j2b)

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=52
2019-10-01 00:23:04 +00:00
Tomáš Chvátal
ff1f781873 - Update to version 0.4.2 bsc#1143582 CVE-2019-14382 bsc#1143584
CVE-2019-14383:
- Update to version 0.4.0 bsc#1143581 CVE-2018-20860:
- Update to version 0.3.11 bsc#1143578 CVE-2018-20861:

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=50
2019-08-14 08:52:17 +00:00
Mia Herkt
823e595816 - Update to version 0.4.6:
* Detect IT files unpacked with early UNMO3 versions.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=48
2019-08-11 02:05:39 +00:00
Mia Herkt
bab53ed21d - Update to version 0.4.5:
* [Sec] Possible crash during playback due out-of-bounds read in
    XM and MT2 files
  * Breaking out of a sustain loop through Note-Off sometimes
    didn’t continue in the regular sample loop
  * Seeking did not stop notes playing with XM Key Off (Kxx) effect

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=46
2019-05-27 10:31:12 +00:00
Mia Herkt
4ba8a03018 - Update to version 0.4.4:
* [Bug] Channel VU meters were swapped.
  * Startrekker: Clamp speed to 31 ticks per row.
  * MTM: Ignore unused Exy commands on import.
    Command E5x (Set Finetune) is now applied correctly.
  * MOD: Sample swapping was always enabled since it has been
    separated from the ProTracker 1/2 compatibility flag. Now it is
    always enabled for Amiga-style modules and otherwise the old
    heuristic is used again.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=44
2019-04-07 15:30:52 +00:00
Mia Herkt
2f2b4822a8 - Update to version 0.4.3:
* [Sec] Possible crash due to null-pointer access when doing a
    portamento from an OPL instrument to an empty instrument note
    map slot.
  * IT: Various fixes for note-off + instrument number in
    Old Effects mode.
  * MO3: Import IT row highlights as written by MO3 2.4.1.2 or
    newer. Required for modules using modern tempo mode.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=42
2019-02-11 11:17:45 +00:00
Mia Herkt
ed05f57521 - Update to version 0.4.2:
* [Sec] DSM: Assertion failure during file parsing with debug
    STLs.
  * [Sec] J2B: Assertion failure during file parsing with debug
    STLs.
  * S3M: Allow volume change of OPL instruments after Note Cut.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=40
2019-01-22 18:22:59 +00:00
Mia Herkt
8d5f11d6fa - Update to version 0.4.1:
* [Bug] libmodplug: Public symbols of the C++ API had
    visibility=hidden set on non-MSVC systems, which made them not
    publicly accessible.
  * MO3: Apply playback changes based on “ModPlug-made” header flag
- Drop libmodplug-no-exported-cpp-api-quickfix-v1.patch

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libopenmpt?expand=0&rev=38
2019-01-06 19:17:00 +00:00