Wavetotext
EN

How it works

Wavetotext is a free audio to text converter that runs entirely in your browser.

The speech model

Transcription uses Whisper, an open source speech recognition model released by OpenAI. We use the tiny, base and small versions, converted to run in a browser by the Hugging Face community and loaded with the open source Transformers.js library. If your browser supports WebGPU, the model runs on your graphics card. That is usually faster than the processor. If it is slow, the processor takes over.

What happens to your file

  1. Your browser opens the audio and converts it to 16 kHz mono, the format Whisper expects. Videos your browser can't open go through ffmpeg, a video converter that also runs in your browser.
  2. The audio is cut into pieces of up to 30 seconds, at the quietest moment near each cut, so words aren't split. Silent pieces are skipped.
  3. Whisper turns each piece into text with timestamps, in a background thread so the page stays responsive.
  4. The pieces are joined into one transcript you can edit, copy or download.
  5. With speaker labels on, the pyannote model marks who speaks when in each minute of audio. The WeSpeaker model then makes a voice fingerprint for each speaker, and fingerprints that sound alike are grouped into Speaker 1, Speaker 2 and so on.

Many files

Files you add join a list and run one at a time, so a long batch doesn't overload your device. Finished transcripts are saved in your browser so you can come back to them.

Limits

Small Whisper models are less accurate than large server models. They mishear names and rare words, struggle with heavy noise and overlapping speakers, and are weaker in languages with less training data. Speaker labels are a best guess: similar voices, short replies and people talking over each other can get the wrong label.

Contact

Questions, bugs or ideas: [email protected]