HePai

Features

Features

Real-time C++17 engine. Sample-accurate scheduling. Zero dependencies.

Sample-accurate

No Timer. Beat boundaries are computed from sample counts: samplesUntilNextBeat = sampleRate × 60 / bpm.

Per-beat subdivisions

Triplet on beat 1, sixteenths on beat 2, plain on beat 3 — coexisting in one engine.

6 sounds

Wood, Click, Beep, Drum, Shaker, Cowbell. Each synthesized with a custom ADSR envelope.

Training

Start at 60, +5 every 4 bars, stop at 140. Help your hands catch up to your ears.

Zen

One pulse, breathing rhythm. Focus is designed.