v1.9.0
Additive (MINOR) release: audio stem formats beyond OGG. Backward-compatible — every existing
OGG-only pack stays valid, and a Reader that only decodes the baseline keeps working on any
portable pack.
Added
- Audio stem formats beyond OGG (spec §5.3.2,
§1): stems are now dispatched by file extension, with a
normative decoder baseline — a Reader MUST decode OGG (.ogg) and WAV (.wav) and
SHOULD decode MP3 / FLAC / Opus. A new OPTIONALcodechint on eachstems[]entry
disambiguates when an extension doesn't determine the codec (schema:codecon
$defs/stemEntryinschemas/manifest.schema.json; exercised
by the extended example'sfullstem ascodec: vorbis). A portability rule requires a
distributable pack to carry at least one baseline-format stem, so non-baseline stems are
opportunistic enhancements rather than hard dependencies; a Reader MUST raise a clear error
or fall back rather than fail silently on a format it can't decode. Proprietary/game formats
(e.g. Wwise.wem) are explicitly not in the baseline, get no reference decoder, and
MUST NOT be a distributable pack's only stem.
Changed
- §4.2 compatibility carve-out now lists two opt-in file-format relaxations — the existing
.jsoncextension and (new) audio stem formats beyond OGG (1.9.0 widens the baseline
OGG→OGG+WAV and allows formats above it; since OGG was the only pre-1.9.0 guarantee, even a
baseline WAV-only pack needs a 1.9.0 Reader) — both kept MINOR on the same "strictly opt-in,
per-file; only a pack that actually uses it needs a supporting Reader" justification.