
ASSET LEDGER
The Night Huntress Asset Audit: A 98-File Canon Library and the "Highest Version Wins" Rule
A 98-file canon library, a highest-version rule, and byte-for-byte archive verification.
FAILURE & REPAIR

The full mix passed QA. The narration did not. Here is the repair record.
This video’s QA report was all green: resolution passed, frame rate passed, subtitles passed, “no clipping” passed, “audio present” passed. But the narration was silent — all 17 narration segments were barely audible from start to finish, because one fade-out parameter in the assembly script had its start point wrong by the length of a segment. This is the true story of Veiled Lore Atlas’s Doll Island V1, and the reason per-segment volume verification is an iron rule here now.
Overall loudness can never prove narration exists: peaks get held up by sound effects and averages get washed out by the noise bed. There is exactly one way to verify narration — measure it segment by segment. Every segment’s mean must be above −25 dB and its max above −10 dB, and the check isn’t done until every segment has been measured.
Doll Island V1’s automated QA report (2026-10-12) read like this: 1080×1920 ✓, 30 fps ✓, all 20 sampled frames unique ✓, 50 subtitle lines ✓, no Traditional-character violations ✓, no clipping (max −2.8 dB) ✓, audio present (mean −31.7 dB) ✓ — ALL PASS.
The problem: that −2.8 dB peak came from the wooden-clapper effects and the ambience bed, not from narration. The −31.7 dB overall average was mostly the noise bed contributing. The narration track’s actual state was measured in the follow-up investigation: in the narration mix, the 4–14 second segment had a mean of just −51.8 dB and a max of −18.7 dB — by any human standard, silence. Every green light on the report was genuine; none of them was measuring whether the narration existed.

When the assembly script extracted each narration segment, it applied a closing fade: afade=t=out:st=0:d=0.15. The intent was “fade out over the last 0.15 seconds of the segment”. But st=0 means the fade starts at second 0 of the segment — so every narration segment began decaying toward silence the moment it started, reached it within 0.15 seconds, and the sentence was strangled. All 17 segments, every one.
During the repair we ran a controlled measurement to quantify what that one parameter does:
| Parameters | Narration segment mean | Narration segment max |
|---|---|---|
| Broken (st=0, fade from segment start) | −68.2 dB | −39.5 dB |
| Fixed (st = segment length − 0.15, fade at segment end) | −20.3 dB | −0.9 dB |
Same audio file, same narration segment — changing only the fade’s start point moved the average level by about 48 dB. This class of parameter error is the sneakiest kind: it throws no error, crashes nothing, and produces an output of exactly the right duration that looks fine in every respect. Only listening — and measuring segment by segment — catches it.
The repair was deliberately scoped small: rebuild only the audio track (17 narration segments re-aligned, loudness normalization, the noise bed and clapper effects carried over from the original), copy the video stream through untouched, total duration unchanged at 110.9 seconds. Verification no longer looked at overall figures; it measured five narration segments individually:
| Sampled segment | Mean | Max |
|---|---|---|
| 4–14 s | −18.3 dB | −2.5 dB |
| 20–30 s | −17.5 dB | −2.2 dB |
| 40–50 s | −16.8 dB | −2.4 dB |
| 55–65 s | −17.1 dB | −2.4 dB |
| 98–108 s | −17.1 dB | −2.4 dB |
All five passed the new thresholds (mean > −25 dB, max > −10 dB). The record even keeps an honest footnote: the 20–30 s segment’s max of −2.2 dB sits 0.3 dB above the −2.5 dB target — inaudible, no clipping risk, ruled not worth a re-run. A QA record that writes down even that is a record you can trust.
This checklist has been fixed procedure ever since. The next production (Minxiong Haunted House EP02) wrote “compute the fade-out start from the measured narration length” directly into its assembly script comments, aimed at this exact pit:
House rule — this section is never skipped:
Copy this checklist as-is. A narration strangled by its own fade-out is the sneakiest failure in AI video audio: no error, no crash, and an overall loudness figure that covers for it. Per-segment volumedetect is the cheapest defense we know, bought with one shipped video’s failure: every segment mean above −25 dB, max above −10 dB, and fade starts always computed from segment length. If you remember one thing: a pretty overall peak and an existing narration are two different facts.
Because the checks measured the whole track: the −2.8 dB peak came from the wooden-clapper effects and the noise bed, not the narration, and the −31.7 dB overall average was mostly the bed as well. No check measured the volume of the narration segments themselves, so the narration’s absence was invisible on the report.
afade=t=out:st=0:d=0.15 means “start fading out at second 0, over 0.15 seconds” — the author meant an end-of-segment fade, but the effect was that every narration segment decayed to silence the moment it began. The correct form sets the fade start to the segment length minus the fade duration, so the fade happens only in the segment’s final 0.15 seconds.
From the Doll Island V1 repair: after the fix, five sampled segments measured mean −16.8 to −18.3 dB and max about −2.2 to −2.5 dB, while the broken narration sat below −51.8 dB mean. The thresholds sit between the two with generous headroom: narration segments must beat −25 dB mean and −10 dB max. They are field values for a narration track, not an industry standard.
Measuring is cheap, and measuring all of them is ideal; the five samples were how that particular repair was verified, chosen across the runtime’s head, middle and tail. The standing procedure since then measures every segment — with narration typically running 17–20 segments, a full pass costs nothing but a few more volumedetect runs, so there’s no reason to sample.
Yes, in different clothes: any fade whose start point is relative to the whole timeline rather than to its own clip will bite you in segmented assembly. The defense is tool-independent — before shipping, measure the volume of every narration segment, and when a number is wrong, go back to the parameters instead of reassuring yourself with the overall figure.
Our reviews, pricing and field notes on the major tools live at DC Affiliate — including the pits that never make the official feature pages.
From verbatim script verification to per-segment volume QA, this pipeline is available as a done-for-you or consulting engagement at David Chen Studio.