re: a bank's wave 1 is not a filtered copy of wave 0 -- and my own discriminator cannot finish the job

Coherence on BGM_103, the menu's bank, with controls run first: a real linear
filter of wave 0 reads 0.93-0.94 in every band, a different bank reads 0.001, and
wave 0 misaligned by 1 s reads 0.004-0.057. The measurement reads 0.027 at 1-4 kHz,
so the 'wave 1 is wave 0 filtered' model is refuted.

The frequency structure is inverted relative to any mic-pair or reverb model:
coherence rises with frequency (0.169 -> 0.827) while energy falls (71 % -> 0.2 %),
and a rear pair decorrelates fastest at HF. In the midrange the two waves are 13x
further apart than the two channels of one wave.

But the L-R control is what limits the tool and it is recorded as such: within one
wave, genuinely one performance in two channels, coherence is only 0.221-0.497. So
'same performance' does not imply high coherence here, my positive control was the
wrong model of the rear-pair reading, and the 🟡 is NOT settled. The tool tests for
linear filtering and neither surviving reading requires it.

Also corrects MISSION's Q10 row, which still carried the refuted three-sub-wave
premise and had directed work at a dead question for days. Its gate is in fact met.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Wuu56cE8vJGTBtn1ppsk8v
This commit is contained in:
sylph-decoder
2026-08-30 20:17:23 +00:00
parent 81e84d6ec6
commit dcfb53bc9b
5 changed files with 243 additions and 1 deletions

View File

@@ -74,7 +74,7 @@ alongside it.
| **Q7** | **Transitions.** What happens visually between screens — the `pteff00.prm` quads, a fade, a cut — and its timing | Described and timed against a capture |
| **Q8** | **Menu audio.** Which BGM per screen; which cue on move / confirm / back / error. The cue table is complete; the event binding is not | Cue names bound to events, with how you established each |
| **Q9** | **Video binding.** Which movie is the boot intro vs the new-game intro; whether playback is skippable and what ends it | Named movies plus the playback rules |
| **Q10** | **What are a music bank's sub-waves?** `BGM_001.slb` is three sub-waves — 10 KB, 4.47 MB, 4.67 MB — and we currently **concatenate them blindly** into one 347 s track. Two near-equal halves could be intro + loop, or two variations, or two halves of one piece. A menu that loops its music needs to know which | The role of each sub-wave, established for at least the menu BGM. "Concatenate" is a decision, not a default — right now it is a default nobody chose |
| **Q10** | ~~**What are a music bank's sub-waves?**~~ ✅ **ANSWERED — see below.** Every factual premise in the original row is refuted: a bank is **two** waves, not three (the 10 KB was the bank *header*, emitted by our own reader), and the three candidate roles it listed — intro + loop, two variations, two halves — are all dead. | ✅ **Gate met.** Role established on the menu's own bank: [`bgm-two-stems.md`](../re/structures/bgm-two-stems.md). 🟡 One sub-question survives — *which kind* of second stem — and it is 🟡 by measurement, not by neglect |
| **S1** | ~~**Ready Room probe.**~~ **DONE 2026-08-28 — [no-go](../re/ready-room-probe.md).** It is 2D and enumerates fine, but the pak is briefing/tactical-map content, not the Ready Room menu | ✅ go/no-go written |
## ✅ Emulator-side questions are NOT blocked — corrected 2026-08-30
@@ -290,6 +290,37 @@ What needs a decision is which way the divergence gets closed:
Recorded rather than chosen, per "do not improvise around a blocker".
## ✅ Q10 is answered — corrected 2026-08-30
The Q10 row above was written on a premise that has since been **refuted in every
part**, and it survived as a live question for days after the refutation landed.
Recording the correction here rather than silently editing the row:
* ❌ *"`BGM_001.slb` is three sub-waves (10 KB, 4.47 MB, 4.67 MB)"* — the 10 KB is
the **bank header**. Our reader emitted it, from a modulus valid only for a
header shorter than one XMA packet. A bank is **two** waves, **28/28** disc-wide.
* ❌ *"we currently concatenate them blindly"* — and concatenating is **wrong**,
now measured: the two waves are **sample-synchronous** and the running game
decodes **both at once** (the XMA probe at the main menu saw two stereo streams
whose byte sizes are `BGM_103`'s two declared waves, exactly).
* ❌ *"could be intro + loop, or two variations, or two halves of one piece"* — all
three predict unequal durations; **32 banks give equal ones**.
* ✅ **The gate — "the role of each sub-wave, established for at least the menu
BGM" — is met**, and on the menu's own bank: `BGM_103`, named from the
executable, confirmed against the disc and against the running game.
🟡 **What is still open is narrower than the row**: *which kind* of second stem —
the rear pair of a 4-channel mix, or a second intensity layer. Both predict
simultaneity, so runtime observation cannot separate them, and a coherence
discriminator run 2026-08-30 **refuted the "filtered copy" model but could not
separate the two** — its own control showed that in this material even L vs R of
one performance reads only 0.22–0.50, so the test's premise does not hold.
[`../re/data/bgm-stem-coherence.txt`](../re/data/bgm-stem-coherence.txt)
⚠️ **This distinction does not block the port.** Both readings give the same
instruction: play both waves, aligned at sample 0, together. It changes only how
they would be *mixed* if the port ever does surround.
## Known unknowns — say so, do not fill them in
Some of these may turn out to be undecodable. That is a valid, useful answer, and