import { BrowserWhisper } from 'browser-whisper';
const whisper = new BrowserWhisper({ model: 'whisper-base' });
for await (const { text, start, end } of whisper.transcribe(file)) {
console.log(`[${start}-${end}s]: ${text}`);
}
Try it in the browser
Native [WebGPU](https://developer.mozilla.org/en-US/docs/Web/API/WebGPU_API) audio
transcription. Connects directly to [WebCodecs](https://developer.mozilla.org/en-US/docs/Web/API/WebCodecs_API) ([mediabunny](https://mediabunny.dev)) and [Transformers.js](https://huggingface.co/docs/transformers.js) for zero-server
inference.
Models & language support
| Model | Languages | language |
|---|---|---|
whisper-tiny |
Multilingual · 99 languages | ✓ |
whisper-base |
Multilingual · 99 languages | ✓ |
whisper-small |
Multilingual · 99 languages | ✓ |
moonshine-tiny |
English only | — |
moonshine-base |
English only | — |
distil-whisper-small |
English only | — |
parakeet-ctc-0.6b |
English only | — |
parakeet-tdt-0.6b-v3 |
25 European languages, auto-detected (WebGPU only) | — |
Model credits: Parakeet TDT 0.6B v3 by NVIDIA, licensed under CC BY 4.0. Changes: converted to ONNX and quantized by istupakov/ysdede; runs with parakeet.js (MIT). Parakeet CTC 0.6B by NVIDIA, licensed under CC BY 4.0. Changes: converted to ONNX and quantized by onnx-community. Whisper by OpenAI (MIT). Moonshine by Useful Sensors (MIT). Distil-Whisper by Hugging Face (MIT). Lite-Whisper by efficient-speech (Apache-2.0). ONNX exports by onnx-community. All third-party notices.
Pass any BCP-47 code as language to skip auto-detection — slightly faster and more accurate when the language is known.