AI Playground by hjLabs.in

A Whisper API alternative that runs on your machine

OpenAI’s transcription endpoint bills per minute of audio and requires you to upload the file. Whisper itself is open — OpenAI released the weights — and the ONNX exports on Hugging Face load into a browser and run on WebGPU. This page transcribes from a file or straight from your microphone with whisper-tiny, whisper-base, whisper-small or distil-whisper, entirely on your device. The audio is decoded into an AudioBuffer in the tab and never sent anywhere, so there is no request size limit and no meter running.

At a glance

What replaces it
Whisper ONNX builds (tiny, base, small, distil-whisper)
Where it runs
Your GPU, in the browser, via WebGPU
Audio upload
None — decoded locally, never transmitted
Cost per minute
Nothing after the one-time model download
File size limit
None imposed by us; long audio is processed in chunks
Microphone input
Yes, recorded and transcribed locally
Honest limitation
Browser-sized Whisper is less accurate than a large-v3 endpoint on hard audio

Where the API is clearly better: it serves large-v3-class models with server-grade hardware behind them, so accuracy on accented speech, noisy recordings and unusual vocabulary is higher than anything a browser-sized checkpoint gives you. It also transcribes a long file far faster than local inference on a laptop, and it needs nothing from the end user’s hardware at all.

Where local wins: cost and confidentiality. Once the model is cached, an hour of audio costs the same as a minute — nothing — so the transcripts nobody budgets for get done. And a recording of a meeting, a patient, a client or an interview is frequently something you are not permitted to upload at any price. Local transcription removes the question rather than answering it.

Pick the model by how much accuracy you are buying with your download. whisper-tiny.en is the fastest and is fine for clear English dictation; whisper-base is the usual default; whisper-small is noticeably better on real-world audio and costs a larger download; distil-whisper trades a little accuracy for speed. Each model page states the exact download before you commit to it.

whisper api alternativefree whisper transcriptiontranscribe audio without uploadingwhisper in browserlocal speech to text freeopenai transcription alternativeoffline transcription toolprivate audio transcriptionwhisper webgpufree speech to text no signup

Frequently asked questions

Is this the real Whisper?

Yes — the same open weights OpenAI released, exported to ONNX so a browser can execute them. What differs is the size you can practically run: tiny, base, small and distil-whisper rather than large-v3, which is far too big for a browser tab.

How long can the audio be?

There is no limit we impose. Whisper processes 30-second windows, so long recordings are chunked and transcribed window by window; a long file simply takes longer. There is no per-request size cap because there is no request.

Which languages does it handle?

The multilingual checkpoints cover the same languages upstream Whisper does; the ".en" builds are English-only and smaller because of it. Each model page lists the languages the checkpoint declares.

Does it identify who is speaking?

No. Speaker diarization is a separate model and is not part of Whisper — if you need "who said what", a dedicated meeting-transcription product does that and this does not.

Is my data uploaded to a server?

No. The model weights are downloaded from Hugging Face to your browser once, and every inference after that runs on your own GPU through WebGPU. Your text, images and audio are never sent anywhere — hjLabs.in has no inference server and no way to see your input.