Spaces:
Sleeping
Sleeping
Commit History
-
Add drum transcription with madmom onset detection + spectral classification
Ewan +1: Claude Opus 4.6New feature: Drums tab in full song mode. Uses madmom RNNOnsetProcessor for high-quality onset detection on the Demucs drums stem, then classifies each hit (kick/snare/hi-hat/crash/ride/tom) by spectral content using librosa features (centroid, flatness, ZCR, frequency band energy). - transcriber/drums.py: drum transcription pipeline - DrumSheet.jsx: lane-based drum grid renderer (color-coded by instrument, diamonds for cymbals, X for hi-hat, circles for kick/snare/toms) - usePlayback.js: synthesized drum kit (MembraneSynth for kick/toms, NoiseSynth+MembraneSynth for snare, MetalSynth for hi-hat/crash/ride) - Dockerfile: install madmom from git (PyPI version incompatible with 3.12) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>eed42a3
-
Fix bass in piano roll, upgrade guitar samples, improve bass optimizer
Ewan +1: Claude Opus 4.6- Piano roll: use pianoRollNotes (bass filtered) for audio scheduling, not full notes array. Bass was bleeding through to piano playback. - Guitar samples: switch from Magenta SGM+ (sparse MP3 every 3 semitones) to tonejs-instruments (University of Iowa chromatic OGG recordings for acoustic, Karoryfer for electric). Much warmer, less tinny. - Bass optimizer: add pitch floor (E1=28), percussion bleed removal (short notes + spectral centroid check), octave error correction (contour-based), isolated note removal. Should produce cleaner bass lines with fewer wrong notes. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>1c51e5f
-
Remove unused vocal transcription and arrangement from full song pipeline
Ewan +1: Claude Opus 4.6The arrangement engine output is no longer used (piano roll shows the "other" stem directly). Skip vocal transcription, vocal optimization, and arrangement generation to save ~15-20s of processing time. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>477c19c -
Use direct melodic transcription for piano roll instead of arrangement
Ewan +1: Claude Opus 4.6The arrangement engine (vocals + chord voicings) was producing poor results because vocal transcription via Basic Pitch is inherently noisy and chord detection on mixed stems compounds errors. Now the piano roll uses the "other" stem transcription directly — the same data that produces good guitar tabs. This is the actual transcribed melodic instruments (guitar, piano, synths) rather than a lossy derivation. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>a14f449 -
Improve transcription quality + upgrade to Magenta SGM+ samples
Ewan +1: Claude Opus 4.6Bass optimizer: - Lower pitch ceiling from MIDI 64 to 55 (G3, full 4-string bass range) - Add monophonic enforcement (keep lowest pitch at each onset) - Add spurious onset removal - Fix overlap trimming to trim against ANY next note (bass is monophonic) Vocals optimizer: - Add pitch ceiling at MIDI 84 (C6, soprano range) - Add pitch floor at MIDI 40 (E2, below = bass territory) - Add phantom high note removal - Add spurious onset removal Samples: Replace tonejs-instruments with Google Magenta SGM+ soundfont (acoustic_guitar_steel, electric_guitar_clean, electric_bass_finger). Higher quality source recordings, professional soundfont. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>83ff7ad -
Sample-based guitar/bass sounds, filter bass from piano roll, two guitar tabs
Ewan +1: Claude Opus 4.6Replace synthesized PluckSynth/MonoSynth with real recorded samples from tonejs-instruments (acoustic guitar, electric guitar, bass electric). Filter bass notes from piano roll in full song mode. Split guitar tab into Acoustic Guitar and Electric Guitar views. Update timing estimate. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>aeb0fce