Our meditation script format

Every meditation in Open Meadow starts as a script: plain text that defines what the voice says and where pauses occur. Omi can write scripts for you, or you can paste one from anywhere, write your own, or edit any existing meditation.

When you paste text into the chat, Omi automatically formats it into a proper script, whether it's unformatted text, a script with custom pause markers, or just a canvas.

The rest of this page explains the format in detail: how scripts work, what you can rely on when editing one by hand, and how playback interprets what you write.

Here is a complete script:

# Evening ResetThe title
## ArrivingA section: organizes the script, not spoken
Find a comfortable position.Speech: plain text is spoken
Let your attention settle on your breath.
[pause 15s]15 seconds of silence
Inhale gently.
[pause 4s exact]An exact pause: fixed length
Exhale slowly.
## Quiet Space
Rest here, without changing anything.
[pause 45s open]An open pause: can be extended
When you are ready, let the practice close.

The building blocks

A script is markdown with four elements: a title, optional sections, speech, and pauses. Titles, sections, and pause markers have special handling. All other text is spoken.

Title

The first line sets the title, written as a level 1 markdown heading: # Evening Reset.

More details
  • Emojis are allowed in the title.
  • Inline formatting like bold or italics is removed when the script is saved.
  • Use a single # line. If a script has several, the last one becomes the title and the others are dropped.

Sections

Lines starting with ## divide the script into sections, like ## Arriving. Section names are not spoken: they organize the script and appear as chapters during playback.

More details
  • There is one level of sections. Deeper headings like ### are converted to sections when you edit a script in the app.
  • Emojis are allowed in section names.
  • Playback adds a 3 second gap before each section. See the automatic gaps below.

Speech

Plain paragraphs are spoken, in order, separated by blank lines. Write the words exactly as they should be read aloud.

More details
  • Speech is plain text only. Emoji are removed before audio is generated, and bold or italics are removed when the script is saved.
  • Very long paragraphs are split at sentence ends, around 250 characters, so the app handles paragraph splitting for you.
  • Quotation marks are kept, so quoted lines read naturally.
  • Production notes like (soft music) or (whisper) would be read out loud, so leave them out.

Pauses

A pause is a marker on its own line, with a blank line before and after. The number is the length of the silence in seconds. There are three kinds:

Pause
[pause 10s]
The standard pause. Its length can increase or decrease with the spaciousness slider and with the meditation's target duration.
Exact pause
[pause 4s exact]
A pause with a fixed length in all playback settings. Use it when the timing is physical: the space between an inhale and an exhale, or counted breaths.
Open pause
[pause 45s open]
The pause type that changes the most. When the spaciousness slider is moved toward longer pauses, open pauses increase twice as much as standard ones. Use them for long periods of silent practice.

As a rule of thumb: use 5 to 10 seconds between instructions, 15 seconds or more for a moment of practice, and reserve the longest pauses, often open ones, for extended silent practice.

More about pause markers
  • Minutes are accepted: [pause 2 minutes] is the same as [pause 120s].
  • Markers work in any capitalization.
  • Choose either exact or open for each pause.
  • A pause written in the middle of a paragraph is moved to its own line automatically.
  • Pause length can be as long as needed. As a guideline, keep pauses at 2 seconds or longer: below that, the automatic gaps already cover it.

Automatic gaps

Playback adds small gaps automatically: 2 seconds between spoken paragraphs and 3 seconds before a section. No gap is added next to an explicit pause, so [pause 10s] means 10 seconds, not 10 seconds plus a gap.

More details
  • There is also a short lead-in before the first words and a closing gap at the end, slightly longer when background music is on. These two stay fixed.
  • The gaps between paragraphs and before sections respond to the spaciousness setting, within limits: they can grow up to four times their length and stay at 1 second or longer.

Adjustable timing

A script produces audio with adjustable pause timing. The speech is synthesized once, but pause lengths are calculated at playback time. The player has a spaciousness slider, from short pauses to long pauses, and it works live while you listen. Pause types tell the player which pauses are adjustable and which stay fixed.

short pauseslong pauses
[pause 10s]10s
[pause 8s exact]8s
[pause 15s open]15s

Drag the slider. This demo runs the same timing code as the player: the exact pause stays fixed, and the open pause increases twice as much.

How the adjustment works
  • The slider adds or removes up to 100 percent of each standard pause's length.
  • Open pauses receive twice the increase when lengthening, and decrease at the standard rate.
  • Exact pauses are excluded entirely.
  • Adjusted pauses stay at or above 1 second.
  • The spaciousness setting is remembered for each meditation, and downloaded audio uses the same adjusted timing.

Duration

A meditation's length is its speech, plus its pauses, plus the automatic gaps. Sections are timing markers only. Speech lasts roughly one second for every two words, about 110 words per minute at the meditative pace of the voices.

To aim at a length, write the guidance first, then place and size pauses to reach the target duration. The script editor in the app shows a live length estimate while you type.

More details
  • When you ask Omi for a meditation of a specific length, the writer targets it while writing.
  • Small remaining differences are absorbed by the adjustable pauses at playback, so the meditation matches its target duration.

Using scripts in the app

In chat

Paste a script into the chat, or ask Omi to write one. When you bring your own, you choose between adapting it, where it is rewritten to fit your time and preferences, and preserving it, where the wording is kept and only the format is normalized.

In the player

Open the player menu and choose Edit Script to change the text of an existing meditation. Before saving you review what was recognized as speech, pauses, and sections. When you confirm, the meditation's audio is regenerated.

Quick reference

# CalmThe title.
## ArrivingA section: not spoken, shown as a chapter.
A plain paragraph.Spoken by the voice.
[pause 10s]10-second pause, adjustable.
[pause 4s exact]Fixed pause length.
[pause 45s open]Long practice pause, increases twice as much.
[pause 2 minutes]Same as [pause 120s].
The numbers
  • Gap between spoken paragraphs: 2 seconds.
  • Gap before a section: 3 seconds.
  • Gap next to an explicit pause: none.
  • Playback minimum for adjusted pauses: 1 second.
  • Speech pace: about 2 words per second, around 110 words per minute.
  • Paragraph split threshold: around 250 characters, at sentence ends.