makepad/tools
Admin 97e9572f42 speech: one STT/TTS API on every platform, through the ai-hub
Apps ask the hub for a recognizer or a voice and get one; where it runs is
the hub's decision. AiHub::start_stt / start_tts return poll-driven
sessions shaped like the chat session. The Auto ladder is Whisper/Kokoro in
this process (weights present, machine election), on the machine node over
loopback, on a LAN node, else the OS engine; SpeechReach::Local is the
"don't reach out" knob. Audio always comes back as PCM: the app owns the
device.

Three layers:
- makepad-ai-speech is the whole speech model family, engines only.
  libs/voice (Whisper + Silero VAD) folds in as the `whisper` and `vad`
  modules next to kokoro and indextts, each a cargo feature; the Apple
  bridges and the Speaker/VoiceTranscriber selection leave it.
- makepad-system-speech (new) is the OS speech services as blocking fns:
  Apple SpeechAnalyzer/AVSpeechSynthesizer via Swift, Windows.Media.Speech*
  on the vendored bindings, Android SpeechRecognizer/TextToSpeech through
  MakepadSpeech.java (API 26 floor), espeak-ng on Linux. It models the two
  STT shapes honestly: PCM in (Whisper, Apple) versus an engine that owns
  the microphone (Android, Windows), with capabilities the caller reads.
- the hub grows speech sessions, in-process Whisper/Kokoro workers with the
  residency election, a `whisper` wire backend (stt domain, registry entry
  pinned to ggerganov/whisper.cpp) so a Mac can serve a Quest, and a
  `language` field on the generate request.

Consumers: the Window voice input runs on an STT session and switches to
engine-mic mode when the recognizer owns the microphone; converse's
SpeechOutput is a lazily started TTS session plus a pump thread; route
drops its private speech copy for converse; vj's lyrics fallback and the
alignment bakes call the engines directly.

Verified here: speech-roundtrip through the real sessions (Apple voice in,
in-process Whisper on Metal out, 4.3% WER); system-speech-test TTS->STT
verbatim; hub/converse/system-speech unit tests; msvc, aarch64-android and
linux-gnu cross-checks; Java against android-34. Windows, Android and Linux
bridges are compile-checked only.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-01 23:32:35 +02:00
..
android xr otw 2026-03-12 15:51:30 +01:00
apple Initial commit 2025-05-06 10:11:37 +02:00
auto_version 1.0.0 2025-05-15 16:46:16 +02:00
brotli_check WASM Binary Optimization + Splitting (#925) 2026-03-09 18:52:49 +01:00
cargo_makepad speech: one STT/TTS API on every platform, through the ai-hub 2026-09-01 23:32:35 +02:00
map_bake maps + route: the self-baking Amsterdam test map, reversible mkmap weave, the rtsmap generator, road faces, guarded first-run 2026-09-01 16:46:33 +02:00
map_tiles maps + route: the self-baking Amsterdam test map, reversible mkmap weave, the rtsmap generator, road faces, guarded first-run 2026-09-01 16:46:33 +02:00
open_harmony Initial commit 2025-05-06 10:11:37 +02:00
profiler profiler 2026-04-28 12:33:05 +02:00
remote Land platform, studio, and widget infra from rik2. 2026-08-18 14:23:57 +02:00
rustup Initial commit 2025-05-06 10:11:37 +02:00
wayland_codegen selection: clipboard delegate, primary selection, mobile handles (#912) 2026-03-06 12:17:25 +01:00
web_server rename network 2026-03-03 09:18:19 +01:00
windows_bindgen windows: the vendored bindings are generated from a checked-in filter 2026-09-01 23:32:35 +02:00
windows_strip Land platform, studio, and widget infra from rik2. 2026-08-18 14:23:57 +02:00
cargo_publish.sh network refactor 2026-02-24 14:04:37 +01:00
check_loader_removable.sh chore: workspace members for the new crates, makepad.splash, the naming and loader check scripts, and error_log 2026-08-26 08:49:50 +02:00
check_naming.sh chore: workspace members for the new crates, makepad.splash, the naming and loader check scripts, and error_log 2026-08-26 08:49:50 +02:00
download_cef.sh Clean the public tree for a checkout other people can use. 2026-08-18 15:23:19 +02:00
download_map.sh Clean the public tree for a checkout other people can use. 2026-08-18 15:23:19 +02:00
download_splat.sh Clean the public tree for a checkout other people can use. 2026-08-18 15:23:19 +02:00
download_stars.sh chore: workspace members for the new crates, makepad.splash, the naming and loader check scripts, and error_log 2026-08-26 08:49:50 +02:00
download_tts.sh Clean the public tree for a checkout other people can use. 2026-08-18 15:23:19 +02:00
download_voice.sh Clean the public tree for a checkout other people can use. 2026-08-18 15:23:19 +02:00
emdx_test_upload.mjs Land route app + platform geo/permission APIs, map nav layer, geodata radar 2026-07-31 00:10:52 +02:00
git_object_list.rs Initial commit 2025-05-06 10:11:37 +02:00
linux_deps.sh Video playback fixes and improvements (#1155) 2026-08-10 12:29:33 +02:00
llama_compare_escalated.sh Land route app + platform geo/permission APIs, map nav layer, geodata radar 2026-07-31 00:10:52 +02:00
llama_metal.sh Land route app + platform geo/permission APIs, map nav layer, geodata radar 2026-07-31 00:10:52 +02:00
llvm_lines.sh Initial commit 2025-05-06 10:11:37 +02:00
merge_rik2_into_dev.sh restore merge script 2026-02-26 10:09:28 +01:00
regenerate_wayland_protocols.sh linux 2026-02-14 18:07:21 +01:00
reload_xpc.sh Initial commit 2025-05-06 10:11:37 +02:00
remote_smoke.sh chore: README, workspace, agent docs, and the box-driving scripts 2026-08-23 01:34:36 +02:00
run_ui_tests.sh ft makepad_test (#974) 2026-03-25 16:09:03 +01:00
run_webserver.sh Initial commit 2025-05-06 10:11:37 +02:00
toolchains_flush.sh Initial commit 2025-05-06 10:11:37 +02:00
update_site.sh Initial commit 2025-05-06 10:11:37 +02:00
wincmd.sh chore: README, workspace, agent docs, and the box-driving scripts 2026-08-23 01:34:36 +02:00
winps.sh chore: README, workspace, agent docs, and the box-driving scripts 2026-08-23 01:34:36 +02:00
winps_eval.sh chore: README, workspace, agent docs, and the box-driving scripts 2026-08-23 01:34:36 +02:00
winps_file.sh chore: README, workspace, agent docs, and the box-driving scripts 2026-08-23 01:34:36 +02:00
winps_run.sh chore: README, workspace, agent docs, and the box-driving scripts 2026-08-23 01:34:36 +02:00
winps_stage.sh chore: README, workspace, agent docs, and the box-driving scripts 2026-08-23 01:34:36 +02:00
winrun.sh chore: README, workspace, agent docs, and the box-driving scripts 2026-08-23 01:34:36 +02:00