diff --git a/docs/impl/plans/INITIAL.md b/docs/impl/plans/INITIAL.md index b15b0ce..72e7045 100644 --- a/docs/impl/plans/INITIAL.md +++ b/docs/impl/plans/INITIAL.md @@ -54,3 +54,16 @@ app is developed with no Jetson present. The stream carries a flag when it does. Rendering synthetic readings indistinguishable from real ones, on a screen in a moving car, is a safety problem. The indication belongs on the display surface itself, not in a settings page or a startup log. + +## This app is the audio sink + +The tablet owns the car's aux input and is the music player, so the Orin's speech +has to arrive here to be heard. + +- TTS arrives as **discrete utterances** over the reliable channel, not as a + real-time stream. Receive the whole thing, then play it — no jitter buffer. +- Duck other audio with `AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK` for the duration of + the utterance, then release. That is what makes Spotify drop under the voice + without either side coordinating. +- The microphone stays on the Orin. This app never captures audio; ASR input never + crosses the boundary.