Local speech qualification

In plain words: Local speech test probe

Operator validation 4 min read 5 glossary terms 6 connected pages
The short version written for the Snayu team

The engineering probe for testing local speech: audio.cpp with Parakeet and Supertonic, or whisper.cpp for transcription, called over loopback with pinned models, explicit recording and no native LychD integration.

Why read it: Read this when running or extending local speech tests, or wiring up microphone capture and playback on Linux.
  1. 1The probe issues no model pass and does not register Echo or enable Chat audio.
  2. 2Input is mono 16 kHz 16-bit WAV; microphone capture is explicit, 1-15 seconds, with no automatic retries.
  3. 3Acceptance needs real startup, synthesis, transcription, refusal, cancellation and Slovak/Czech/English operator tests.

Operator validation Probe built; real microphone and language quality checks still need the operator.

Words on this page, decoded click one for its card

The original text Underlined words open their plain-English card.

The first qualification uses one pinned audio.cpp runtime with Parakeet TDT 0.6B v3 for transcription and Supertonic 3 for synthesis. Both upstream model profiles declare Slovak, Czech and English. Declared support is not a LychD quality measurement.

An explicitly operated engineering probe may call a reviewed literal-loopback batch endpoint with a pinned model profile. It does not issue ana AnimatorModel Runtime grant, register EchoVoice at normal boot, or establish native BridgeChat audio admission. It must preserve those distinctions in its output. No failed local attempt selects another runtime or a hosted service.

The next qualification candidate changes transcription while keeping synthesis explicit: it pairs whisper.cpp multilingual small with the existing audio.cpp Supertonic synthesis. To keep the two operations attributable, a version 2 engineering profile binds each separately to its literal-loopback endpoint, runtime revision, dialect, backend, device, and model pin. Version 1 audio.cpp profiles retain their existing schema and digest.

The whisper.cpp request declares the input language and asks for JSON transcription output. It supplies no misleading per-request model selector, because that server loads weights at startup. The resulting transcription observation retains its own binding's runtime revision; synthesis retains its separate revision. This establishes a construction contract, not Slovak quality or a delivered native EchoVoice provider.

The companion voice entry may remove only outer spaces, tabs and line endings when interpreting a transcript as one strict instruction. It preserves the original attributed transcript; embedded control characters and multiple instructions still refuse. This handles a server's text framing without fuzzy correction of a misrecognized command.

Probe contract

The operator supplies the endpoint, exact runtime revision, model digest and language declaration, and an absolute private workspace outside every checkout. Input recording is an explicit bounded operation; no background listening or wake phrase is admitted. Transcription accepts EchoVoice's canonical mono 16 kHz signed 16-bit WAV subset and verifies the exact source identity before sending. The transcript remains an attributed interpretation with its source and selected model. Language detection never authorizes translation or silently changes the requested output locale.

Synthesis accepts bounded text, one declared language and a stock voice, then retains bounded validated WAV bytes with their digest. Cloning and reference voices are outside this probe. Generation and playback are separate observations. No audio bytes enter logs or GraphStep Map state; private artifacts and transcripts remain in the explicit workspace.

For a real microphone sample, the optional Linux device helper requires an explicit invocation and shows capture visibly. Its fixed sample budget is 1–15 seconds, with a finite acquisition deadline after process adoption; launch adoption and required retirement can outlast that deadline. It requests mono 16 kHz signed 16-bit samples from the system ALSA default device and constructs a canonical WAV. That uses the host's configured sound server, including PipeWire. The caller may explicitly choose pulse when that ALSA PCM is installed. A failure never changes the device or retries capture. Any device conversion belongs to the capture backend; it is not silent conversion of an already admitted artifact.

Before another capture, the helper must prove the old recorder group has retired. A failed capture can then be followed by a fresh explicit gesture, never a replay of the failed occurrence. Unknown launch or retirement keeps further audio closed. Cancellation, including cancellation during final retirement, propagates only after the owned group has been joined; unproved retirement supersedes cancellation with an unsettled outcome. Tests with a substitute recorder cannot qualify the microphone.

The separate Horizon voice entry can explicitly select finite local playback of its validated generated bytes after capture closes. Its player process-group ownership, cancellation and failure are separate from synthesis. A selected playback uses the system ALSA default output; only an explicit supported pulse selection requests PulseCommand Line (CLI) directly. Invalid devices refuse before launch, and a failed selection never switches devices or retries. The helper forwards the exact inspected WAV bytes without altering host routing or volume. Independently cancelled retirement is unknown ownership and keeps later audio closed. A successful player exit proves neither human hearing nor a native EchoVoice playback receipt. Ordinary speech-probe commands still only retain generated material.

Requests have finite transport and response bounds, no redirects, no ambient proxy or credentials, and no automatic retries. Cancellation stops waiting locally; it must not claim the server's inference stopped unless the exact dialect provides and proves that boundary. Hosted providers require a separately admitted dialect, destination, credential, consent and cost bound.

Acceptance

Qualify the exact binary/model pair with clean startup, readiness, a real synthesis and transcription, bounded malformed-input refusal, cancellation and shutdown. Synthetic round trips test transport and model execution, not microphone recognition or independent intelligibility. The operator's bake includes Slovak and Czech diacritics, English game terms, player names, coordinates, numbers, negation, background game sound and mixed-language utterances.

Echo owns the speech lifecycle and Audio its law. State of Work owns implementation evidence.