Why I replaced looping MP3s with live Web Audio API math for my focus timer (Cadenzato)
Описание и применение
Cadenzato заменяет повторяющиеся MP3‑потоки живой генерацией звука через Web Audio API, устраняя рекламу и усталость от повторов, а также снижает нагрузку на GPU, приостанавливая рендеринг холста при переключении вкладок.
Задача
Developers experience interruptions from mid-roll ads and audio loop fatigue when using ambient focus apps, and visual timers can consume significant GPU resources.
Результат
Cadenzato eliminates mid‑roll ads and audio loop fatigue while keeping CPU/GPU usage minimal, enabling developers to maintain deep focus during coding sessions.
Рабочий процесс
- 1. User opens Cadenzato in the browser.
- 2. Presses Space to start a Pomodoro interval (e.g., 50/10).
- 3. Selects or mixes audio channels (Brownian noise, rain, hearth fire, binaural pulses).
- 4. The app synthesizes each sound live using custom Web Audio API graphs.
- 5. Canvas scenes render at 60fps only while the tab is visible; when hidden, rendering stops and GPU usage drops to 0%.
- 6. User returns to IDE; audio continues uninterrupted, no ads or accounts required.
Доказательства
Most ambient focus apps and streams just loop a 60-second MP3 file.
Cadenzato synthesizes every sound wave live in the browser using a custom Web Audio API graph
The instant you Alt+Tab back to VS Code or switch windows, the canvas render loop suspends completely to 0% GPU usage while the Web Audio synthesizer continues running on its dedicated audio thread.
- Дата записи: 2026-11-01T21:58:44.600Z