Fulwave Designer — Instruction Manual

Instruction manual

Building a session in Fulwave Designer, stage by stage.

Fulwave Designer is the Mac studio for Fulwave sessions: layer audio and spoken text into each stage, mix it properly, and export one file that plays in FulwaveTimer on iPhone. This manual follows the same order you'll actually work in — build, mix, preview, export.

Platform macOS 14 or later Price Free Pairs with FulwaveTimer (iPhone) Last updated August 2026

01 Overview

A Fulwave session is an ordered list of stages. In Designer, each stage isn't limited to one sound — it can hold as many audio tracks and spoken-text cues as you need, each its own layer with its own timing, gain, and pan. Mix the layers, set how the stage begins and ends, then export the whole session as a single .fws file that FulwaveTimer plays on iPhone.

Stage

One segment of the session — a duration, a color, and any number of layers.

Layer

One audio track or spoken-text cue inside a stage, with its own start delay, gain, and pan.

.fwd project

Your working file — layers stay un-mixed and re-editable. Save and reopen like any Mac document.

.fws session

The exported, shareable file — mixed down and playable in FulwaveTimer. See Saving & exporting.

02 Quick start

The shortest path from a blank window to a session you can send someone.

  1. Add Stage to start your first stage, then name it in the Stage panel.
  2. Add Audio Layer… or Add Text Layer to give the stage something to play.
  3. Set the stage's Duration, and repeat for as many stages as the session needs.
  4. Press play on the bottom transport to hear the session as you build it.
  5. When it sounds right, use Export Session (.fws)… to save the file you'll share.
💡

Save your working file as a .fwd project first (⌘S) — you can keep reopening and editing it, and export a fresh .fws any time without losing your layers.

03 Sessions & stages

The left-hand list is your session, top to bottom in playback order.

Session settings

Name the session, set how many times the whole thing Repeats, and pick a session Color Tag to keep multiple projects visually distinct in your library. Turning the repeat count down past 1 gives you Repeats: forever — the session loops until the listener stops it, which is what you want for ambient beds and open-ended meditation.

Adding and reordering stages

Add Stage appends a new stage to the end of the session; drag any stage to reorder it. Each stage gets its own name, color, and length, plus its own repeat count for looping just that stage before moving on.

Setting a stage's length

Type the length straight into the Length field: 5:30, 90, and 1h30m all work, and the field tidies what you typed into a proper time when you leave it. The stepper beside it nudges by a second at a time.

The preset chips underneath cover the common lengths in one click. A click sets the length — click 5m and you're at exactly 5:00, whatever was there before. Hold ⌥ Option and a click adds instead, so you can build a length from parts: click 5m, then Option-click 30s to land on 5:30. While Option is held the chips relabel themselves +5m, +30s, so you can see which one you'll get before you click. In a narrow window the chips collapse into a Presets menu that behaves the same way.

Session graphic

Give the session artwork from the Session Graphic control: pick an image already embedded in one of your audio tracks, or choose a PNG or JPEG from your Mac. This is the artwork FulwaveTimer shows for the session once imported.

04 Layers & sources

A stage's Layers list is where the sound actually comes from.

Kinds of layer

  • Add Audio Layer… — bring in an audio file: a music bed, a coaching voiceover, an ambient pad.
  • Add Text Layer — type text and have it synthesized in a Mac voice, so you don't need a separate recording.
  • Record a Layer… — record your own voice or sound straight into the stage. The first time, macOS asks for microphone access. It only asks once; if you said no, turn it back on in System Settings ▸ Privacy & Security ▸ Microphone. Press Stop and Add Layer to keep what you recorded.
  • Add Tone or Noise Layer — have the app make the sound: a sine, triangle, sawtooth or square tone at a frequency you choose, or white, pink or brown noise. Pink is the balanced one most people mean by "noise", and brown is deep, like rainfall or surf.
  • Instrument layers (Direct build) — a layer whose sound is played by an Audio Unit plugin. See Plugins & MIDI.

A stage can hold as many layers as you like, of any kind, and they all play together for the stage's length. Any layer can be shaped with filters, delay, movement and drawn curves.

Telling layers apart

Each layer sits in its own card, colored by what it is: teal for audio, orange for spoken text, and gray for text that only shows on screen without being spoken. The badge on each card pairs that color with the layer's number, so two audio layers stay tellable apart, and the card's border brightens while it's expanded. The same three colors are used for the lanes in the transport timeline, so a layer looks like itself wherever you meet it.

