- 500ms end-to-end latency (16kHz @ 8000-sample chunks)
- Signal processing: Custom FFT (whistles) + peak detection (claps)
- ML classification: MediaPipe's YAMNet (521-class model)
graph LR
A[Microphone] -->|16kHz chunks| B[Custom Preprocess]
B --> C{Is it a clap/whistle?}
C -->|Yes| D[ Fast-Track]
C -->|No| E[YAMNet ML Model]
D & E --> F[ Classified Result]