SIDETONE
Desktop-приложение для мониторинга голоса с профессиональной задержкой 4ms.
SIDETONE — Мониторинг голоса с задержкой 4ms
Проблема: Когда поёшь в наушниках, слышишь себя с задержкой. GarageBand даёт 30-100ms, Audacity — 40-200ms. При задержке больше 15ms петь невозможно — мозг сбивается. Профессиональные аудиоинтерфейсы (Behringer, Focusrite) решают проблему “direct monitoring”, но стоят от $60 и требуют дополнительного железа.
Моя ситуация: Я люблю петь. Хотел простое решение — включить и слышать себя без задержки. Программного решения на рынке не было.
Решение:
- Desktop-приложение на Rust + Tauri + React
- Прямая работа с CoreAudio (macOS) через низкоуровневый API
- Автокалибровка: определение оптимальных параметров железа за один клик
- Измерение задержки через cross-correlation chirp-сигналов (2-10kHz sweep)
Результат:
- 4.2ms latency — профессиональный уровень на обычном железе
- 0.00ms jitter — абсолютная стабильность (в отличие от софтверных решений)
- <2% CPU на Apple Silicon
- One-click setup — никаких танцев с настройками
Стек:
- Rust — ядро аудио-движка (CPAL + CoreAudio bindings)
- Tauri 2 — нативное desktop-приложение без Electron bloat
- React + TypeScript — UI
- Cross-correlation — алгоритм измерения latency с субмиллисекундной точностью
Статус: Готовится к релизу. Цена — $19.99 (vs $60+ за аппаратное решение).
Вывод: Иногда лучший способ решить проблему — написать софт самому. Rust дал возможность работать с аудио на уровне, который раньше требовал отдельного железа.