Delivering speech: live or baked

A spoken text layer can reach the listener two ways, set by Deliver as live speech on the layer.

  • On (the default) — the words travel to FulwaveTimer as text, and it speaks them on the listener's device over whatever else the stage is playing. They can pick any voice installed on their iPhone, including another language, or switch the stage to display only and read along in silence. This stays true even in a locked session: which voice reads to you is a comfort setting, like haptics. The trade-off is that a live phrase plays at the listener's own volume, so the layer's gain and pan don't apply to it.
  • Off — the phrase is synthesized in the Mac voice you chose and mixed into the exported audio, placed exactly where your gain, pan and delay put it. Nothing about it can be changed afterwards: not the voice, not the language, not whether it plays at all.

Baked speech always shows its words on screen during the stage, whether or not you turned Show text on screen on. Once a phrase is inside the mix, the words are the only part of it the listener can still work with, so Designer never lets them disappear entirely. Before you export, the Export pane names any stages that are baking a phrase.

Choosing a voice

The Voice menu groups what's installed by quality: Premium, Enhanced, then Standard. That order matters more than the names do — Premium and Enhanced voices are neural and sound close to a recording, while Standard voices are the small compact ones and sound synthetic no matter which you pick. macOS ships only Standard voices; the rest are a free download, and Download More Voices… opens the right page of System Settings to get them. New voices appear in the menu as soon as the download finishes, without restarting Designer.

This is worth doing before you bake anything, since a baked voice can't be changed afterwards. It has no effect on live speech — those words are spoken on the listener's device in a voice they chose, from what's installed there.

Start delay

Every layer can start partway into the stage instead of at the top. Run a 60‑second bed from the start of the stage and drop a 30‑second voice layer in at the 25‑second mark — the delay is set per layer.

05 Mixing a stage

Two mix stages: each layer, then the stage as a whole.

Per-layer gain and pan

Every layer has its own gain and pan control, shown next to it in the Layers list.

Muting a layer

The speaker button on a layer's card mutes it. A muted layer is left out of the export as well as the preview — it isn't a monitoring switch you can forget about, so a layer you muted while working stays silent for the recipient too. On a display-only text layer the same button shows an eye instead and hides the words rather than silencing them.

Muted layers also don't count against the pass-through rule in Saving & exporting: a stage carrying one untouched audio track plus a muted layer still exports without re-encoding.

Stage Mix: master gain and pan

Below the layers, Stage Mix sets a master gain and pan applied to the summed mix of every layer in the stage. Sliders snap to unity gain and dead-center pan, so the values that matter are easy to land on exactly.

🔊

If the summed layers would clip, the whole stage mix is scaled down automatically to peak just under 0 dBFS — you won't get distortion from stacking layers.

06 Shaping the sound

Everything here changes how a layer sounds before it reaches the mix. It all happens inside Designer: on export the result is mixed into the stage's audio file, so FulwaveTimer needs nothing special to play it.

Filters & EQ

Each layer has a chain where you add filter blocks, and the Stage Mix has one of its own for filtering the whole stage. A block is one of:

KindWhat it does
Low cutTakes out everything below the frequency you set.
High cutTakes out everything above it.
BandLifts or dips a band of frequencies. Q sets how wide: low is broad, high is narrow.
Low shelf / High shelfLifts or drops everything below, or above, the frequency by a fixed amount.

Cuts have a Slope: gentle (12 dB per octave), steep (24, the usual working choice) or wall (48). The add menu also offers ready-made Band Pass and Brick Wall starting points. A filter response curve draws what the chain is doing to the spectrum. Every block can be bypassed, removed, or moved earlier or later in the chain, and order matters.

Delay

A layer or the Stage Mix can carry a delay: Time, Feedback and how much is wet. Bounce between the speakers sends each repeat to the opposite side from the one before. Moving the delay's time while it plays drags the repeats out of tune, which is the sound people mean by a tape delay. A layer with a delay keeps playing after its source ends, so the echoes finish instead of being cut off.

Movement

Anything that can move on its own is called movement. A movement source can be a sine, triangle or square wave, random steps (a new value each cycle, held) or random drift (the same values eased into each other). Set its rate and depth, then aim it at a layer's gain or pan, a filter's frequency or gain, or a delay's time. A slow sine on pan sweeps a sound across the room; random drift on a filter keeps a pad from sitting still.

Drawn gain and pan curves

