SIDETONE
CODODELDEV
EN / RU
← Назад к работам
SIDETONE

SIDETONE

Desktop-приложение для мониторинга голоса с профессиональной задержкой 4ms.

#Rust #Tauri #React #CoreAudio

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 дал возможность работать с аудио на уровне, который раньше требовал отдельного железа.

[ ▲ 0 ]