M8 Groove Extractor

drop a loop → trim → divine BPM + hits → receive GROOVE table hex

Drop a wav / mp3 here or click to browse — drag to trim · wheel to zoom · shift+wheel to pan · dbl-click to reset trim
transport
bpm
hit sensitivity
groove length
groove ppqn
trim (s)
file
no file loaded
groove table — enter these tick values into an M8 groove, rows 00–0F
How it works: at the groove’s PPQN, each 16th row gets PPQN÷4 ticks (24 PPQN → 6/row, so 06 06 06 … = no groove). Each detected hit’s offset from the grid is measured and rounded to whole ticks (1 tick = 16th ÷ ticks-per-row). A hit that lands late pushes ticks into the previous row and takes them from its own — e.g. row 2 late by 1 tick at 24 PPQN → … 07 05 …. The rows always sum to 16 × ticks-per-row (96 at 24 PPQN), matching the M8’s tick-sum help line, so tempo never drifts. Higher PPQN shrinks the rounding residual. Values are floored at 01 since 00 would skip the phrase step. Blood-red marks on the waveform are detected hits; violet marks are where the reconstructed groove will place each row.