Product teaser video with AI: hold back, then reveal

A product teaser shows a detail and holds back the full product until the end. With AI, start a clip on a close-up and end it on the packshot.

5 min readSume
All posts

A product teaser video shows part of a product, or only its mood, and holds back the full look until a reveal at the end, which can close on a launch date. With AI, you can build that reveal from two images: a close-up detail as the clip's first frame and the full packshot as its last, so the model generates the move from one to the other.

The Sume facts below come from Video generation, Timeline 1.0, and the Format catalog, read on 2026-09-27.

How do I make the reveal shot?

Send both images to POST /v1/videos in frame_images, one with frame_type: "first_frame" and one with "last_frame", as public HTTPS URLs. The prompt describes the move between them; the docs advise including motion, camera angles, lighting, and scene composition. Crop the detail from the same packshot you end on, so the start and the end come from one photo.

Only models whose supported_frame_images lists last_frame take an end frame; which ones do, and what gets refused, is in the first-and-last-frame guide. If you also send input_references, frame_images takes precedence. Most models make up to 15 seconds per clip, and seedance-2.5 and wan-3.0 up to 30.

curl -X POST https://api.sume.com/v1/videos \
  -H "Authorization: Bearer $SUME_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: teaser-reveal-001" \
  -d '{
    "model": "seedance-2",
    "prompt": "Macro close-up on the brushed metal edge, then a slow pull-back revealing the whole speaker on a dark stage",
    "frame_images": [
      { "type": "image_url", "image_url": { "url": "https://example.com/teaser/detail.jpg" }, "frame_type": "first_frame" },
      { "type": "image_url", "image_url": { "url": "https://example.com/teaser/packshot.jpg" }, "frame_type": "last_frame" }
    ],
    "aspect_ratio": "9:16",
    "duration": 8
  }'

Will the reveal land exactly on my product?

Not guaranteed. The two frames set where the clip starts and ends, but the model generates every frame between them, including the packaging as it comes into view. Check the clip before you publish it:

  • Pull stills with POST /v1/video-frames at the times you name in at[]. It takes a Sume-hosted clip (Sume mirrors every generated output to media.sume.com) and is unbilled.
  • Look hardest at the last second, where the reveal lands, and at any label or logo. Product logo warping in image-to-video covers what to check.
  • If the move goes wrong, change the prompt or the model and generate again.

Can a Format make the product teaser for me?

Yes, if you'd rather not direct the shot yourself. The catalog Format sume-product-commercial lists “product teasers” among its uses, and sume-cinematic-studio-commercial lists “flagship product launches”; AI product commercials shows how to call either one at the reserved sume handle with your packshot attached. A description is the Format's stated aim, not a promise about one video.

How do I add a logo end card and the launch date?

Join the reveal and a logo end card in one Timeline 1.0 render. The end card can be a sume-logo-motion-design run, whose description lists “launch bumpers, and social end cards”; logo animation covers making it. Slots after the first can open with a transition of up to 1 second, and output.fade_out_seconds (0–5) fades the last seconds down to black and silence, per the API reference.

Today a render's sound comes only from its audio spine and optional soundtrack, not from the clips. Carry it on a spine, such as the reveal clip's own audio detached to a file, or on a soundtrack with audio.mode: "silence".

Burn the date as text with POST /v1/video-captions and cues (text, start, end), which skip speech-to-text. Today the caption job refuses a source longer than 60 seconds, so caption a teaser of a minute or less.

From Video generation, Video frames, Format API, Timeline 1.0, and Video captions, read 2026-09-27.
Teaser partHowLimits
Reveal shotPOST /v1/videos with a first_frame and a last_frameUp to 15 s on most models; 30 s on seedance-2.5 and wan-3.0
Frame checkPOST /v1/video-frames1–24 at[] times per call; unbilled
Logo end cardsume-logo-motion-design Format runLogo sent in attachments as a public HTTPS image
AssemblyPOST /v1/timeline-1.0/renderTransitions up to 1 s; fade-out 0–5 s; 1–1,800 s long
Launch datePOST /v1/video-captions with cuesSource up to 60 s today

Sources

Related posts

More in Use cases

All Use cases posts

Written by Sume