For changes you want to place exactly, draw a curve instead. Time runs left to right across the stage and the value runs bottom to top, with a dashed line at unity gain or dead center. Press anywhere on the curve to add a point, and drag to shape it. Use a curve to fade a bed up over a stage, or to move a voice from one side to the other. Layers and the Stage Mix each have gain and pan curves.

The order things happen in

For a layer: source, then its filters and delay, then its plugins (see Plugins & MIDI), then its gain and pan. The layers are then summed, and the Stage Mix applies its own filters, delay, plugins, and finally its master gain and pan. The preview and the export follow the same order.

07 Plugins & MIDI

Audio Unit plugins and MIDI controllers are available in the Direct build of Fulwave Designer, which is distributed outside the Mac App Store. This section describes what that build adds; the rest of the manual applies to both builds.

Effect plugins

Any Audio Unit effect installed on your Mac can be added to a layer's chain, or to the Stage Mix, alongside the built-in filters. Open shows the plugin's own window; its settings are saved with the project. Plugins can be bypassed, removed and reordered like any other block, and they run after the built-in filters and before gain and pan.

Instrument and generator layers

An instrument layer is a layer whose sound comes from a plugin: a synth holding a chord, or a generator. Choose the notes on the on-screen keyboard, then set velocity (how hard they're struck, which on most instruments changes tone as well as level) and release (how long before the stage ends the notes let go, so the instrument's own tail happens inside the stage). Which sound it makes is chosen in the plugin's own window. A layer with no notes makes no sound, and export will stop until you add one.

Two buttons let you hear an instrument without playing the whole session:

  • Audition renders eight seconds of the plugin as it is set right now and plays them. If you change something while they play, the button offers Again, because a recording can't change under itself. Change a filter on the layer and the audition replays through it straight away.
  • Hold runs the plugin live until you press Stop, so you can open its window and turn its controls while the sound continues. Filters and chain plugins on the layer are heard as you adjust them too.

Both play the layer through its own filters and chain plugins, without its gain and pan or the stage mix.

Hearing plugins in the session

Chain plugins run live as the transport plays, and a knob turned in a plugin's window is heard as you turn it. The live / dry switch beside Render Mixes turns that off if a heavy chain makes playback stutter; the stages using those plugins then play without them, and the transport says so. Render Mixes always plays the exact result, and it is what the export uses. An instrument layer's own sound is heard in the mix once the stage has been rendered.

MIDI control

A MIDI controller's knob can be wired to a gain or pan control. Press the small radio-waves button beside the control, move a knob, and they're linked; press the button again to stop listening. A knob writes values into the project exactly as dragging the slider would, so the change is saved, can be undone, and is what gets exported. It doesn't record movement over time; for that, use movement or a drawn curve. Each control can be wired to one knob.

Projects that use plugins

A project made in the Direct build opens in the App Store build with every plugin, setting and mapping preserved exactly. The App Store build can't host plugins, so those layers stay silent there, say so on the layer, and export warns instead of baking a different mix. Open the project in the Direct build to hear and edit them.

Closing a project window closes its plugin windows too.

08 Simple & Full

Choose how much of the editor you see, in Settings ▸ Editing. Both are free, both are in every build, and they never change what a session sounds like.

SimpleFull
Audio and text layers, gain and pan, loop, start delayShownShown
Tones and noise, recordingShownShown
Filters & EQ, delay, movementHiddenShown
Drawn gain and pan curvesHiddenShown
Plugins and MIDI (Direct build)HiddenShown

Simple hides controls; it never resets, trims or removes the settings behind them. A project made in Full opens in Simple with everything intact and exports exactly the same audio. A layer or Stage Mix that is using something Simple is hiding says so, for example uses filters and EQ, kept and applied, and shown in Full, so you're never left hearing something you can't find. A plugin that is an instrument layer's own source keeps its Audition, Hold and Open buttons in Simple, and the plugin buttons in the Session Overview always open that plugin.

Session Overview

Window ▸ Session Overview opens the whole session in one compact list, stage by stage with each stage's layers under it. It follows whichever project is in front. Click a stage or a layer to jump to it in the editor. Badges show which stages are rendered and which are only approximated, a missing audio file, a layer that starts after its stage ends, and anything hidden by Simple.

09 Transitions & alerts

Transitions: Begins with / Ends with

Each stage sets how its audio starts and ends, independently:

ModeWhat happens
CutSnaps in or out instantly, no ramp.
FadeRamps volume smoothly over the transition.
CrossfadeThe outgoing stage fades out while the next stage fades in, overlapping.

