feat(opal26): every boundary settled — segments_v4 generated, 14 tracks
PLN's last call: "00:31:3 is a decent end of crimewave to cut early on end of
the crime sound". Read off the transport, which shows CLIP time, and #14's clip
starts at 4135.0 — so master 4166.3. The audio agrees rather than merely
permitting it: the crime sound gaps to -71 dB at 4164.5 and 4166.3 sits just
past that on its decay, 13.7 s before the nominal 4180.0. Recorded with that
mapping written out, because clip-vs-master is the one confusion that would
shift a cut by 45 s and look plausible.
apply_boundaries.py turns the ear file into segments_v4.json. Made a tool rather
than a hand edit because this is the step that shipped a wrong album once, and
its three rules are each silently destructive to get wrong:
- starts come from the ear, ends from the neighbour (butt-joined), so editing
one start moves two tracks;
- a track CUT from the release still owns its boundary — Desire is dropped but
the edge into Desire is where Vague de CRIME ends, and ignoring it would run
the last official track into Desire's intro;
- release position is not track number: dropping a track renumbers the album
but must not renumber the provenance, so both `n` and `track` are emitted.
It refuses to write on overlap, non-positive duration, out-of-master range, or
an ear-verified start that failed to reach the output. All green:
14 tracks, 73.4 min kept of a 79.8 min master, 6.4 min dropped (Desire).
Remaining unverified edge, for the record: #2's start (531.35) is still the
nominal, so #1's end rides on it. It was never flagged in the judge pass.
Ear feedback archived in performance_notes.md, including the finding that #11
and #12 disagree about which fraction is right — takeover on one, mid on the
other, 8 s apart. Two adjacent cuts, opposite answers: where a cut belongs is a
musical judgement about that handover, not a parameter to fit.
Showing
armada/tide-table/apply_boundaries.py
0 → 100644
Please
register
or
sign in
to comment