Drum kit guitar-bleed audit

Band practice 8.28, four-mic master. Why the kick reads as a kick and the snare reads as a guitar. Measured 2026-09-04 on Brandons-MacBook-Pro.

Verdict

The skill transfer is intact. jam-stem-rebuild/SKILL.md on this Mac still carries the correct ordering at step 5 and step 6: Demucs first, DrumSep second, on the Demucs drums.wav. Nothing was lost from the other machine.

The 8.28 v2 run departed from that ordering. It fed a raw room mic straight into DrumSep, after boosting +5 dB at 2.5 kHz and +7 dB at 6 kHz, which is the exact band the guitar amps occupy. DrumSep was trained on already-isolated drum stems, so it had no way to reject the guitar. It sorted the guitar into the snare and cymbal lanes.

The good kits already exist on disk for 11 of 13 songs. Fixing this is hours, not three days.

Status: Phase 1 is running now

Launched 2026-09-04T15:42:49 as launchd job com.drwu.phase1-song12-song16. It runs do_song.sh on the two songs that have no clean kit, which is the correct path: tilt, then Demucs htdemucs_6s, then DrumSep six-piece, then declick assemble. It verifies itself at the end by re-running the guitar-bleed measurement against the verbatim guitar mic and writing the table into its own log.

The 13 contaminated kits were quarantined at 2026-09-04T15:44, 17 GB moved into v2-mic-lanes/…/delete/CONTAMINATED-drumkits-2026-09-04/. Nothing was deleted. Each song folder keeps a QUARANTINED-drumkit.md naming the new location and the reason. The verbatim mic lanes were not touched.

Log: ~/Projects/_outputs/band-practice-stems/8-28/phase1_song12_song16.log. Completion marker: PHASE1_DONE.

1. Hear it first

Song 13, seconds 64 to 82, every clip loudness-matched to −16 LUFS so quiet lanes are audible. The percentage is how much of that lane a least-squares projection of the two guitar mics explains. Lower is cleaner.

Reference: what the guitar actually sounds like

reference

Guitar mic 3, verbatim

The independent transducer. Every number below is measured against this.
separator input

Kick mic 1, verbatim

41.6%

The room mic handed to DrumSep. Nearly half of it is guitar before separation begins.

Snare lane, the worst case

mic-direct, current v2 output

snare.wav

58.5%

Spectral centroid 1011 Hz, 4.5% of energy above 5 kHz, 125 onsets per minute. A real snare crack is broadband. This is a midrange instrument sitting in the snare lane.
Demucs-first, already on disk

snare.wav

1.9%

Centroid 3445 Hz, 27.4% above 5 kHz, crest factor 32.2 dB. That is a snare.

Crash and ride

mic-direct

crash.wav

48.2%

Demucs-first

crash.wav

4.4%

mic-direct

ride.wav

26.7%

Demucs-first

ride.wav

4.9%

Prototype: cancel the guitar mics out of the kick mic first

before

Kick mic 1

41.6%

Raw room mic.
after block-wise Wiener cancel

Kick mic 1, guitar removed

17.1%

Kick band 40 to 120 Hz retained at 96%, the 2 to 6 kHz band down to 81%. The mics are sample-locked, so the leakage path is a fixed linear filter and it solves cleanly.

2. The measurement, all 13 songs

Percent of each drum lane explained by the two verbatim guitar mics, per-frequency-bin least squares over a window inside each song. The guitar mics are separate physical transducers, so this test never asks a model to grade its own output.

under 10%, clean10 to 25%, marginalover 25%, contaminated

songpathkicksnaretomshhridecrash
song1031–75smic‑direct34.352.645.537.134.425.1
Demucs‑first25.17.82.010.79.222.5
song11134–194smic‑direct22.225.660.423.125.820.5
Demucs‑first19.97.820.611.17.211.3
song1230–72smic‑direct15.954.525.525.022.917.8
Demucs‑firstno Demucs-first kit on disk
song13159–219smic‑direct25.776.935.120.826.829.1
Demucs‑first22.97.95.725.210.412.1
song1441–99smic‑direct9.573.042.926.654.23.0
Demucs‑first3.61.13.94.21.61.3
song15121–181smic‑direct19.657.039.218.223.36.2
Demucs‑first14.36.819.05.72.25.8
song16102–162smic‑direct40.058.832.912.652.49.6
Demucs‑firstno Demucs-first kit on disk
song17188–248smic‑direct11.662.060.813.425.28.3
Demucs‑first11.40.94.73.56.33.0
song1893–153smic‑direct5.528.047.617.141.614.8
Demucs‑first3.29.82.612.210.514.1
song19143–203smic‑direct34.256.256.720.634.45.6
Demucs‑first4.52.61.46.542.710.8
song2049–109smic‑direct23.643.543.525.442.141.2
Demucs‑first21.77.06.16.75.719.3
song2169–129smic‑direct20.951.617.129.722.935.2
Demucs‑first6.31.50.63.22.13.7
song2269–129smic‑direct31.462.823.727.237.821.1
Demucs‑first12.42.44.08.45.02.3

Snare lane across the 11 paired songs. Mic-direct runs 25.6% to 76.9%, median 56.2%. Demucs-first runs 0.9% to 9.8%, median 6.8%. Every single song moves the same direction. Song 12 and song 16 have no Demucs-first kit yet, which is the only real work outstanding.

3. Why it happened

4. The three-phase fix

Phase 1 — Adopt the kits that already pass, fill the two gaps

Status: running since 2026-09-04T15:42:49 under com.drwu.phase1-song12-song16. Quarantine of the 13 contaminated kits completed at 15:44.

Phase 2 — Level and air, through the skill that already encodes it

Cost: minutes per song, scripted.

Phase 3 — The punchy version, proven on one song before any batch

Cost: one 90-minute validation run, then a decision. This phase is optional and it does not block Phase 1.

5. Method and reproduction

Every number on this page comes from one measurement. For each frequency bin f, solve the least-squares gain a_f that best predicts the lane magnitude from the guitar mic magnitude, then report the explained energy as a fraction of the lane's total. The reference is always a verbatim guitar microphone, never a model output, so the test cannot be gamed by the separator that produced the lane.

A lag search from −3 s to +3 s was run on the Demucs-first kit to rule out the possibility that its low scores came from time misalignment. Best-lag snare was 2.2% against 1.9% at zero lag, so alignment is not carrying the result.

Measured 2026-09-04 on Brandons-MacBook-Pro with ~/venvs/audio_midi_311. Window sizes and offsets per song are recorded in the sweep JSON. Audio clips are loudness-matched for listening and are not the delivered levels.