SaaS launch teaser from one screenshot: a 12-second AI clip, priced

Animate an app screenshot into a 12-second teaser with first_frame. H3 Max $1.20, Wan 3.0 $1.50, Kling $1.68 sound off, Seedance 2.5 $6.94 on Sume.

5 min readSume
All posts

To make a launch teaser from a product screenshot, use the screenshot as the first frame of an image-to-video request and prompt a camera move around the device or the interface. On Sume a 12-second 720p teaser costs $1.20 on MiniMax H3 Max at 768p, $1.50 on Wan 3.0, $1.68 on Kling with sound off and $6.94 on Seedance 2.5.

Do not expect readable interface text to survive. Video models redraw small type, so use the clip as atmosphere between your real screen recordings, not as a replacement for them.

Prices for a 12-second 16:9 teaser

Gemini Omni Flash 1.1 is missing from the table because it stops at 10 seconds; a 10-second Omni Flash clip at 720p costs $1.25. All other prices are the vendor list price times 1.25, rounded up to the cent. Seedance is billed per token at 1280x720.

12-second 720p image-to-video, Sume billable price (read 2026-10-07)
ModelAllowed lengthPrice for 12 s
MiniMax H3 Max (768p)5 to 15 s$1.20
Wan 3.02 to 30 s$1.50
Kling Video v3 Pro, sound off4 to 15 s$1.68
Kling Video v3 Pro, sound on4 to 15 s$2.52
Seedance 2 (720p)4 to 15 s$4.54
Seedance 2.54 to 30 s$6.94

What a screenshot is good for

  • A hero shot: the screenshot sits on a laptop or phone mockup and the camera drifts past it.
  • Abstract motion: a UI-coloured background of light and shapes that you place behind your own text.
  • A reveal: the first frame is a blurred screenshot and the last frame is the sharp one.
  • A mood opener before a screen recording, so the recording starts after the viewer is already watching.

Keep the text out of the model

Put the real words in your editor. Use the model for the motion and Sume's timeline or your own tool for the captions, logo and call to action. A clean mockup image, with a blank screen or a soft gradient on the display, gives the model less to redraw and gives you a plain surface to composite the real interface onto.

If the screenshot must appear in the clip, shorten the clip to 4 or 5 seconds. Small text is the first thing to drift, so a shorter clip gives it less time to do so.

import os
import requests

API = "https://api.sume.com/v1/videos"
HEADERS = {"Authorization": "Bearer " + os.environ["SUME_API_KEY"]}
PHOTOS = [
    "https://example.com/photo-1.jpg",
    "https://example.com/photo-2.jpg",
]

for url in PHOTOS:
    body = {
        "model": "minimax-h3-max",
        "prompt": "Slow orbit around a floating laptop mockup, soft studio light, the screen content stays unchanged",
        "duration": 12,
        "resolution": "768p",
        "frame_images": [
            {
                "type": "image_url",
                "image_url": {"url": url},
                "frame_type": "first_frame",
            }
        ],
    }
    job = requests.post(API, headers=HEADERS, json=body, timeout=60)
    job.raise_for_status()
    print(url, job.json()["polling_url"])

Which model for which look

H3 Max and Wan 3.0 are the cheap pair and both accept a last frame, so they cover the reveal from a blurred to a sharp screenshot. Kling sound off is a few cents dearer and accepts only 16:9, 9:16 and 1:1, which is enough for a landing page or a social post. Seedance 2.5 is the one to try when the camera work matters more than the budget, and it is also the only row here that goes to 30 seconds besides Wan.

Test the prompt on the cheapest row first. If H3 Max gives you the move you want, there is no reason to pay nearly six times as much for the same shot.

Plan the length

A teaser rarely needs 12 seconds from one clip. Two 5-second clips cost $0.50 each on H3 Max at 768p, $1.00 together, against $1.20 for one 12-second render, and give you a cut in the middle. If your edit has a cut every two or three seconds, render 5-second clips and trim them. Sume reserves each amount when you submit and refunds it if a job fails.

Sources

Related posts

More in Use cases

All Use cases posts

Written by Sume