VocalScrollOpen VocalScroll

Why We Rebuilt VocalScroll with Local WebAssembly

Voice dictation tools and virtual assistants lag a little between your speech and the text, and they stop working when your internet connection drops.

We wanted a teleprompter that follows your voice closely, with little lag, no subscription fees, and no uploads of your voice or scripts. So VocalScroll skips cloud speech APIs and runs the speech model inside your browser using WebAssembly (WASM). Here is why, and how it works.


The traditional way: cloud speech APIs

Most speech recognition software uses a client-server model. The app captures your voice, compresses the audio, sends it over the internet to a data center, waits for a cloud model to transcribe it, and gets the text back.

Cloud models are accurate, but they have drawbacks for video presenters:

  • Internet dependency: If your Wi-Fi drops, a cloud-based teleprompter can stop scrolling.
  • Latency: Sending audio back and forth over the network adds lag, which can throw off your pacing.
  • Privacy: Your voice and your scripts are uploaded to someone else's servers, where they can be logged or stored.
  • Server costs: Cloud servers cost money to run, which pushes developers toward monthly fees.

The better way: on-device WebAssembly

VocalScroll processes your voice on your own computer or phone using WebAssembly.

WebAssembly lets browsers run compiled code, like our speech recognition engine, at near-native speed. Instead of uploading your voice, your browser downloads a speech model for your language (about 41 MB for English) the first time you use that language, keeps it on your device, and runs it on your device's hardware.

The two approaches compare like this:

FeatureCloud-based speech APIsVocalScroll's on-device WASM
Data privacyVoice data and scripts are uploaded to remote servers.Speech recognition runs on your device. Your voice and scripts stay there.
Internet dependencyNeeds a connection the whole time.The model for your language downloads once, then loads from your device.
Response latencyNetwork delays can lag behind your pacing.Word matching runs on your device, with no network round trip.
Subscription costOften a recurring monthly fee.Free.

How it works under the hood

When you press Start, the speech pipeline runs on your device:

  1. Microphone capture: The browser captures your voice through standard browser audio nodes.
  2. Web Worker: Speech analysis runs on a separate background thread in your browser, so it does not block the page or the prompter animation.
  3. WebAssembly processing: The speech engine runs the incoming audio against the speech model in memory and matches what you say to the words in your script.
  4. Scroll sync: The matched words move the prompter's scroll position to the spot where you are reading.

No server processes your voice, and your scripts and recordings stay on your device.

Ready to try it?

Open VocalScroll, paste a script and start speaking. It is free, and your scripts stay on your device.

Open the studio
Open VocalScroll