Camera and pointer
DemoTake draws a smooth presentation pointer from your recorded actions and zooms on the moments that tell the story, not on every click. Both are styles on top of the recording, so you can change them for the whole take at once.
A screen recording shows a real cursor: it jitters, overshoots and sometimes teleports when an agent drives the app. A demo needs something calmer. DemoTake keeps what happened (the clicks, the typing, where the pointer rested) and draws a presentation pointer and a camera on top of it at render time. The recording itself is never changed.
The presentation pointer
The pointer viewers see travels on a smooth curve between the places that matter: each click, each field you typed into and each place the pointer rested. It slows down as it arrives and pauses briefly before a click, the way a presenter would. Because the path is built from these moments, you can restyle it for the whole take instantly, even after recording.
Change it in the inspector's Setup tab, in the Pointer group:
| Setting | Options | Default |
|---|---|---|
| Motion | Calm, Natural, Precise, Fast, Presenter, Invisible | Natural |
| Shape | arrow, hand, dot, crosshair, I-beam, touch | arrow (touch for iOS Simulator takes) |
| Size | a slider | slightly larger than standard |
| Accent | any color | blue (#3B82F6) |
| Highlight ring | on or off | off |
| Click effects | on or off (a ripple on each click) | on |
- Calm and Presenter move slower and pause longer before clicks. Good for tutorials.
- Precise moves in near-straight lines. Fast is quick and snappy.
- Invisible hides the pointer; clicks still drive the camera.
- Touch is the finger indicator for iOS Simulator takes: a soft circle that appears at each tap with a ripple, instead of an arrow gliding between taps. See iOS Simulator.
A take's purpose sets its starting style. Marketing takes use the Pointer motion you pick in Settings › General. Reviewer takes start with a calm pointer and a highlight ring, tutorials with the presenter pointer and a ring, and DemoTest takes with the precise pointer.
Two cursors in one video
When an agent drives the app with another tool and DemoTake only records, that tool usually shows its own cursor. So that the video doesn't show two pointers, DemoTake's drawn pointer starts off (Invisible) in that case. To draw it anyway, pick another Motion in the Pointer group. Agents can choose on or off when they start recording.
The intent-aware camera
DemoTake zooms on story beats, not on raw mouse activity. Every event in a take has a role, such as navigation, form entry or a result, and the camera responds to that role:
- Results and confirmations get a zoom: a tighter punch-in when they are the key moment of the scene.
- Form entry and important interactions get a gentle focus zoom.
- Errors get a focus zoom so viewers can read them.
- Navigation, waiting and routine clicks stay wide.
Zooms always ease in and out; the camera never cuts. When two zoomed moments are close together it pans from one to the next instead of pulling back to wide in between. In 9:16 and 1:1 exports, the wide shot follows the pointer so the action stays in frame.
Camera intensity
Auto-zoom in the inspector's Effects tab sets how strong all automatic zooms are: Off, Subtle, Normal (the default) or Strong. Reviewer and DemoTest takes always render without automatic zoom, whatever this is set to, so nothing in a review video can look staged. A zoom you add yourself still applies.
Override the camera
Automatic is a starting point. You can direct the camera for a moment, a scene or a whole kind of event:
- Zoom at the playhead. Press Z or click the magnifier in the timeline toolbar (Zoom at Playhead). DemoTake adds a focus zoom from just before the playhead to about 2.5 s after it.
- No zoom in a scene. Right-click a scene on the timeline and choose No Zoom in Scene.
- One event. Select an event on the timeline and set Camera in the inspector: Auto, Wide, Focus or Punch-in.
- Every event like this one. Right-click an event and choose Never Zoom on Events Like This. DemoTake saves it as a rule for the take and its project, listed in the Camera group of the Effects tab.
- By command. "Don't zoom when opening Settings" or "less zoom" in the command bar.
Your directions override the automatic camera in their range and leave the rest alone. The timeline's Camera track shows every zoom and punch-in, so you can see the result at a glance. To see one exactly as the export draws it, press E (Exact Frame) under the preview.
For agents: edit_camera and edit_pointer
Agents use edit_camera to override the camera for a scene or a range, with the mode wide, focus, punch or none. Times are seconds within the scene's recording, and an optional region (normalized 0 to 1, top-left origin) says where to frame. A focus with a region frames exactly that region. Camera directions also apply to reviewer takes, whose automatic camera stays off. (Before 1.2, some camera regions were accepted but had no visible effect; that is fixed.)
{
"take_id": "<take id>",
"scene": "Create project",
"mode": "punch",
"start": 6.2,
"end": 9.0,
"region": { "x": 0.55, "y": 0.62, "width": 0.3, "height": 0.2 }
}edit_pointer restyles the pointer for the whole take: personality (calm, natural, precise, fast, presenter, invisible), shape (arrow, hand, dot, crosshair, ibeam, touch), size (0.5 to 3), color (hex), highlight_ring and click_effects. With edit_apply, camera_intensity {intensity} sets Auto-zoom, clear_camera {scene} removes camera overrides, and add_rule saves a rule like Never Zoom on Events Like This.
Agents that drive the app with their own tools should report each action with take_log_event, including the element or screen point. That is what places the pointer and tells the camera where the action is. In that setup DemoTake's pointer is off by default; capture_start with pointer: "on", or edit_pointer, turns it on.
Where to go next
- Pacing and waits: holds keep the camera on a result longer.
- Framing and Fit to Content: the background, padding and crop around the window.
- Undo and history: rules, and how to remove them.