Voice cues & stage end warnings

Turn on Voice cues to have the exported session announce stage names as it plays. Stage end warnings add a spoken "10 seconds" call and a 3‑2‑1 countdown near the end of a stage. Both are set per session, and recipients can re‑enable everything on their own device even if you ship a session pre‑quieted.

10 Preview & transport

The transport bar at the bottom plays the whole session timeline, not just one stage.

  • Scrub anywhere in the timeline to jump to that point in the session; each stage's layers are laid out as lanes so you can see what's playing when, in the same colors the stage editor gives them — teal for audio, orange for spoken text, gray for on-screen-only text.
  • Adjust a gain or pan slider while the transport is playing and you hear the change immediately — no need to stop and re-preview.
  • Pop the transport into its own window if you'd rather keep it beside your work instead of pinned to the bottom of the main window.
  • Stage transitions play. Fades and crossfades happen in the transport the way they will on the phone, so the part of a session you most want to judge — how it moves from one stage to the next — is something you can hear here rather than after exporting.
  • Render Mixes (⌘⇧R, or the button beside the timeline) sums a mixed stage offline exactly as the export will, and the transport plays that file instead of the live layers. Gains above 100%, the pan law and the clip normalization are then heard rather than approximated, and the export reuses what you rendered — the file you auditioned is the file that ships. Editing a stage puts it back to the live preview on its own; there's no mode to leave. Only mixed stages can be rendered: a stage that passes its source through untouched, or whose text is spoken on the listener's device, says so instead of pretending to need it.
  • Filters and delays are heard live, in the same order the export applies them, so a filter you adjust while the transport plays changes the sound immediately. In the Direct build, plugins in a chain run live too; see Plugins & MIDI.
  • Revert to Rendered Version appears on a stage you've edited since rendering it. It puts the stage back as it was when it was rendered, so the render on disk matches again with nothing to re-render.

The transport is still a preview: it plays one pass through, and doesn't simulate stage repeats, alert tones, or haptics — those are play-time behavior in FulwaveTimer. Export and open it there to hear the finished session exactly as recipients will.

11 Lock policy & distribution rights

Lock session

Turn on Lock session before exporting if you want to control what a recipient can change. A locked session lets whoever opens it in FulwaveTimer adjust stage times, haptics, alert sounds, voice cues, the shortcuts that set their own Focus, and how they file it in their own library — but not the media, stages, or transitions you built. This is a client‑side policy, not copy protection or DRM.

Distribution rights

Before exporting, check I own or hold the necessary rights to distribute all audio, text, and voices included in this session. This attestation is required to enable the Export button — make sure it's actually true for every audio file and voice you've included before checking it.

System voices are the exception you're most likely to trip over. Apple licenses the voices built into macOS for content you create for your own personal, non-commercial use. Recording them and passing the recording on is not permitted — that covers selling a session and giving one away publicly alike. A baked phrase is exactly that recording, so a session you intend to share or sell should deliver its speech live instead: the words travel as text and the recipient's own device speaks them, under their own licence, with no recording of the voice anywhere in the file. The Export pane warns you when a stage bakes a system voice. If you need a fixed voice in a session you'll distribute, record a real one or use a text-to-speech service that grants commercial rights, and bring it in as an audio layer. This is a summary, not legal advice — the terms that bind you are in Apple's macOS Software License Agreement.

12 Saving & exporting

Working file: .fwd

Save your project as a .fwd file (⌘S) at any point — layers stay un-mixed and fully editable, exactly like any other Mac document. Reopen it later and keep working.

Shareable file: .fws

When you're ready to share, use Export Session (.fws)…. Each stage is mixed down and baked into one clean audio file on export — a stage whose only sound-producing layer is one untouched audio track passes through without re‑encoding, and a text‑only stage stays live (FulwaveTimer synthesizes it on-device, keeping the teleprompter feature working) as long as that layer is still set to Deliver as live speech; turn that off and its phrase is baked like any other. The Render summary in the Session panel shows exactly what will happen — for example "2 baked mixes, 1 live text." A stage with nothing audible in it exports as a silent stretch of its full length, which is how you build a deliberate pause.

Send the resulting .fws file to anyone with FulwaveTimer on iPhone — AirDrop, Messages, email, whatever you'd use for any other file. No account or server is involved.

13 Appearance & keyboard

