Four voice paths for one focused rehearsal.
Mem Lines keeps the rehearsal loop in your browser, with two clearly marked cloud allowances when you choose them.
Start a rehearsal01 / Overview
What Mem Lines does
Mem Lines reads the other parts of a script aloud, waits for your part, and listens as you say it. The line is compared as you speak, so practice can keep moving without stopping to type.
It is designed for a focused, repeatable loop: hear the scene, say your lines, see what matched, then run it again with less help.
02 / First run
From document to rehearsal
- Add your material. Choose one or more PDFs, text files, or images, or paste lines.
- Arrange and start. Reorder documents, wait for each one to say Ready, then press Start.
- Choose your part. Mem Lines turns the extracted dialogue into a cast list.
- Rehearse. Hear partner lines, tap Dictate or use Automatic mic mode on your turn, and continue when the line passes.
- Repeat or hide help. Loop a cue, hide your lines, or use the controls to move through the scene.
03 / Practice surface
Small tools for a better memory loop
Ordered documents
Combine pages from several sources and keep their order visible before rehearsal.
Text and image intake
Use PDF text layers when available, with local OCR for scans and images.
Live matching
Partial speech lights words as they are heard. Green is a close match; amber marks a word to revisit.
Four voice paths
Natural and Studio run locally, Fish Audio adds a fast cloud option, and Built-in is the device fallback.
Hide mine
Blur your upcoming lines while keeping the scene around them readable.
Local-first rehearsal
Speech, voice, and OCR normally run in the browser. Cloud speech is a clearly marked fallback.
04 / State map
The rehearsal loop
Every state has one job: prepare, listen, match, or move.
05 / Cloudflare
What leaves the browser
Most of Mem Lines stays local: document parsing, OCR, Natural voice, Studio voice, Built-in voice, and local speech recognition run in your browser.
When you choose Fish Audio, one partner line is sent to a same-origin Pages Function and the key stays server-side. If local recognition is unavailable, a short recording can go to Workers AI Whisper. D1 stores daily counters for these paths; scripts and audio are not stored by the endpoints.
06 / Limits
Two allowances, one reset clock
The upper bar tracks Cloud speech in estimated neurons. It is used only when speech recognition falls back to Workers AI; local recognition does not spend it.
The lower bar tracks Fish Audio text in UTF-8 bytes. It is used only when Fish mode generates a partner line; Natural, Studio, and Built-in do not spend it. Both bars reset at 00:00 UTC, and a full or unavailable bar never blocks local rehearsal.
07 / Architecture
Where the work happens
Owns the interface, document queue, parsing, OCR, voice playback, local Whisper, and word matching.
Turns extracted rows into cues, tracks the selected part, and advances only when the current line matches.
Natural and Studio run locally; Fish Audio is the optional fast cloud voice; Built-in is the device fallback.
Pages serves the app, Functions proxy Fish Audio and Whisper, and D1 keeps the two daily usage counters.
The browser keeps local preferences and model caches. Uploaded scripts are not stored by the cloud endpoints.
08 / Help
Troubleshooting and FAQ
My PDF is still processing.
Keep the page open while the per-document bar moves to Ready. Scanned PDFs and large images take longer because OCR runs locally. If a file fails, use Retry or paste its text into the editor.
The script needs repair. What should I do?
Review mode shows the extracted lines. Label spoken cues as NAME: line, remove page furniture, then choose Use this script.
The microphone is gray or does not start.
Allow microphone access for memlines.com, then tap Dictate again. Automatic mode starts listening on your turn; Tap / space gives you explicit control.
Why did cloud speech stop?
The upper bar is a shared daily app allowance for fallback transcription. Try local speech, or wait for the next UTC reset.
What does the Fish Audio bar measure?
The lower bar counts the UTF-8 text sent to Fish Audio. It is separate from Cloud speech, so changing to Natural, Studio, or Built-in does not spend it.
What is Fish Audio mode?
Fish Audio is an optional fast cloud voice. The browser sends one line at a time through the site, and the Fish API key never reaches your browser.
Can I rehearse when a bar is full?
Yes. Natural, Studio, Built-in, and local speech remain available. Cloud paths show their limit and reset time instead of silently switching you over.
Does Mem Lines save my script?
The browser processes the script for the current rehearsal. The cloud endpoints receive only the line or short recording needed for the selected fallback and do not store your script.
Mem Lines
Rehearse your lines against the scene.
Which part are you reading?
One line per cue, written as NAME: line.