Pacing and waits
DemoTake edits time through events, not frames. Loading waits are shortened but stay visible, results can be held, ranges sped up and scenes trimmed, and a target length speeds up the unimportant parts first.
Most demo recordings are too slow in the same places: a spinner, a page load, a pause while you find the next button. DemoTake knows what happened in each moment of a take (a click, typing, a wait, a result), so it can tighten the boring parts without cutting into the moments viewers came to see.
Every pacing edit is non-destructive. The recording is never changed, and you can undo or adjust any of it later.
Waits are compressed, not cut
A wait is a moment where the app was loading and nobody could do anything. Waits are events in the take: an agent's observe_wait_for, a wait step in a demo spec or a logged wait event creates one. By default, any wait longer than 1 s plays in 0.4 s. The wait is sped up, not cut, so viewers still see the screen change from loading to loaded.
Change it in the inspector's Effects tab, in the Pacing group:
- Compress long waits: on by default. The hourglass button in the timeline toolbar toggles it too.
- Longer than: waits longer than this are compressed (default 1 s).
- Play in: how long a compressed wait plays (default 0.4 s).
- Cut blank frames: on by default. Removes spans where the recorded window stopped drawing.
Recordings you make by hand have clicks and typing but usually no wait events. Long pauses in those show up in Footage review instead, as still stretches you can shorten.
Hold a moment
A hold freezes the frame for a while, so a result stays on screen long enough to read. Press H (Hold at Playhead) to add a 1 s hold at the playhead. To hold after a specific event, select it on the timeline and set Hold after in the inspector (up to 5 s). "Hold the result two seconds longer" in the command bar holds the last result or confirmation.
Speed up a range
To play part of a scene faster, drag across it on the timeline's Pauses track. The Selection group in the Polish tab offers Speed up at 2×, 4× or 8×, Shorten to a number of seconds, and Ripple Delete. Each button's tooltip says how long the cut becomes. The hare button in the timeline toolbar speeds up 2 s at the playhead.
Trim, remove and exclude
- Trim a scene's start or end. Press I or O to trim the scene under the playhead to the playhead, drag a scene's edges on the timeline, or set Trim in and Trim out in the inspector.
- Remove an event. Select it and press Delete, or right-click it and choose Remove. Compress shortens it instead, and Keep protects a wait from compression. The inspector's In the cut control does the same.
- Leave out a whole scene. Select it and press Delete. See Undo and history to bring it back.
Set a target length
A target length is the fastest way to fit a slot: a 30-second launch clip, a 60-second store preview. In Effects › Pacing, click Set next to Target length and type the length, or say "make it 30 seconds" in the command bar.
DemoTake gets there by speeding up the unimportant material first: navigation, waits and routine clicks. Results, confirmations, form entry and important clicks keep their pace, and holds keep their length. Only if that isn't enough does it speed everything up a little. A target length only speeds material up; it never cuts. Where it can, it avoids speeding up stretches with visible pointer movement. Click the clear button next to the field to remove the target.
- Target length 30s
- Event → compress
- Speed 4.0×
Honest pacing for review videos
App reviewers need to trust what they see. Compressed waits are never hidden, only shortened, and a Reviewer Pack lists every pacing change in its manifest and notes, for example:
- Waits over 1.0 s shortened to 0.4 s (still visible).
- 2 range(s) sped up.
- Scene heads/tails trimmed.
For agents
| Tool | What it does |
|---|---|
| edit_compress_waits | enabled, threshold (default 1), compressed_to (default 0.4) |
| edit_speed | scene, start, end, rate (0 to 16; 0 removes the range) |
| edit_trim | scene, head and/or tail seconds |
| edit_apply | hold {scene, at, duration} or hold {event_id, duration}, target_duration {seconds} (at least 3), edit_event {event_id, action: keep, compress or remove}, keep_blank_frames |
target_duration reports exactly which ranges it sped up and by how much. Add max_still_seconds to ask for "no still longer than N seconds": every still stretch longer than that is shortened first, while readable screens, consent and result screens and stills under a caption keep their reading time.
Times are seconds within the scene's recording. timeline_get returns the scenes, surviving events and their edits to pick them from.
Where to go next
- Footage review: find and shorten long still stretches in any recording.
- The command bar: pacing edits in plain English.
- Undo and history: step back through any of these edits.