Lab
AI experimentShipped
Local Bengali speech-to-text
A browser recorder plus a local Whisper server that turns Bengali dictation into an editable transcript and exports it — with no API keys and no audio leaving the machine.
An MVP built for a healthcare collaborator who needed Bengali dictation turned into notes without sending audio to the cloud.
How it works
- Recording happens in the browser with
MediaRecorder. WebM/Opus is converted to 16 kHz mono WAV with vendored JavaScript/WASM decoders — no ffmpeg install needed. - Transcription runs on a FastAPI server with faster-whisper
large-v3, int8 quantisation, beam size 5, the language pinned to Bengali and voice-activity filtering. CUDA is used automatically when available. - Export to
.txt,.docxand.pdf— the PDF embeds Noto Sans Bengali so conjuncts render correctly.
Engineering notes
- The model loads once in the server's lifespan hook; uploads are validated by WAV header and capped at 25 MB (about five minutes).
- Cross-platform launchers create a virtual environment and re-exec into it, so a non-developer can start it with one click.
- A smoke-test script checks the page, health, transcription and all three export formats.
Keep reading
Engineering noteShipped
Reading a million-line file in a browser tab
Workers own the bytes, the main thread owns the pixels, and a scroll position is “line N plus an offset” — not a giant spacer.
Sep 2026