Revision history for OpenMPT::Bindings
0.0.3 2026-06-29T23:49:04+03:00
- [INTERNAL] Module: rename private !-raw methods to !-impl to
disambiguate from the genuinely zero-copy read-interleaved-stereo-raw
- [DOCS] README: document read-interleaved-stereo-raw and the
performance trade-off between Blob and raw rendering
- [BUGFIX] Util: fix posix-write return type declaration (int64 → long)
for correctness on 32-bit platforms
- [FEATURE] Module: add read-interleaved-float-stereo-raw for zero-copy
float32 interleaved rendering
- [INTERNAL] Module: cache library-string and supported-extensions
results to avoid redundant C string allocations
- [BUGFIX] Module: fix write-interleaved-stereo-s16-to-handle writing
stale data from oversized internal buffer on partial frames
- [DOCS] Module: document allocation cost of Blob-based render methods
and thread-safety caveat
- [INTERNAL] Native: fix misleading comment in build-error about
string ownership
0.0.2 2026-06-15T20:10:13+03:00
- [BUGFIX] NativeLib: replace bare `return` inside `state $lib =
do {…}` that bypassed the state cache, causing repeated stat()
on LIBOPENMPT_DIR
- [BUGFIX] Util: add `$data-size >= 0` guard to `wav-header` to
prevent silent corrupt WAV headers from negative data-size
arguments
- [IMPROVEMENT] convert-module: pass ffmpeg stderr through to
$*ERR instead of dropping it with `:err(Nil)`
- [BUGFIX] convert-module: ffmpeg-args returned a Seq but declared
--> List, causing a type check crash on all ffmpeg-based formats
- [INTERNAL] Module: document cache-invalidation invariant in
select-subsong
0.0.1 2026-06-15T16:58:35+03:00
- Initial version