Length & density
Choose bar count, scan stride and overlapping alternates. Short audition slices help you tune a harvest before processing a whole mix.
--bars · --harvest-stride-beatsHeadings keep the original Spectrascope (Archive) font. Your text font and palette follow you across this site. Ghost circuit effects can be switched off; reduced-motion settings are respected.
LOCAL AUDIO TOOLKIT · GNU GPL v3.0
Beat Chopper turns long recordings into a library of phrase-aware 4/4 loops. Not just a grid and a pair of scissors: tempo, musical boundaries, and transient evidence guide the cut.
01 / INSIDE THE CUT
Instead of assuming the first beat defines the whole mix, the chopper works from local tempo down to the exact transient. Default runs target eight-bar loops and retain nearby alternatives.
Read MP3, WAV, AIFF or FLAC. Analyze long sources in five-minute tempo segments.
Use kick, backbeat, crash, release and harmonic evidence to locate sections and phrases.
Search nearby sixteenth-note starts, score grid and edge evidence, and retry uncertain regions.
Write WAV loops, BPM/key filenames and a JSON database explaining the source range and warnings.
02 / YOUR FIRST CUT
Install Python 3.9+ with compatible dependencies. Start with a short section of a steady 4/4 recording you own or have permission to use.
The command below tries a two-minute slice and exports four-bar loops. The full README includes setup notes, every option and troubleshooting.
Full installation guide ↗git clone https://github.com/mnicholas7/beat-chopper.git
cd beat-chopper
python3 -m venv .venv
source .venv/bin/activate
python -m pip install -r requirements.txt
python loop_chopper.py \
"audio/my-mix.wav" "output/audition" \
--offset 120 --duration 120 --bars 4Windows activation: .venv\Scripts\activate. Other OS workflows are not certified.
03 / SHAPE THE HARVEST
Choose bar count, scan stride and overlapping alternates. Short audition slices help you tune a harvest before processing a whole mix.
--bars · --harvest-stride-beatsUse local tempo segments or global analysis. Keep, mute or trim detected next-downbeat tails, with diagnostics to compare the result.
--tempo-segment-seconds · --tail-next-one-modeEstimate key per source segment or per loop, or switch it off. Detailed alignment metadata helps answer “why did it cut here?”
--key-mode · --debug-align04 / OUT OF THE TOOL
Drop the exported WAVs into your DAW or sampler and listen. The filename carries tempo and key; the JSON database preserves the source timeline and alignment evidence.
The optional Rubber Band post-pass repairs transient timing into separate files. MIDI helpers create sample triggers and SP-404MKII-style bundles—not melodic or drum transcription.
output/loops/
├── my-mix/
│ ├── 000_A_min_122.47BPM_my-mix.wav
│ └── 001_A_min_122.47BPM_my-mix.wav
├── loops_database.json
└── .analysis_cache/
05 / NEXT POSSIBILITIES
These are ideas, not shipped features. Help turn a practical command-line tool into a more transparent, expressive chopping workflow.
CODE, NOT A SAMPLE LIBRARY
GNU GPL v3.0 · Use audio you have rights to. The code license does not grant recording or composition rights.