re: the .slb parts are sequential segments — and that closes the original mystery

The last open question was whether the leading XMA1-mono region duplicates the
RIFF sub-wave, which would make the earlier totals double-count. It does not.
Decoding both parts of every bank to mono PCM and measuring energy:

  bank         leading secs / RMS      riff secs / RMS
  VOICE_D_450     0.49 /    158          2.82 / 9898
  VOICE_D_451     0.01 /      0          1.58 / 9128
  VOICE_D_452     0.31 /    301          2.18 / 9061
  VOICE_D_453     2.12 /   9770          0.14 / 14462
  VOICE_D_454     3.07 /  10428          0.43 / 11639

Two shapes, and no bank holds the same content twice. In 450/451/452 the
leading region is silence or near-silence (RMS 0-301 against ~9000 for
speech) and the RIFF holds the line. In 453/454 the leading region holds the
line and the RIFF is a short loud tail fragment. Sequential segments of one
clip, so the totals stand and with them the 48 kHz fit.

This also closes the mystery that started the whole thread. The corpus
recorded 450 = 2.8 s, 451 = 1.6 s, 452 = 2.2 s as plausible but 453 = 0.14 s
and 454 = 0.43 s as "far too short". The decoder skips everything before the
first RIFF: for the first three that discards only silence, so they looked
fine; for the last two it discards the line itself and leaves the trailing
fragment. One rule, two outcomes, depending on which segment holds the
speech.

The fix is now well-posed in a way the withdrawn attempt was not: emit the
leading region only when it carries signal. That also avoids the 1524-bank
blast radius that sank the earlier version.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PMRJjbxLqZtsb5Vb7KunPE
This commit is contained in:
Sylpheed RE agent
2026-08-26 00:26:24 +00:00
parent b32006d2a8
commit ea0eedda86
2 changed files with 46 additions and 3 deletions

View File

@@ -1048,9 +1048,18 @@ premise was wrong.**
are cleared for take-off!", the same for s02A/s07A/s08A/s13A. Someone expecting
a stage-13-specific line would call the generic one wrong while the binding is
right.
❔ Still open: whether the leading XMA1-mono region is *additional* audio or an
alternate take of the same line — the totals above add it to the RIFF sub-waves
and would double-count if it is a duplicate.
**(same day) The two parts are SEQUENTIAL SEGMENTS, not duplicates** — so the
totals do not double-count and the 48 kHz fit stands. Measured by RMS:
`450`/`451`/`452` have a **silent or near-silent** leading region (RMS 0301
against ~9 000 for speech) with the line in the RIFF; `453`/`454` have the line
in the **leading** region with a short loud tail in the RIFF.
🎯 **That closes the original mystery.** The decoder skips everything before the
first `RIFF`. For the first three that discards only silence, so they looked
fine (2.8 / 1.6 / 2.2 s); for the last two it discards **the line itself**,
leaving 0.14 s and 0.43 s. One rule, two outcomes, depending on which segment
holds the speech. ▶️ The fix is now well-posed: emit the leading region **only
when it carries signal**, which also avoids the 1524-bank blast radius that
sank the earlier attempt.
***(2026-08-25) The `.slb` "multi-subwave" guess is REFUTED, and the voice
decoder is discarding up to 87 % of a bank.** The record table gives a
**direct** binding `hokyu_DS_s13A -> VOICE_D_452` where the corpus records the