🎙️

Live Transcript

Real-time speech-to-text, right in your browser

Live (Web)

Say something in Japanese or English and it appears on screen as text as you talk — no upload, no account, nothing to install. Runs on the free Web Speech API built into your browser.

Chrome, Edge, and Safari each use a different speech engine behind the same interface (Google, Microsoft, and Apple respectively) — pick whichever works best where you are.

Web Speech API MediaRecorder File System Access API

See it in action

Open it, press ▶, and start talking — recognized text appears in the box immediately. In the demo video it out-runs a Japanese TV broadcast's own captions.

Try Live Transcript →

How to use it

Get started in a minute
Open the page, press ▶ Start, and talk. Recognized text appears in the box as you speak. Press ⏹ Stop when you're done — that's the whole flow. Nothing to install, no account.
Using it on a phone
Open the same link on your phone and it switches to a portrait layout with a bottom menu. Tap ⛶ Captions for a full-screen view — turn translation off there for the largest possible subtitles. Both the phone and desktop layouts work on a phone; the phone one is the default.
No captions, or captions are slow
If Edge shows no captions at all, switch to Chrome. Edge sends audio to Microsoft's servers, which have been unreliable lately across whole regions — this is not a usage limit on your account. Chrome uses Google's engine and is usually faster. No settings or code changes needed, just a different browser.
About the translation
Translation uses a free engine built into the browser. It runs separately from the transcript, so the live text never waits on it. When you speak quickly the translation can fall behind or drop lines; the transcript itself keeps up.
Privacy
Speech recognition runs in your browser through your browser maker's own service (Google, Microsoft or Apple). Nothing is uploaded to maysuns.uk, there is no account, and recordings you choose to save stay on your device.

Full in-app help & troubleshooting →