The same shot is "understood" differently by different models. This skill provides a set ofuniversal skeleton + adaptation rules, without relying on any model's proprietary parameters.
Part of ecommerce-video-skills
⚠️ This skill does not provide any model's pricing, duration limits, resolution, frame rate, or other parameters — these change quickly, so please refer to each model's official documentation / console. When needed, have the user confirm or check the official page.
Inputs
- Shot list (can come from
selling-point-storyboard) - Target model (multiple selections possible; if unsure, use "universal")
- Input method for each shot: text-to-video / first-frame image-to-video / first-last-frame
- PRODUCT LOCK (product consistency description, see
image-to-video-shots)
Universal skeleton
{主体 + PRODUCT LOCK} , {主体动作} , {环境/场景} , {镜头运动} , {景别/角度} , {光线/色调} , {风格} , {节奏/时长描述}
约束:{保持商品一致} {不生成文字} {不出现其他品牌} {自然手部}
Writing principles (valid for most models):
- Specific verbs: "ice cubes fall into the glass" is better than "show the insulation effect."
- One action per shot, one camera movement: pushing in + panning + orbiting at the same time easily breaks the model.
- Put camera terms in a fixed position, using universal wording (see vocabulary).
- Describe products with nouns + color + material, avoiding piles of adjectives.
- For image-to-video, the promptonly writes the changes(action, camera movement); do not re-describe the entire image, otherwise the model will "repaint."
- Chinese models can use Chinese directly; most overseas models are more stable in English. Providing both is the easiest.
Camera vocabulary
| Chinese | English | Suitable for |
|---|---|---|
| Slow push in | slow push-in / dolly in | Product reveal, details |
| Slow pull out | slow pull-out / dolly out | From detail to wide shot, ending |
| Truck | truck left / right | Scene display |
| Orbit | orbit 30° around the product | 360 display on white background |
| Top-down descent | crane down / top-down descending | Flat lay, unboxing |
| Tracking | tracking shot following the hand | Usage process |
| Fixed camera | locked-off static camera | Frames with text, comparison |
| Macro | macro close-up, shallow depth of field | Material, craftsmanship |
| Fast push in | quick punch-in | Hook, key point |
Adaptation rules
| Input mode | Wording |
|---|---|
| Text-to-video | Complete skeleton + detailed PRODUCT LOCK; more likely to deviate from the real product, suitable for atmospheric shots, not for product close-ups |
| First-frame image-to-video | Remove scene/appearance descriptions from the skeleton, keeping only "action + camera movement + constraints" |
| First-last-frame | Only describe "what happens from the first frame to the last frame" + camera movement |
| Supports negative prompts | Add deformed product, changed logo, warped text, extra fingers, flicker, watermark |
| Does not support negative prompts | Write constraints as positive sentences:the product keeps exactly the same shape, colour and logo |
| Support reference image / subject reference | Upload the main image with a white background as the subject reference, and write "the product from the reference" in the prompt |
Output format Output
One block per shot:
### Shot 3 · 卖点:24h 保冰(首帧图生视频)
中文:冰块从上方落入瓶中,溅起细小水花;镜头缓慢推近;明亮柔和棚拍光;商品形状、颜色、Logo 保持不变,不生成文字。
English: Ice cubes drop into the bottle with a small splash; slow push-in; bright soft studio light. The product keeps exactly the same shape, colour and logo. No text.
Negative (if supported): deformed product, changed logo, warped text, flicker, watermark
Fallback: motion "zoom_in" in storyboard.json
Prompt template Prompt template (for batch rewriting with a large model)
把下面的分镜表改写为视频生成提示词。目标模型:{通用 / 你的模型名};输入模式:{首帧图生视频}。
规则:一镜一个动作一个运镜;图生视频只写变化;每镜输出中文、English、Negative(若支持)、Fallback motion;
不得写任何模型的价格、时长上限、分辨率等参数;PRODUCT LOCK:{…}
分镜表:{粘贴}
How to call (optional)
Many video models can be called through OpenAI-compatible or aggregation gateways. The scripts in this repository are not tied to any vendor; if you need one-stop calling of video/image/large models, you can configure the gateway address as BASE_URL(see the README "No Claude / API?").
Checklist Checklist
- Each shot: one action, one camera move, with PRODUCT LOCK or "only write the changes"
- Chinese and English versions; constraints also have positive phrasing
- No unverified model parameters/prices are written
- Each shot has a local fallback motion
Common issues and fixes Failure fixes
| Issue | Fix |
|---|---|
| The model "redrew" the product | When doing image-to-video, delete the appearance description and write only the action; add a subject reference image |
| The camera move did not take effect | Move the camera move word to the beginning of the sentence; keep only one camera move |
| The action is too exaggerated | Add subtle, gentle, slow; shorten the description |
| Styles are inconsistent across different models | Unify the lighting and color tone descriptions, and unify them in post with the same BGM/subtitles |