Poster to Video
Turn a single poster or promotional image into a 15-second 9:16 marketing video package.
Package Layout
poster-to-video/
SKILL.md
forms.md
reference.md
scripts/
resources/
Read only what is needed:
- Use
forms.mdfor the generation package, submit checklist, and final report format. - Use
reference.mdfor detailed creative rules, visual-analysis prompts, Seedance 2.0 conventions, and quality gates. - Use
resources/prompt-template.txtwhen writing a copyable prompt file. - Use
scripts/check_seedance_prompt_lengths.ps1before submitting a Seedance-style prompt.
Defaults
- Output target: 15 seconds, 9:16, 720p or higher, audio on.
- One run uses one main reference image unless the user provides more assets.
- Final video-model prompt should be Chinese when targeting Seedance 2.0.
- Do not invent prices, discounts, certifications, brand endorsements, conversion data, platform UI, hardware specs, or QR codes.
- If the input contains a QR code, preserve only the original QR code as part of the source image or a protected crop; do not redraw or replace it.
- Do not add new on-screen subtitles, scrolling subtitles, bottom caption bars, random watermarks, or extra logos unless the user explicitly asks.
- Prompt length should stay under 3800 characters for Seedance-style submission.
- Preserve important visible text with crops, cards, masks, or highlights instead of asking the model to redraw dense Chinese text.
- Always include a no-garbled-Chinese constraint for generated or preserved Chinese characters.
Workflow
- Inspect the input image before writing any video prompt.
- Classify the source: campaign poster, advertising screen, template page, product poster, digital signage scene, kiosk display, sale banner, or other promotional asset.
- Extract visible facts: title, subtitle, small text, numbers, CTA, buttons, icons, cards, products, QR code status, scene, layout hierarchy, color palette, and style.
- Build an information-priority table:
- Must preserve.
- Can weaken or omit.
- Should not read aloud.
- Must not invent.
- Choose one video direction: campaign launch, template reuse, store attraction, product scene, seasonal sale, feature demo, or quick conversion CTA.
- Define one core benefit and one visual anchor from the source image.
- Write a 5-7 shot progression for 15 seconds. Each shot must have an integer-second range and one business-purpose motion.
- Write the generation package using
forms.md. - Write the final Seedance-style Chinese prompt using
reference.mdorresources/prompt-template.txt. - Run the strict prompt preflight when a prompt file exists.
- If the user provided a configured video-generation runner, submit the source image and prompt. Otherwise, return the ready-to-submit prompt and provider-neutral instructions.
Hard Preflight Checks
Keep these checks even when the user says to run quickly:
- Prompt is under 3800 characters unless the target provider allows more.
- Prompt uses Chinese field labels for Seedance-style submission.
- No banned English labels such as
Section,Scene Content,Dialogue,Subtitle Content,Voiceover Reading,SFX,Camera/Transition, orNegative Constraints. - No standalone
参考图解析section in the final prompt; source analysis belongs in the relevant@图片N = ...mapping line. - Every shot heading includes an integer-second range, such as
分镜一(0-2秒). - Any voiceover line uses
{}and includes toned pinyin for every pronounced syllable if the target TTS requires it. - No new subtitle fields unless the user requested visible subtitles.
- No raw URL, local path, or asset ID appears inside the prompt prose.
- Every shot that uses a source asset references the matching
@图片N. - Prompt includes a strong rule against garbled Chinese, mojibake, pseudo-Chinese, wrong characters, random strokes, and deformed text.
Commands
Validate a Seedance-style prompt:
& '.\skills\poster-to-video\scripts\check_seedance_prompt_lengths.ps1' `
-PromptPath '.\outputs\poster-video-prompt.txt' `
-StrictChineseSeedance
Install this skill locally from the repository root:
.\install.ps1
Final Response
Use the final report format in forms.md.
If video generation was actually submitted and a playable video URL was returned, include the raw URL as visible text. Do not hide it only behind a Markdown link.