Make a 15-second product video from three generated clips
· the plori team
Give a Plori agent your product, a visual style and three scenes. The agent makes a 2-second test clip, checks it with ffprobe, and asks you whether to continue. After you answer, it generates three 5-second clips at 720p and joins them with ffmpeg into one MP4 in the Workspace.
This guide records a run on 17 October 2026 that made a 15-second video for Plori. The
job cost $0.54. Video generation is available in the Plori web app and in the plori CLI
signed in with an API key. Runs that start over the Plori MCP connector do not have it.
One run, from test clip to final file
A 2-second test comes first and the agent waits for your answer before it makes the three full clips.
- 01
Test
2 s at 480p, then you decide
$0.04
- 02
Generate
Three 5 s clips at 720p
video_generate
- 03
Join
One MP4 from the three
ffmpeg
- 04
Check
ffprobe, then you watch it
final.mp4
What do you need?
- A Plori account with at least $1.00 of credits. The recorded job cost $0.54.
- The Plori web app, or the
ploriCLI signed in with an API key (plori login --keyor thePLORI_API_KEYenvironment variable). - The name of your product and one line that says what it does.
- One visual style for all three clips.
- Three scene descriptions, one for each clip.
video_generate charges for each second of video. The tool's own description gives the
rates: $0.02 a second at 480p and $0.03 a second at 720p. Plori also charges for model
usage and run time.
What prompt should you give Plori?
Replace PRODUCT_NAME, PRODUCT_ONE_LINE, STYLE and SCENE_1 to SCENE_3. Keep the
test step, the stop before step 2, the retry limit and the last instruction of step 4.
Make a 15-second product video from three generated clips and join them. Product: PRODUCT_NAME, PRODUCT_ONE_LINE. Visual style: STYLE. Aspect ratio 16:9. No text in the clips.
Step 1, test: call video_generate once for a 2-second clip at 480p of the first scene. Run ffmpeg -version, then run ffprobe on the clip and tell me its duration, resolution, and whether it has an audio stream. Then stop and use ask_user to tell me what the test cost and ask whether to continue. Do nothing else until I answer.
Step 2, only after I say continue: call video_generate three times, one per scene, each 5 seconds at 720p, 16:9, saved in /video/clips/. Scenes: 1. SCENE_1 2. SCENE_2 3. SCENE_3. Use video_status if a call returns a job_id. Retry no clip more than once, and report any failed clip instead of replacing it silently.
Step 3: join the three clips in order with ffmpeg into /video/final.mp4 as H.264 with yuv420p pixels and faststart, keeping audio only if every clip has audio. Run ffprobe on final.mp4 and report duration, resolution, size in MB, and audio.
Step 4: reply with the file list, the duration of each clip, the cost of each generation call, and the total. Tell me that you have not seen the video and that I must watch it.
Do not publish anything and do not call any other external service.The recorded run used these values:
PRODUCT_NAME: PloriPRODUCT_ONE_LINE: a team of AI agents that collaborate on one product in the cloudSTYLE: abstract and calm, dark background, a dotted sphere of light with small bright points around it, one warm orange accent, no people, no faces, no handsSCENE_1: A dotted sphere of light turns slowly in the dark with small bright points orbiting itSCENE_2: Thin arcs of light travel from the sphere out to the points, and brighter arcs travel backSCENE_3: The points settle into the sphere with a soft ripple and the sphere glows a little brighter
Why is the prompt shaped this way?
The test clip costs $0.04. Before the main spend, it shows that the video tool works for this agent and that ffmpeg and ffprobe run in the Workspace. It also shows the format of a generated clip. In the recorded run, ffprobe found an extra MJPEG stream in the test clip. The join step later did not copy that stream to the final file.
ask_user stops the run after the test. The three clips at 720p cost $0.45, and the
agent starts them only after you answer.
The retry limit sets the highest cost. Plori charges for each generation, and the prompt allows one retry for each clip. Six 5-second calls at 720p cost $0.90, so the three clips cost $0.90 at most. A clip that fails two times appears in the reply as a failure.
Step 3 sets the format of the final file. The ffmpeg concat filter needs the same streams in each input, so the prompt keeps audio only if every clip has an audio stream. Current browsers play H.264 with yuv420p pixels. The faststart flag puts the index at the start of the file, so playback can start before the download ends.
The tool result for every clip says: "The model has not seen the clip." The agent cannot judge the footage. The last instruction of step 4 makes the agent tell you so.
Where can the run start, and what needs your answer?
The recorded run started from the plori CLI, signed in with an API key on the owner's
account. The web app gives the agent the same tools for the same prompt. video_generate
and video_status are not available to agents started over MCP, for example from Claude
Code, Codex or Cursor. They are also not available to a CLI session signed in through the
browser.
The job has one decision: the question after the test clip. In the web app, the question
shows as a card with Continue and Stop. In the CLI, plori input list shows it. In the
recorded run, the owner answered from the terminal with
plori input answer <run-id> <tool-call-id> --value Continue.
No approval card appeared in the recorded run. The agent wrote files only in its Workspace, and the prompt forbids publishing and calls to other external services.
What did the real run prove?
The first run started at 20:59:26 UTC on 17 October 2026 and paused after 45 seconds. It
called video_generate one time for the test clip, ran ffmpeg -version, ran ffprobe
on the clip, and asked whether to continue. ffprobe reported 2.04 seconds, 848x480, one
AAC audio stream and one MJPEG video stream, 0.39 MB. The installed ffmpeg was version
7.0.2. The tool reported a cost of $0.04 for the clip.
The owner answered Continue about two minutes later. The continuation started at
21:02:18 UTC and ran for 2 minutes 37 seconds. It called video_generate three times,
one call after the other. Each call took 33 to 37 seconds and returned a 5-second clip
at 720p. No clip failed, and the agent retried none. ffprobe showed that each clip was
5.04 seconds at 1280x720, with one AAC audio stream and one MJPEG stream.
The agent joined the clips with the ffmpeg concat filter in 14 seconds. It encoded the
video again as H.264, kept the audio and did not copy the MJPEG streams. ffprobe reported
this for /video/final.mp4:
| Property | Value |
|---|---|
| Duration | 15.125 seconds |
| Resolution | 1280x720 |
| Video | H.264, yuv420p pixels, faststart |
| Audio | One AAC stream |
| Size | 3.67 MB |
The cost of the job:
| Item | Cost |
|---|---|
| Test clip, 2 seconds at 480p | $0.04 |
| Three clips, 5 seconds each at 720p | $0.45 |
| Model usage and run time, both runs | About $0.05 |
| Total | $0.54 |
The clip costs are the amounts that the tool reported for each call: $0.04 for the test and $0.15 for each 5-second clip. The total is the amount that Plori charged for the two runs. The two runs took 3 minutes 22 seconds. The wait for the answer took about 2 minutes, and Plori charged no run time for it.
This is final.mp4 from the run, without changes. The agent did not see it. Watch it
before you use a video that you make with this prompt.
The run shows that one prompt can make a joined 15-second file for $0.54. The agent stopped after a $0.04 test, before the main spend. The run does not show that the footage matches the brief. Watch the video to judge that.
What did the agent get wrong after the pause?
The continuation's reply started with a false correction. It said that the agent had not run the test generation, ffmpeg or ffprobe before the pause. It also said that the agent did not know what made the test clip, and that the $0.04 was an estimate and not a charge.
The step list of the first run shows all three calls. The tool returned a cost of $0.04 for the test clip, and Plori charged the run for it. The file list, the durations and the costs in the rest of the reply agree with the step list.
After a pause, the agent's report of its own earlier steps can be wrong. To find what happened, open the conversation and read the tool steps. The conversation page shows each tool call with its result.
How do you check it safely?
The test clip costs $0.04, and the agent stops before it makes the three full clips. The agent publishes nothing, and the files stay in the Workspace.
- Replace the placeholders in the prompt.
- Send the prompt to a Plori agent in the web app or from the CLI signed in with an API key.
- Wait for the question after the test clip.
- Read the cost, the duration, the resolution and the audio result in the question.
- Download the test clip from the Files panel. Watch it.
- If the test clip is not correct, answer Stop. Change
STYLEorSCENE_1. Send the prompt again. - If the test clip is correct, answer Continue.
- When the run completes, open the tool steps in the conversation. Compare the cost of
each
video_generatecall with the costs in the reply. - Download
/video/final.mp4. Watch all of it with the sound on. - If one scene is not correct, tell the agent to generate that scene again and join the clips again. One new 5-second clip at 720p costs $0.15.
What are the limits?
- One clip is 1 to 15 seconds long. A longer video needs more clips and a join.
- The tool makes video at 480p or 720p only.
- The aspect ratio is one of 16:9, 9:16, 1:1, 4:3, 3:4, 3:2 and 2:3.
- A first frame image must be a PNG, JPEG or WEBP file in the Workspace, at most 8 MB. The tool description says that it adds $0.01 for each clip. The recorded run did not use one.
- The agent cannot see or hear the clips. A clip can be different from the scene text. A generated clip can show faces, hands, product shapes or text incorrectly. The recorded prompt asked for none of these. Use the clips as drafts.
- ffprobe shows if a clip has an audio stream. It does not show what the audio contains. The prompt makes the agent check for the stream. In the recorded run, every clip had an AAC stream, and the reply said that the audio was silent "as far as I know". Nobody listened to the audio for this guide.
- Plori charges for each new generation. The prompt allows one retry for each clip.
- Do not use this job for a scene that must show your real product screen. Record the real product for that.
- Video generation is not available to agents started over MCP or to a CLI session signed in through the browser.
- After a pause, the agent's report of its earlier steps can be wrong. Read the tool steps in the conversation.
- The rates in this guide are from the tool description on 17 October 2026.
- The recorded run used one product, one style and the 16:9 format. This guide has no run with a first frame image, with 480p final clips or with a vertical format.
Common questions about making a product video with an AI agent
Can an AI agent make a product video? Yes, from short generated clips. Plori runs AI agents that collaborate on one product in the cloud. In this run, an agent made three 5-second clips from scene descriptions and joined them with ffmpeg into one 15-second MP4. The agent cannot see the result, so a person must watch it.
How much does a 15-second video cost? The recorded job cost $0.54 on 17 October 2026: $0.04 for the test clip, $0.45 for three 5-second clips at 720p, and about $0.05 for model usage and run time.
Can I run this from Claude Code or another MCP client?
No. Video generation is not available to agents started over MCP. Use the Plori web app,
or the plori CLI signed in with an API key.
Does the video have sound? Every clip in the recorded run had an AAC audio stream, and the final file kept it. The agent cannot hear it. Listen to the file yourself.
Can the agent start a clip from my own image? The tool accepts a first frame image of at most 8 MB from the Workspace. This guide has no run that uses one.
Can the agent publish the video? This prompt forbids publishing. The file stays in the Workspace, and you can download it from the Files panel.
Related
- Make a product image and put it on a live site, for a generated image on a published page
- Compare three competitors in one dated report, for a research job that saves a dated report
- Disk and files, for the Files panel and downloads
- plori CLI, for API key sign-in and answers from the terminal
- Publish a site, to serve files from a Workspace folder
- Credits, for what a credit buys
Build it in plori
Open a Plori agent in the web app or sign the CLI in with an API key, then paste the prompt. Video generation is not available to agents started over MCP.
Review the prompt before sending.