Sequence builder
From a shot list to a b-roll edit
Write the shots you need. Each one is searched across every source with your frame shape, a minimum of 1080p where possible and its length, and the best clip with direct files is picked, with alternatives. Watch the picks here, then take the edit into DaVinci Resolve, ffmpeg or Remotion. The media stays on the sources: the exports point at their files.
How it picks the clips
- 1Write the shot list. One shot per line, described like a search ('city skyline at night'). Add '(3s)' to set a shot's length; the others share the total.
- 2Pick the frame. 16:9, 9:16 or 1:1, a frame rate and an optional total length. Commercial-safe is on by default.
- 3Review the picks. Each shot gets the best matching clip with direct files, at least 1080p where possible and long enough for the shot, plus alternatives. Hover to preview, check the verdicts and notes.
- 4Export. Download timeline.otio for your editor, concat.sh to render with ffmpeg, remotion.json for a Remotion composition, and ATTRIBUTION.md for the credits.
A clip is never used twice. On long archive films the in-point skips the opening, where title cards usually are. When a pick is shorter than its shot, smaller than the frame or the wrong shape, the shot says so: the ffmpeg script holds the last frame, upscales or centre-crops.
What the exports do
- timeline.otio
- OpenTimelineIO with one video track: import it in DaVinci Resolve or Kdenlive, or convert it for Premiere Pro and Final Cut Pro with an OTIO adapter.
- concat.sh
- A POSIX shell script for ffmpeg: trims each shot, scales it to cover the frame, centre-crops, conforms the frame rate, encodes h264 without audio and joins the parts.
- remotion.json
- Clip sources, start frames and lengths in frames for a Remotion
<Series>of<OffthreadVideo>. - ATTRIBUTION.md, credits.json
- Every clip with its source, author, licence and credit line, ready for the description or end credits.
Step-by-step guide: build a b-roll sequence from a shot list →
From code or an agent
The same sequence over the REST API:
curl -X POST https://video.shep.bot/v1/sequences \
-H "content-type: application/json" \
-d '{"shots":["city skyline at night (4s)","coffee pour close-up (3s)","people walking in the rain"],"orientation":"portrait","fps":30,"totalDuration":15}'From a terminal: npx video-assets-server sequence shots.txt --orientation portrait --total 30. Or connect https://video.shep.bot/mcp to your agent (as video) and ask for “a 30-second vertical b-roll sequence: …”. Run locally, build_sequence with download=true also saves the clips next to the exports, which then use the local files. Agent setup