Generator
[Unreleased]
Section titled “[Unreleased]”[1.6.0] — 2026-08-11
Section titled “[1.6.0] — 2026-08-11”- Bad CLI flags are rejected instead of silently producing wrong output.
--samples abcbecameNaNand wrote a peaks file with nothing usable in it;--precision twowas likewiseNaN, which skipped rounding entirely (theprecision >= 0test is false forNaN). Both now exit with a message naming the flag. Negative--precisionstill means “don’t round”. --formatis validated. Onlyinlinewas ever tested for downstream, so an unrecognised format quietly behaved asjson— writing files for someone who asked for stdout.
[1.5.1] — 2026-07-01
Section titled “[1.5.1] — 2026-07-01”Changed
Section titled “Changed”- Harden
normalizePeaks— replaceMath.max(...peaks)with a reduce so very large peak arrays can’t trip “RangeError: Maximum call stack size exceeded”.
[1.5.0] — 2026-06-30
Section titled “[1.5.0] — 2026-06-30”Changed
Section titled “Changed”generatePeaks()defaultsamplesraised 200 → 1800, aligning the Node library API with the CLI (which already defaulted to 1800) and the core player’s live-decode resolution. A baregeneratePeaks(file)now returns 1800 peaks — the SoundCloud-scale figure that keeps wide / high-DPI waveforms crisp. Pass{ samples }to override. CLI output is unchanged.