How On-Device Speech to Text Works
AnyTool converts speech to text entirely in the browser using a self-hosted Whisper automatic speech recognition (ASR) model run via transformers.js on WebAssembly or WebGPU. You either record from the microphone with getUserMedia and the MediaRecorder API, or upload an audio/video file; the audio is decoded with the Web Audio API, resampled to 16 kHz mono and processed locally to produce text with segment timings. The model weights download once (tens of MB) and are cached, after which transcription works offline. The transcript is editable, and you can export plain TXT or timestamped SRT and VTT subtitles. No audio or text is ever uploaded and no CDN inference is used.
- Runs client-side — your voice or file is never uploaded
- Self-hosted Whisper ASR via transformers.js (WASM/WebGPU)
- Record from the mic or upload an audio/video file
- Model is cached, so it works offline after the first load
- Editable transcript; export TXT, SRT and VTT
- No account, no per-minute cap and no CDN inference
Why Not the Browser’s Built-in Dictation
Most online speech-to-text tools, and the browser’s own dictation via the Web Speech API, send your audio to a cloud service (typically Google) for recognition. AnyTool deliberately avoids the Web Speech API and runs the Whisper model on the user’s own device instead, so your voice and any uploaded recording never leave the browser. There is no per-minute limit, watermark or sign-up, and the tool keeps working offline once the model is cached — which makes it suitable for confidential notes, interviews and sensitive dictation.
Accuracy, Speed and Honest Limits
On-device transcription trades some speed and accuracy for privacy. The first run must download the model (tens of MB), and inference is slower than cloud services — especially on the WebAssembly fallback used when WebGPU is unavailable (it works best in Chrome and Edge with WebGPU). Accuracy depends on the model size, audio quality, accent and background noise; larger models are more accurate but slower, and this build uses an English-focused model. Timestamped SRT/VTT export is available once the clip is long enough to produce segments, and the transcript should always be proofread before use.