tufty.aitufty.ai CLI
Tools

Product Promo Video

Turn a product shot into a short promo cut.

cut one to nine product photos into a short promotional video (5 or 10 seconds, 720P or 1080P). Use when the user wants a product video, an ecommerce video ad, or a short promo clip made from product shots.

Overview

ItemValue
Commandtufty product-promo
TypeVideo
Required inputs--still still image, 1–9
Optional inputsNone
OutputVideo: 5 or 10 seconds

Parameters

FlagDescriptionChoicesDefault
--still <file|url...>Still images for the video: local path, data: URL or http(s) URL1–9
--duration <seconds>Video length in seconds5, 105
--ratio <id>Aspect ratio9:16, 1:1, 16:99:16
--resolution <id>Output resolution; see pricing below720P, 1080P720P
--notes <text>Extra instructions for this run, free text up to 2000 characters
--no-cutoutSkip the automatic cutout of input images (saves 1 credit per image)Switchcutout on
--dry-runValidate and print the payload and credit estimate; no upload, no chargeSwitch
--no-waitReturn the runId right after submittingSwitchwait
--timeout <seconds>Maximum seconds to wait for the runpositive number900
--save <dir>Download the outputs into this directory
--format <mode>Stdout format: full envelope, or one URL per linejson, urljson

Pricing

ResolutionCredits per second5 s10 s
720P31.75159318
1080P78.59393786

Total = round(price per second × --duration), plus 1 credit per still for the automatic cutout.

Prices as of September 15, 2026; they may change. tufty tools describe product-promo always shows the current ones, and --dry-run prints the exact estimate. See Credits.

Examples

Three angles of a bag into a 10-second 1080P vertical promo

tufty product-promo --still ./bag-1.jpg ./bag-2.jpg ./bag-3.jpg --duration 10 --resolution 1080P --ratio 9:16

Check the credit cost of a 1080P run first

tufty product-promo --still ./sneaker.jpg --resolution 1080P --duration 10 --dry-run

Output example

{
  "ok": true,
  "result": {
    "tool": "product-promo",
    "runId": "3f6c2a1e-8b4d-4e7a-9c55-0d2b7e1f4a90",
    "status": "completed",
    "outputs": [
      {
        "type": "video",
        "url": "https://static.tufty.ai/.../result.mp4"
      }
    ]
  }
}

With --save <dir> each output also has path; with --no-wait, status is running and outputs is empty. See Output modes.

Tips

  • Several angles of the same product give the edit more to work with.
  • Resolution is priced per second (see --resolution); run with --dry-run to see the total.

On this page