REAL VOICES. REAL LIMITS.
FOLLOW THE CHOIR.
SHOW THE MISSES.
Real choir recordings. Different tempos. Deliberate stops. Here is how the follower behaved before and after the changes.
01 / LOOK INSIDE A TEST
Where it loses its place
Before: loss intervals
After: loss intervals
Stops and restarts
Recovery means guidance is permitted and the estimate is within one interpolated beat. “Not recovered” means that condition was not reached before this excerpt ended.
02 / EVERY SCENARIO
The full comparison
On a phone, swipe the table to see every column →
| Test | Within one estimated beat | Confidently wrong >1 measure | First substantial loss |
|---|
03 / WHAT THIS PROVES
Read the test honestly
- The test starts at a known score position. Most cases also start with an estimated tempo; deliberately wrong-tempo cases are labeled. Finding an unknown starting point is not validated.
- Pitch-preserving tempo changes and inserted digital silence stress the same source recordings. Real conducting pauses and acoustics can behave differently.
- Audio is processed offline. Phone microphone routing, earbud bleed, processing delay, and the timing of notes heard by a singer are not validated here.
Analysis settings and reproducibility
04 / LIVE APP PATH
Real audio through the app
Slower-phone simulation
| Visible panel | Long tasks before → after | Main-thread seconds before → after | Capture interval p95 before → after |
|---|
The recording was injected as a MediaStream through the actual microphone follower, audio engine, and interface. This validates a desktop app path with simulated load. It does not test a physical phone, microphone acoustics, earbud leakage, or audible synchronization.
Browser test details
05 / CPU PROFILE
Less work per audio frame
These timings come from Node.js on the development computer. They exclude browser FFT, microphone capture, UI, the audio scheduler, and output latency. They are not phone performance measurements.
On a phone, swipe the table to compare before and after →
| Work | Before optimization median / p95 | After optimization median / p95 | Median speedup |
|---|
CPU profile method
BACK TO YOUR VOICE
Try the tested hymn setting.
The standard G-major SATB setting of “Come, Come, Ye Saints” matches the hymn recording used here. The separate 1919 setting remains available in the player.