Review a voice message from a saved local file
This workflow begins with a voice message you are permitted to save on this device. It does not access WhatsApp chats, backups, accounts or private sharing links.
1. Start after the recording is saved
Use an actual media file that opens in a local player. Export availability and controls differ by device and app version; this page does not show an unverified universal export button. Keep the original message context separately without uploading private chat details.
Check: You have a playable recording, not a backup archive or chat URL.
Continue in the matching tool2. Use the existing audio tool
Open Audio to Text, choose one browser-decodable file up to 100 MB and transcribe English speech. The browser first decodes the recording, checks its language with a multilingual checkpoint, then recognizes English with a separate English checkpoint. First use may download both models. Cached resource files can avoid another download, but they do not guarantee an initialized model: the English instance is released before the next language check. There is no fixed completion time. A non-English result, uncertainty and a failed check stop with separate messages.
Check: The tool produces a reviewable transcript or a specific failure.
Continue in the matching tool3. Check what you need before replying
Replay names, numbers, dates and conditions such as only if or do not. Copy the checked text or download TXT/Markdown; use complete valid timing for SRT/VTT. Keep your reply or action list separate from what the speaker actually said.
Check: A reply is based on checked details rather than a guessed transcript.
Continue in the matching toolMore questions and limits
What processing and privacy boundaries apply?
Local decoding, recognition, replay, edits and downloads run in your browser. Model resources need network access, but the local recording and transcript are not uploaded. There is no account history or saved cloud project; download your work before closing the tab. Same-origin editor transfer keeps the cues and recording local between tabs. Instagram URL retrieval and YouTube caption lookup have separate server-assisted privacy boundaries.
Where should I continue?
Open the matching tool and follow its current input requirements. Keep the original, review your result and download it before closing the tab.
Historical measurements and method limits
Measured browser timings
These are historical measurements from 2026-09-14 using only whisper-tiny.en. They do not measure the current language-detection plus English-transcription workflow, and exclude Instagram lookup and media download.
| Audio length | Historical wall-clock time | Historical model load |
|---|---|---|
| 11 s | 16.89 s | included |
| 11 s | 6.49 s | already in memory |
| 30 s | 8.98 s | already in memory |
| 60 s | 16.06 s | already in memory |
| 120 s | 28.58 s | already in memory |
In the historical test, the first run included model loading; subsequent runs retained the English model in memory. Current jobs release that instance before language detection, so a resource cache hit still requires initialization. Wall-clock time is not CPU time, and subtracting two runs does not isolate download or initialization time.
One machine, one WASM browser, one run per historical data point. Audio clips were constructed from a repeated public JFK recording. These rows do not predict today's end-to-end time, other devices or other recording content.
Sources: historical raw CSV · current two-model measurements (2026-10-14) · method, environment and limitations.
InstaScript is independent and is not affiliated with or endorsed by the source platforms mentioned here.