I built a Mandarin to English caption pipeline
Description and use
Finchling pipeline for Mandarin-to-English captioning with live preview and committed output.
Problem
Need to speak Mandarin while drafting English text and keep original words visible.
Outcome
Finchling achieves a median 95.79 ms latency from audio end to final English commit for three recorded clips.
Workflow
- Install dependencies via README command
- Run finchling with --live --ui for microphone input
- Use --push-to-talk or recognizer endpoints to commit clauses
- Optionally enable --jev for typed questions
- Use --early-commit to allow speculative completion
- Handle conflicts if later recognition revises committed prefix
Evidence
I wanted to speak Mandarin while drafting English text and keep the original words visible.
It reads microphone blocks or a WAV file, shows the recognition hypothesis beside an English preview, and emits completed clauses as commit events.
Three upstream recorded clips measured a 95.79 ms median from the end of each audio file to its final English commit.
The README provides one command to install the speech extras and download models. Python 3.10 or newer and uv are required. Speech recognition uses sherpa-onnx. Translation uses Argos and CTranslate2 on the CPU.
- Record date: 2026-10-05T17:41:25.462Z