CNA-GAP-047: XACT wave-bank entries compressed as XMA/XMA2 or WMA produce no sound

CNA snapshot 009d40f5  ·  Known Issues › Functional gaps  ·  source links pinned to 009d40f5

✓

Evidence basis: source-verified at the pinned commit; tests exist (not executed for this page). Claims on this page were checked by reading the CNA source at commit 009d40f5; unless a sentence says otherwise, nothing here was built or executed. Nothing on this page was executed unless the Evidence section says so.

WaveBank::GetSoundEffect returns null for XMA and WMA entries after printing a diagnostic to stderr, so cues using them are silent.

Identifier
CNA-GAP-047
Category
Functional gap
Subsystem
Audio & media
Status
Open
Verified against
CNA 009d40f5 (009d40f5dd085c4e674d3479675fac84b12b3e0a)
Evidence basis
Source-verified: read at TARGET, not executed
Tests touching this area
Yes: see Current tests
Affected contract
WaveBank loading and playback of XMA/XMA2 and WMA (xWMA) wave entries

Expected behaviour

XACT wave banks may carry PCM, ADPCM, xWMA (Windows) or XMA (Xbox 360) entries; XNA on Windows plays xWMA.

Actual behaviour at TARGET

WaveBank::GetSoundEffect in WaveBank.cpp (AUD-11-010/011) has no decoder for XMA/XMA2 or WMA and returns nullptr after writing “sound will be missing” to std::cerr; the comment calls it a permanent capability gap recorded as an accepted deviation in CHECKLIST.md.

Source locations

Evidence

Checked by reading at 009d40f5; not executed.

Focused reproduction

No focused reproduction is known. Nothing has been invented here; the evidence above is what exists.

Current tests

WaveBankTests.cpp pins the null result (GetSoundEffectForXmaEntryReturnsNullCleanly).

Regression test

If a decoder is added, a fixture per format.

Blast radius

XACT projects built with xWMA compression for Windows, or Xbox 360 banks with XMA; affected cues are silent with only a stderr line.

Workaround

Rebuild the wave banks with PCM or ADPCM compression.

The same subject is explained at several altitudes. These are the neighbouring pages at each one.

User guide
Audio: XACT