Fulwave Designer follows your Mac's Light or Dark appearance automatically, and is built for full keyboard control — every panel and control is reachable without the mouse. It's a standard Mac document app: your projects live wherever you save them, no sign-in required.

  • Space plays and pauses — unless a text field has the keyboard, in which case it types a space, the same as anywhere else on the Mac. Press Return to finish editing a field, or Escape to leave it as it was, and Space is play/pause again. The transport bar says so while a field is holding the keyboard.
  • ⌥Space plays and pauses from anywhere, including while you're typing in a field, and ⌥. stops.
  • File ▸ Open Recent lists the last ten projects and sessions you've worked on. It fills as you open and save files, so it starts out empty.

14 FAQ & troubleshooting

The Export button is disabled.
Export needs at least one stage with content, and the Distribution Rights checkbox ticked in the Session panel. Add a stage or a layer, confirm you hold the rights to everything included, and Export will enable.
What's the difference between .fwd and .fws?
.fwd is your editable project — layers stay separate so you can keep adjusting gain, pan, and timing. .fws is the exported, shareable result: each stage's layers are mixed down into one file, ready for FulwaveTimer to play. Keep the .fwd around if you'll want to revise the session later.
Why did a stage's audio get re-encoded on export?
A stage has to be mixed down once more than one layer is making sound, or once anything has been applied to it: a start delay, a layer gain or pan, a drawn curve, movement, a filter, a delay or a plugin, or a Stage Mix master that isn't at unity gain and dead center. A tone or noise layer, a recording or an instrument is always rendered, since there's no file to pass through. A stage passes through untouched when exactly one layer is producing audio from a file and nothing has been done to it. Layers that make no sound of their own don't count against that: a live-speech cue, a display-only text layer, or a muted layer can all sit alongside your audio track without forcing a re-encode.
Can the person I send a session to change it?
That depends on whether you locked it. An unlocked session is fully editable on the recipient's end. A locked session lets them adjust stage times, haptics, alert sounds, voice cues, their own Focus shortcuts, and their own color tag and folder, but not your media, stages, or transitions — see Lock policy & distribution rights.
Simple and Full look almost the same. What changed?
Simple hides filters and EQ, delay, movement, drawn curves and (in the Direct build) plugins and MIDI. If your project doesn't use any of those, the two look the same. See Simple & Full.
A layer says it uses an audio plugin and stays silent.
That project was made in the Direct build, which can host plugins. This build keeps the layer and its settings exactly as authored but can't play it, and export leaves it out and warns you. Open the project in the Direct build to hear and edit it.
Which version do I have, Direct or App Store?
The Direct build says Direct Build at the very bottom of the export panel, in its About window, and in the footer of Settings. The App Store build has no label in the main window, and its Settings footer says App Store build. Both show the same version number.
What's the difference between the Direct and App Store versions?
One thing: plugins and MIDI. The Direct build, distributed outside the Mac App Store, can host Audio Unit plugins (effects and instruments) and take MIDI controllers; the App Store build can't, because of the Mac App Store's sandbox. Everything else is identical: layers, tones and noise, recording, filters, delay, movement, drawn curves, Simple and Full, rendering and export. A project made in either opens in the other with nothing lost, and both write the same .fws file, which FulwaveTimer plays the same way. The only difference is that a plugin layer stays silent in the App Store build, and says so. See Plugins & MIDI.
Why doesn't the preview sound exactly like the export?
The live preview approximates a mixed stage: gains above 100%, the pan law and the clip protection all land in the final mix. Render Mixes (⌘⇧R) builds that exact mix and plays it, and the export reuses it, so what you hear after rendering is what ships. Editing a stage puts it back on the live preview. In the Direct build, if plugins make playback stutter, turn the live / dry switch off and use Render Mixes to hear them.
A plugin says it isn't installed.
The project remembers which plugin each layer used, and that plugin is no longer on this Mac. Reinstall it, or remove it from the layer. Export refuses to continue while a layer needs a plugin that isn't there, rather than quietly changing the mix.
Recording doesn't work, or the microphone level never moves.
macOS asks for microphone access only once. If you declined, open System Settings ▸ Privacy & Security ▸ Microphone, switch Fulwave Designer on, and try again. The Record sheet shows the same instructions.
Does Fulwave Designer need an internet connection?
No. Nothing you make leaves your Mac unless you export a session and send it yourself — there's no account, no analytics, and no network access in the app at all.

15 Support

Questions, bug reports, or feature requests: fulwave.com/Support.