[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-replicate-prompt-videos":3,"mdc-hev84q-key":33,"related-org-replicate-prompt-videos":1321,"related-repo-replicate-prompt-videos":1402},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":11,"stars":22,"repoUrl":23,"updatedAt":24,"license":25,"forks":26,"topics":27,"repo":28,"sourceUrl":31,"mdContent":32},"prompt-videos","generate prompts for AI video models","Prompting techniques for AI video generation models on Replicate. Use when writing prompts for video models or building video generation features.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},"replicate","Replicate","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Freplicate.jpg",[12,16,19],{"name":13,"slug":14,"type":15},"LLM","llm","tag",{"name":17,"slug":18,"type":15},"Creative","creative",{"name":20,"slug":21,"type":15},"Video","video",51,"https:\u002F\u002Fgithub.com\u002Freplicate\u002Fskills","2026-07-16T06:03:10.065511",null,6,[],{"repoUrl":23,"stars":22,"forks":26,"topics":29,"description":30},[],"A collection of Agent Skills for building AI-powered apps with Replicate","https:\u002F\u002Fgithub.com\u002Freplicate\u002Fskills\u002Ftree\u002FHEAD\u002Fskills\u002Fprompt-videos","---\nname: prompt-videos\ndescription: >\n  Prompting techniques for AI video generation models on Replicate.\n  Use when writing prompts for video models or building video\n  generation features.\n---\n\n# Prompting video models on Replicate\n\nDistilled from Replicate's blog posts on prompting video models (2025-2026). Techniques are model-agnostic and focus on transferable principles.\n\n## Choose a model with the API, not from memory\n\nThis skill describes general prompting techniques. To choose a model, use the [find-models](..\u002Ffind-models\u002FSKILL.md) skill and query the Replicate API. The video model landscape changes weekly. Don't assume specific models exist or are still state-of-the-art based on names you've seen before. Always search the API for current options, then read the schema before running anything.\n\nFor pricing and feature comparison, see the [compare-models](..\u002Fcompare-models\u002FSKILL.md) skill.\n\n\n## Scene description\n\nA good video prompt is a scene description, not a caption. Write what happens, where, and how it looks.\n\n### Layer these elements into every prompt\n\n1. **Subject**: Who or what is in the scene (a person, animal, object, landscape).\n2. **Context**: Where the subject is (indoors, a city street, a forest, a spaceship corridor).\n3. **Action**: What the subject does (walks, turns, picks up a phone, runs).\n4. **Style**: The visual aesthetic (cinematic, animated, stop-motion, documentary).\n5. **Camera**: How the camera moves (dolly shot, tracking, static, handheld).\n6. **Composition**: How the shot is framed (wide shot, close-up, over-the-shoulder).\n7. **Ambiance**: Mood and lighting (warm tones, blue light, golden hour, overcast).\n\n### Be specific, not vague\n\nVague: \"A car chase\"\n\nSpecific: \"A high-speed car chase on a rain-drenched highway at night. Two muscle cars weave through heavy traffic at 140mph, headlights slicing through the downpour. One car clips a semi-truck sending sparks showering across six lanes. Tires hydroplane on standing water. Neon highway signs blur overhead.\"\n\n### Overdescribe\n\nModern video models handle long, dense prompts well. Don't write \"a man on the phone.\" Write \"a desperate man in a weathered green trench coat picks up a rotary phone mounted on a gritty brick wall, bathed in the eerie glow of a green neon sign.\" Every concrete detail you add gives the model less room to improvise poorly.\n\n### Name subjects directly\n\nUse descriptive phrases like \"the woman in the red jacket\" or \"the bearded man in flannel.\" Avoid pronouns, which are ambiguous to video models just as they are to image models.\n\n\n## Camera and cinematography\n\nVideo models understand filmmaking language. Use it to direct the shot rather than hoping for good framing.\n\n### Shot types\n\nUse standard shot terminology to control framing:\n\n- Wide\u002Festablishing shot: shows the full scene and environment\n- Medium shot: frames the subject from roughly the waist up\n- Close-up: fills the frame with the subject's face or a key object\n- Extreme close-up: isolates a detail (an eye, a hand gripping a handle, a drop of water)\n\n### Camera motion\n\nDescribe how the camera moves:\n\n- Static\u002Ftripod: locked-off, no movement\n- Pan: horizontal rotation left or right\n- Tilt: vertical rotation up or down\n- Dolly: camera physically moves toward or away from the subject\n- Tracking: camera moves alongside the subject\n- Crane: camera rises or descends vertically\n- Handheld: shaky, documentary-style movement\n- Drone\u002Faerial: overhead or sweeping bird's-eye shots\n- Dolly zoom (Hitchcock\u002Fvertigo effect): background stretches while subject stays locked\n\n### Camera position\n\nSpecify the camera's height and angle:\n\n- Eye level: neutral, natural perspective\n- Low angle \u002F worm's eye: looking up at the subject (makes subjects feel powerful or imposing)\n- High angle \u002F bird's eye: looking down (makes subjects feel small or vulnerable)\n- Over-the-shoulder: frames one subject from behind another\n- POV \u002F first-person: camera is the subject's eyes\n\n### Lens and focus language\n\n- Shallow depth of field: subject sharp, background blurred\n- Deep focus: everything sharp from foreground to background\n- Macro lens: extreme close-up with shallow focus\n- Wide-angle lens: exaggerated perspective, more environment visible\n- Tilt-shift: miniature effect, selective focus band\n\n### Escalation pattern\n\nA natural progression for short clips is wide > medium > close-up > extreme close-up. This maps well onto 8-15 second clips and gives the model clear structure. For example:\n\n- 0-3s: wide establishing shot of the location\n- 3-7s: medium shot, the subject enters or acts\n- 7-12s: close-up on the key moment\n- 12-15s: extreme close-up on a detail (a hand, an eye, a drop of rain)\n\n\n## Audio and dialogue\n\nMany video models generate audio natively alongside the visuals. If you don't prompt for the audio you want, the model will guess, and it often guesses wrong.\n\n### Prompt all four audio layers\n\n1. **Dialogue**: What characters say, either exact words or described intent.\n2. **Ambient sound**: The background audio of the scene (rain on metal awnings, city traffic, forest birds).\n3. **Sound effects**: Specific sounds from actions (a door slamming, glass breaking, a sword being drawn).\n4. **Music**: Genre, mood, and instrumentation (a tense cinematic score, soft jazz piano, no music).\n\nIf you skip ambient audio, models may hallucinate inappropriate sounds. A common failure mode is adding a \"live studio audience\" laughing in the background. Prevent this by describing the soundscape explicitly: \"sounds of distant bands, noisy crowd, ambient background of a busy festival field.\"\n\n### Dialogue prompting\n\nThere are two approaches:\n\n- Explicit: \"The man says: My name is Ben.\" This gives you exact control over the words.\n- Implicit: \"The man introduces himself.\" This lets the model decide the phrasing.\n\nExplicit dialogue should be short enough to fit the clip duration. Packing too much dialogue into an 8-second clip produces unnaturally fast speech. Too little dialogue can produce awkward silence or AI gibberish.\n\n### Syntax that avoids subtitles\n\nMany video models were trained on videos with baked-in subtitles and will add them to outputs. To prevent this:\n\n- Use a colon for dialogue: \"She says: Hello there\" rather than \"She says 'Hello there'\"\n- Add \"(no subtitles)\" to the prompt\n- If subtitles persist, repeat the instruction: \"No subtitles. No subtitles!\"\n\n### Pronunciation\n\nIf a model mispronounces a name or word, spell it phonetically in the prompt. For example, write \"foh-fur\" instead of \"fofr\" or \"Shreedar\" instead of \"Shridhar.\"\n\n### Who says what\n\nIn multi-character scenes, the model can mix up who says what. Tie dialogue to distinctive visual descriptions: \"The woman wearing pink says: ...\" and \"The man with glasses replies: ...\"\n\n\n## Multi-shot and time-coded prompting\n\nSome models support generating multiple shots within a single clip (up to ~15 seconds). You can direct each shot individually using time codes.\n\n### Time-coded format\n\nWrite timestamps directly into the prompt:\n\n```\n[0-4s]: Wide establishing shot, static camera, misty bamboo forest at dawn\n[4-9s]: Medium shot, slow push-in, the fighter steps forward\n[9-15s]: Close-up, orbit shot, the fighter strikes, slow motion\n```\n\nEach shot should specify:\n- Camera position and motion\n- Subject action\n- Lighting or mood shifts\n\n### Transition language\n\nUse explicit transition instructions between shots:\n\n- \"Hard cut to...\" for an abrupt switch\n- \"Seamless morph into...\" for a fluid transition\n- \"Whip pan to...\" for a fast, energetic cut\n- \"Snap cut to...\" for a jarring, dramatic shift\n\nWithout explicit transitions, the model improvises, which may or may not match your intent.\n\n### Example: multi-shot commercial\n\n```\n(0-3s) Macro shot of a luxury perfume bottle among scattered pink peonies,\n       shallow depth of field, petals floating in warm afternoon light,\n       soft ambient music.\n(3-7s) Camera glides closer, a feminine hand enters frame from the right,\n       fingers gently touch the glass bottle, the sound of silk rustling.\n(7-12s) Hard cut to slow-motion spray, golden mist diffuses through the air,\n        particles catching rim light against a dark background,\n        the hiss of the atomizer.\n(12-15s) Seamless pull-out to hero frame, product centered, volumetric\n         lighting, minimal cream background, elegant silence.\n```\n\n\n## Reference inputs\n\nMany video models accept images, video clips, or audio files as reference inputs alongside a text prompt. This shifts the workflow from \"prompting\" to something closer to \"directing.\"\n\n### Image-to-video\n\nFeed a starting image and describe the motion. The model animates from that frame.\n\n- The input image becomes the first frame of the video\n- Describe what changes (action, camera movement), not the static scene the model can already see\n- Style preservation is a strength: animated styles, paintings, photographs, and color grading all carry through\n- For maximum style control, generate the starting image with a specialized image model first, then pass it to the video model\n\n### First and last frame interpolation\n\nSome models accept both a starting and ending image. The model generates the transition between them. This is useful for:\n\n- Morphing between subjects (e.g. one animal transforming into another)\n- Before\u002Fafter transformations (room makeover, seasonal change)\n- Controlled narrative arcs where you know the start and end state\n\n### Subject references\n\nSome models accept reference images of characters, products, or objects and maintain their appearance in the generated video. This is useful for:\n\n- UGC-style product review videos (reference image of character + reference image of product)\n- Brand consistency across multiple video clips\n- Placing existing characters in new scenarios\n\nWhen referencing input assets, many models use a bracket syntax like `[Image1]` or `[Audio1]` in the prompt to specify which reference maps to which role: \"[Image2] is in the interior of [Image1].\"\n\n### Audio-driven generation\n\nSome models accept audio files and sync the generated video to the audio. The model can match:\n\n- Lip movements to speech\n- Cuts and motion to musical beats\n- Ambient rhythm to environmental sounds\n\nWhen using audio references, it helps to also transcribe the audio content in the text prompt itself, and match the video duration to the audio length.\n\n### Multi-reference workflows\n\nThe most powerful results come from combining multiple reference types:\n\n- An image for character appearance\n- A video clip for motion style\n- An audio track for rhythm and pacing\n- A text prompt describing how everything fits together\n\n\n## Style control\n\n### Name the style explicitly\n\nVideo models understand style labels. Include them directly in your prompt:\n\n- \"In the style of claymation\"\n- \"Pixar animation style\"\n- \"Anime\"\n- \"Stop-motion\"\n- \"8-bit retro\"\n- \"Graphic novel\"\n- \"Documentary footage\"\n- \"Origami\"\n- \"LEGO\"\n- \"Blueprint technical drawing\"\n\nStyle labels affect not just the visual look but also how characters move and interact. A claymation style produces jerky, stop-motion movement. An anime style produces fluid, exaggerated motion.\n\n### Quality anchors\n\nPhrases like \"hyper-realistic, 8k\" or \"cinematic\" push models toward their highest fidelity output. Use them when you want photorealistic results.\n\n### Film and genre language\n\nReference specific genres or filmmaking styles for mood and tone:\n\n- \"Michael Mann cinematography\" (neon, night, urban)\n- \"Wes Anderson\" (symmetrical, pastel, quirky)\n- \"Roger Deakins lighting\" (naturalistic, precise)\n- \"Blade Runner 2049 cinematography\" (atmospheric, orange\u002Fteal)\n- \"National Geographic documentary\" (nature, steady, observational)\n\n### Use input images for style\n\nRather than describing a style verbally, generate an image with the exact aesthetic you want using an image model, then pass it to the video model. This gives you pixel-level control over the look. The video model preserves the style, color grading, and composition while adding motion.\n\n### Grain and texture\n\nAdding \"slightly grainy, film-like\" or \"VHS aesthetic\" pushes output away from the too-clean AI look and makes videos feel more organic.\n\n\n## Character consistency\n\n### Repeat descriptions verbatim\n\nWhen generating multiple clips with the same character, use identical character descriptions across prompts. Create a \"character sheet\" with exact wording:\n\n\"John, a man in his 40s with short brown hair, wearing a blue jacket and glasses, looking thoughtful\"\n\nPaste this description into every prompt where John appears. The more specific and unique the description, the more consistent the results.\n\n### What to specify\n\n- Physical appearance: age, hair, skin, build\n- Clothing: exact garments, colors, materials\n- Accessories: glasses, jewelry, hat\n- Expression or demeanor: thoughtful, cheerful, intense\n\n### Vary the scene, not the character\n\nWhen placing a consistent character in different scenarios, change only the action, location, and camera work. Keep the character description word-for-word identical.\n\n### Reference images for identity\n\nIf the model supports subject reference images, use a clear photo of the character as input. This is more reliable than text descriptions alone, especially for maintaining facial features across clips.\n\n\n## Common pitfalls\n\n1. **Not describing audio**: If you skip audio prompting, models hallucinate ambient sounds. A common failure is adding inappropriate laughter or a \"live studio audience.\" Always describe the soundscape.\n\n2. **Too much dialogue for the clip length**: An 8-second clip can hold roughly 2-3 short sentences. Packing in a paragraph produces unnaturally fast speech or truncated output.\n\n3. **Too little dialogue for the clip length**: If you only provide a few words for a long clip, the model fills silence with gibberish or awkward pauses. Match dialogue length to clip duration.\n\n4. **Not specifying what to keep unchanged**: When using reference images or editing, always state what should stay the same. Without explicit instructions, models may change anything.\n\n5. **Expecting variation from identical prompts**: Unlike image models, some video models produce very similar outputs for the same prompt (even with different seeds). If you want variety, change the prompt, don't just rerun it.\n\n6. **Not prompting camera motion**: Without camera direction, you get either static shots or unpredictable movement. Describe the camera explicitly.\n\n7. **Subtitle contamination**: Many models were trained on videos with baked-in subtitles. Use colons for dialogue (not quotes), add \"(no subtitles)\", and repeat if necessary.\n\n8. **Vague prompts for complex scenes**: Modern video models handle long, detailed prompts. A prompt with 12+ specific requirements (camera moves, lighting, sound design, subject actions, environmental details) can work if each requirement is stated clearly. Don't undersell what you want.\n\n9. **Ignoring aspect ratio and resolution**: Most video models have specific resolutions they support (480p, 720p, 1080p). Check what the model supports and choose the right resolution for your use case. If you need vertical video and the model only outputs landscape, you may need to reframe with a separate tool.\n\n10. **Forgetting that video models don't have internet access**: No video model has live information. They work from training data. Don't expect them to know about current events or real-time information.\n\n\n## Background reading\n\nThe techniques above are distilled from Replicate's blog posts on prompting video models. The posts are anchored to specific models that were current at the time, but the techniques generalize across modern video models. Use these for additional context, then use the [find-models](..\u002Ffind-models\u002FSKILL.md) skill to pick a model that fits your task today.\n\n- [How to make remarkable videos with Seedance 2.0](https:\u002F\u002Freplicate.com\u002Fblog\u002Fseedance-2) (Apr 2026)\n- [How to prompt Veo 3.1](https:\u002F\u002Freplicate.com\u002Fblog\u002Fveo-3-1) (Oct 2025)\n- [How to prompt Veo 3 with images](https:\u002F\u002Freplicate.com\u002Fblog\u002Fveo-3-image) (Aug 2025)\n- [Open source video is back (Wan 2.2)](https:\u002F\u002Freplicate.com\u002Fblog\u002Fwan-22) (Jul 2025)\n- [Compare AI video models](https:\u002F\u002Freplicate.com\u002Fblog\u002Fcompare-ai-video-models) (Jul 2025)\n- [How to prompt Veo 3 for the best results](https:\u002F\u002Freplicate.com\u002Fblog\u002Fusing-and-prompting-veo-3) (Jun 2025)\n",{"data":34,"body":35},{"name":4,"description":6},{"type":36,"children":37},"root",[38,47,53,60,74,87,93,98,105,181,187,192,197,203,208,214,219,225,230,236,241,265,271,276,324,330,335,363,369,397,403,408,431,437,442,448,491,496,502,507,520,525,531,536,554,560,565,571,576,582,587,593,598,611,616,634,640,645,668,673,679,688,694,699,705,710,733,739,744,762,768,773,791,827,833,838,856,861,867,872,895,901,907,912,965,970,976,981,987,992,1020,1026,1031,1037,1042,1048,1054,1059,1064,1069,1075,1098,1104,1109,1115,1120,1126,1229,1235,1246],{"type":39,"tag":40,"props":41,"children":43},"element","h1",{"id":42},"prompting-video-models-on-replicate",[44],{"type":45,"value":46},"text","Prompting video models on Replicate",{"type":39,"tag":48,"props":49,"children":50},"p",{},[51],{"type":45,"value":52},"Distilled from Replicate's blog posts on prompting video models (2025-2026). Techniques are model-agnostic and focus on transferable principles.",{"type":39,"tag":54,"props":55,"children":57},"h2",{"id":56},"choose-a-model-with-the-api-not-from-memory",[58],{"type":45,"value":59},"Choose a model with the API, not from memory",{"type":39,"tag":48,"props":61,"children":62},{},[63,65,72],{"type":45,"value":64},"This skill describes general prompting techniques. To choose a model, use the ",{"type":39,"tag":66,"props":67,"children":69},"a",{"href":68},"..\u002Ffind-models\u002FSKILL.md",[70],{"type":45,"value":71},"find-models",{"type":45,"value":73}," skill and query the Replicate API. The video model landscape changes weekly. Don't assume specific models exist or are still state-of-the-art based on names you've seen before. Always search the API for current options, then read the schema before running anything.",{"type":39,"tag":48,"props":75,"children":76},{},[77,79,85],{"type":45,"value":78},"For pricing and feature comparison, see the ",{"type":39,"tag":66,"props":80,"children":82},{"href":81},"..\u002Fcompare-models\u002FSKILL.md",[83],{"type":45,"value":84},"compare-models",{"type":45,"value":86}," skill.",{"type":39,"tag":54,"props":88,"children":90},{"id":89},"scene-description",[91],{"type":45,"value":92},"Scene description",{"type":39,"tag":48,"props":94,"children":95},{},[96],{"type":45,"value":97},"A good video prompt is a scene description, not a caption. Write what happens, where, and how it looks.",{"type":39,"tag":99,"props":100,"children":102},"h3",{"id":101},"layer-these-elements-into-every-prompt",[103],{"type":45,"value":104},"Layer these elements into every prompt",{"type":39,"tag":106,"props":107,"children":108},"ol",{},[109,121,131,141,151,161,171],{"type":39,"tag":110,"props":111,"children":112},"li",{},[113,119],{"type":39,"tag":114,"props":115,"children":116},"strong",{},[117],{"type":45,"value":118},"Subject",{"type":45,"value":120},": Who or what is in the scene (a person, animal, object, landscape).",{"type":39,"tag":110,"props":122,"children":123},{},[124,129],{"type":39,"tag":114,"props":125,"children":126},{},[127],{"type":45,"value":128},"Context",{"type":45,"value":130},": Where the subject is (indoors, a city street, a forest, a spaceship corridor).",{"type":39,"tag":110,"props":132,"children":133},{},[134,139],{"type":39,"tag":114,"props":135,"children":136},{},[137],{"type":45,"value":138},"Action",{"type":45,"value":140},": What the subject does (walks, turns, picks up a phone, runs).",{"type":39,"tag":110,"props":142,"children":143},{},[144,149],{"type":39,"tag":114,"props":145,"children":146},{},[147],{"type":45,"value":148},"Style",{"type":45,"value":150},": The visual aesthetic (cinematic, animated, stop-motion, documentary).",{"type":39,"tag":110,"props":152,"children":153},{},[154,159],{"type":39,"tag":114,"props":155,"children":156},{},[157],{"type":45,"value":158},"Camera",{"type":45,"value":160},": How the camera moves (dolly shot, tracking, static, handheld).",{"type":39,"tag":110,"props":162,"children":163},{},[164,169],{"type":39,"tag":114,"props":165,"children":166},{},[167],{"type":45,"value":168},"Composition",{"type":45,"value":170},": How the shot is framed (wide shot, close-up, over-the-shoulder).",{"type":39,"tag":110,"props":172,"children":173},{},[174,179],{"type":39,"tag":114,"props":175,"children":176},{},[177],{"type":45,"value":178},"Ambiance",{"type":45,"value":180},": Mood and lighting (warm tones, blue light, golden hour, overcast).",{"type":39,"tag":99,"props":182,"children":184},{"id":183},"be-specific-not-vague",[185],{"type":45,"value":186},"Be specific, not vague",{"type":39,"tag":48,"props":188,"children":189},{},[190],{"type":45,"value":191},"Vague: \"A car chase\"",{"type":39,"tag":48,"props":193,"children":194},{},[195],{"type":45,"value":196},"Specific: \"A high-speed car chase on a rain-drenched highway at night. Two muscle cars weave through heavy traffic at 140mph, headlights slicing through the downpour. One car clips a semi-truck sending sparks showering across six lanes. Tires hydroplane on standing water. Neon highway signs blur overhead.\"",{"type":39,"tag":99,"props":198,"children":200},{"id":199},"overdescribe",[201],{"type":45,"value":202},"Overdescribe",{"type":39,"tag":48,"props":204,"children":205},{},[206],{"type":45,"value":207},"Modern video models handle long, dense prompts well. Don't write \"a man on the phone.\" Write \"a desperate man in a weathered green trench coat picks up a rotary phone mounted on a gritty brick wall, bathed in the eerie glow of a green neon sign.\" Every concrete detail you add gives the model less room to improvise poorly.",{"type":39,"tag":99,"props":209,"children":211},{"id":210},"name-subjects-directly",[212],{"type":45,"value":213},"Name subjects directly",{"type":39,"tag":48,"props":215,"children":216},{},[217],{"type":45,"value":218},"Use descriptive phrases like \"the woman in the red jacket\" or \"the bearded man in flannel.\" Avoid pronouns, which are ambiguous to video models just as they are to image models.",{"type":39,"tag":54,"props":220,"children":222},{"id":221},"camera-and-cinematography",[223],{"type":45,"value":224},"Camera and cinematography",{"type":39,"tag":48,"props":226,"children":227},{},[228],{"type":45,"value":229},"Video models understand filmmaking language. Use it to direct the shot rather than hoping for good framing.",{"type":39,"tag":99,"props":231,"children":233},{"id":232},"shot-types",[234],{"type":45,"value":235},"Shot types",{"type":39,"tag":48,"props":237,"children":238},{},[239],{"type":45,"value":240},"Use standard shot terminology to control framing:",{"type":39,"tag":242,"props":243,"children":244},"ul",{},[245,250,255,260],{"type":39,"tag":110,"props":246,"children":247},{},[248],{"type":45,"value":249},"Wide\u002Festablishing shot: shows the full scene and environment",{"type":39,"tag":110,"props":251,"children":252},{},[253],{"type":45,"value":254},"Medium shot: frames the subject from roughly the waist up",{"type":39,"tag":110,"props":256,"children":257},{},[258],{"type":45,"value":259},"Close-up: fills the frame with the subject's face or a key object",{"type":39,"tag":110,"props":261,"children":262},{},[263],{"type":45,"value":264},"Extreme close-up: isolates a detail (an eye, a hand gripping a handle, a drop of water)",{"type":39,"tag":99,"props":266,"children":268},{"id":267},"camera-motion",[269],{"type":45,"value":270},"Camera motion",{"type":39,"tag":48,"props":272,"children":273},{},[274],{"type":45,"value":275},"Describe how the camera moves:",{"type":39,"tag":242,"props":277,"children":278},{},[279,284,289,294,299,304,309,314,319],{"type":39,"tag":110,"props":280,"children":281},{},[282],{"type":45,"value":283},"Static\u002Ftripod: locked-off, no movement",{"type":39,"tag":110,"props":285,"children":286},{},[287],{"type":45,"value":288},"Pan: horizontal rotation left or right",{"type":39,"tag":110,"props":290,"children":291},{},[292],{"type":45,"value":293},"Tilt: vertical rotation up or down",{"type":39,"tag":110,"props":295,"children":296},{},[297],{"type":45,"value":298},"Dolly: camera physically moves toward or away from the subject",{"type":39,"tag":110,"props":300,"children":301},{},[302],{"type":45,"value":303},"Tracking: camera moves alongside the subject",{"type":39,"tag":110,"props":305,"children":306},{},[307],{"type":45,"value":308},"Crane: camera rises or descends vertically",{"type":39,"tag":110,"props":310,"children":311},{},[312],{"type":45,"value":313},"Handheld: shaky, documentary-style movement",{"type":39,"tag":110,"props":315,"children":316},{},[317],{"type":45,"value":318},"Drone\u002Faerial: overhead or sweeping bird's-eye shots",{"type":39,"tag":110,"props":320,"children":321},{},[322],{"type":45,"value":323},"Dolly zoom (Hitchcock\u002Fvertigo effect): background stretches while subject stays locked",{"type":39,"tag":99,"props":325,"children":327},{"id":326},"camera-position",[328],{"type":45,"value":329},"Camera position",{"type":39,"tag":48,"props":331,"children":332},{},[333],{"type":45,"value":334},"Specify the camera's height and angle:",{"type":39,"tag":242,"props":336,"children":337},{},[338,343,348,353,358],{"type":39,"tag":110,"props":339,"children":340},{},[341],{"type":45,"value":342},"Eye level: neutral, natural perspective",{"type":39,"tag":110,"props":344,"children":345},{},[346],{"type":45,"value":347},"Low angle \u002F worm's eye: looking up at the subject (makes subjects feel powerful or imposing)",{"type":39,"tag":110,"props":349,"children":350},{},[351],{"type":45,"value":352},"High angle \u002F bird's eye: looking down (makes subjects feel small or vulnerable)",{"type":39,"tag":110,"props":354,"children":355},{},[356],{"type":45,"value":357},"Over-the-shoulder: frames one subject from behind another",{"type":39,"tag":110,"props":359,"children":360},{},[361],{"type":45,"value":362},"POV \u002F first-person: camera is the subject's eyes",{"type":39,"tag":99,"props":364,"children":366},{"id":365},"lens-and-focus-language",[367],{"type":45,"value":368},"Lens and focus language",{"type":39,"tag":242,"props":370,"children":371},{},[372,377,382,387,392],{"type":39,"tag":110,"props":373,"children":374},{},[375],{"type":45,"value":376},"Shallow depth of field: subject sharp, background blurred",{"type":39,"tag":110,"props":378,"children":379},{},[380],{"type":45,"value":381},"Deep focus: everything sharp from foreground to background",{"type":39,"tag":110,"props":383,"children":384},{},[385],{"type":45,"value":386},"Macro lens: extreme close-up with shallow focus",{"type":39,"tag":110,"props":388,"children":389},{},[390],{"type":45,"value":391},"Wide-angle lens: exaggerated perspective, more environment visible",{"type":39,"tag":110,"props":393,"children":394},{},[395],{"type":45,"value":396},"Tilt-shift: miniature effect, selective focus band",{"type":39,"tag":99,"props":398,"children":400},{"id":399},"escalation-pattern",[401],{"type":45,"value":402},"Escalation pattern",{"type":39,"tag":48,"props":404,"children":405},{},[406],{"type":45,"value":407},"A natural progression for short clips is wide > medium > close-up > extreme close-up. This maps well onto 8-15 second clips and gives the model clear structure. For example:",{"type":39,"tag":242,"props":409,"children":410},{},[411,416,421,426],{"type":39,"tag":110,"props":412,"children":413},{},[414],{"type":45,"value":415},"0-3s: wide establishing shot of the location",{"type":39,"tag":110,"props":417,"children":418},{},[419],{"type":45,"value":420},"3-7s: medium shot, the subject enters or acts",{"type":39,"tag":110,"props":422,"children":423},{},[424],{"type":45,"value":425},"7-12s: close-up on the key moment",{"type":39,"tag":110,"props":427,"children":428},{},[429],{"type":45,"value":430},"12-15s: extreme close-up on a detail (a hand, an eye, a drop of rain)",{"type":39,"tag":54,"props":432,"children":434},{"id":433},"audio-and-dialogue",[435],{"type":45,"value":436},"Audio and dialogue",{"type":39,"tag":48,"props":438,"children":439},{},[440],{"type":45,"value":441},"Many video models generate audio natively alongside the visuals. If you don't prompt for the audio you want, the model will guess, and it often guesses wrong.",{"type":39,"tag":99,"props":443,"children":445},{"id":444},"prompt-all-four-audio-layers",[446],{"type":45,"value":447},"Prompt all four audio layers",{"type":39,"tag":106,"props":449,"children":450},{},[451,461,471,481],{"type":39,"tag":110,"props":452,"children":453},{},[454,459],{"type":39,"tag":114,"props":455,"children":456},{},[457],{"type":45,"value":458},"Dialogue",{"type":45,"value":460},": What characters say, either exact words or described intent.",{"type":39,"tag":110,"props":462,"children":463},{},[464,469],{"type":39,"tag":114,"props":465,"children":466},{},[467],{"type":45,"value":468},"Ambient sound",{"type":45,"value":470},": The background audio of the scene (rain on metal awnings, city traffic, forest birds).",{"type":39,"tag":110,"props":472,"children":473},{},[474,479],{"type":39,"tag":114,"props":475,"children":476},{},[477],{"type":45,"value":478},"Sound effects",{"type":45,"value":480},": Specific sounds from actions (a door slamming, glass breaking, a sword being drawn).",{"type":39,"tag":110,"props":482,"children":483},{},[484,489],{"type":39,"tag":114,"props":485,"children":486},{},[487],{"type":45,"value":488},"Music",{"type":45,"value":490},": Genre, mood, and instrumentation (a tense cinematic score, soft jazz piano, no music).",{"type":39,"tag":48,"props":492,"children":493},{},[494],{"type":45,"value":495},"If you skip ambient audio, models may hallucinate inappropriate sounds. A common failure mode is adding a \"live studio audience\" laughing in the background. Prevent this by describing the soundscape explicitly: \"sounds of distant bands, noisy crowd, ambient background of a busy festival field.\"",{"type":39,"tag":99,"props":497,"children":499},{"id":498},"dialogue-prompting",[500],{"type":45,"value":501},"Dialogue prompting",{"type":39,"tag":48,"props":503,"children":504},{},[505],{"type":45,"value":506},"There are two approaches:",{"type":39,"tag":242,"props":508,"children":509},{},[510,515],{"type":39,"tag":110,"props":511,"children":512},{},[513],{"type":45,"value":514},"Explicit: \"The man says: My name is Ben.\" This gives you exact control over the words.",{"type":39,"tag":110,"props":516,"children":517},{},[518],{"type":45,"value":519},"Implicit: \"The man introduces himself.\" This lets the model decide the phrasing.",{"type":39,"tag":48,"props":521,"children":522},{},[523],{"type":45,"value":524},"Explicit dialogue should be short enough to fit the clip duration. Packing too much dialogue into an 8-second clip produces unnaturally fast speech. Too little dialogue can produce awkward silence or AI gibberish.",{"type":39,"tag":99,"props":526,"children":528},{"id":527},"syntax-that-avoids-subtitles",[529],{"type":45,"value":530},"Syntax that avoids subtitles",{"type":39,"tag":48,"props":532,"children":533},{},[534],{"type":45,"value":535},"Many video models were trained on videos with baked-in subtitles and will add them to outputs. To prevent this:",{"type":39,"tag":242,"props":537,"children":538},{},[539,544,549],{"type":39,"tag":110,"props":540,"children":541},{},[542],{"type":45,"value":543},"Use a colon for dialogue: \"She says: Hello there\" rather than \"She says 'Hello there'\"",{"type":39,"tag":110,"props":545,"children":546},{},[547],{"type":45,"value":548},"Add \"(no subtitles)\" to the prompt",{"type":39,"tag":110,"props":550,"children":551},{},[552],{"type":45,"value":553},"If subtitles persist, repeat the instruction: \"No subtitles. No subtitles!\"",{"type":39,"tag":99,"props":555,"children":557},{"id":556},"pronunciation",[558],{"type":45,"value":559},"Pronunciation",{"type":39,"tag":48,"props":561,"children":562},{},[563],{"type":45,"value":564},"If a model mispronounces a name or word, spell it phonetically in the prompt. For example, write \"foh-fur\" instead of \"fofr\" or \"Shreedar\" instead of \"Shridhar.\"",{"type":39,"tag":99,"props":566,"children":568},{"id":567},"who-says-what",[569],{"type":45,"value":570},"Who says what",{"type":39,"tag":48,"props":572,"children":573},{},[574],{"type":45,"value":575},"In multi-character scenes, the model can mix up who says what. Tie dialogue to distinctive visual descriptions: \"The woman wearing pink says: ...\" and \"The man with glasses replies: ...\"",{"type":39,"tag":54,"props":577,"children":579},{"id":578},"multi-shot-and-time-coded-prompting",[580],{"type":45,"value":581},"Multi-shot and time-coded prompting",{"type":39,"tag":48,"props":583,"children":584},{},[585],{"type":45,"value":586},"Some models support generating multiple shots within a single clip (up to ~15 seconds). You can direct each shot individually using time codes.",{"type":39,"tag":99,"props":588,"children":590},{"id":589},"time-coded-format",[591],{"type":45,"value":592},"Time-coded format",{"type":39,"tag":48,"props":594,"children":595},{},[596],{"type":45,"value":597},"Write timestamps directly into the prompt:",{"type":39,"tag":599,"props":600,"children":604},"pre",{"className":601,"code":603,"language":45},[602],"language-text","[0-4s]: Wide establishing shot, static camera, misty bamboo forest at dawn\n[4-9s]: Medium shot, slow push-in, the fighter steps forward\n[9-15s]: Close-up, orbit shot, the fighter strikes, slow motion\n",[605],{"type":39,"tag":606,"props":607,"children":609},"code",{"__ignoreMap":608},"",[610],{"type":45,"value":603},{"type":39,"tag":48,"props":612,"children":613},{},[614],{"type":45,"value":615},"Each shot should specify:",{"type":39,"tag":242,"props":617,"children":618},{},[619,624,629],{"type":39,"tag":110,"props":620,"children":621},{},[622],{"type":45,"value":623},"Camera position and motion",{"type":39,"tag":110,"props":625,"children":626},{},[627],{"type":45,"value":628},"Subject action",{"type":39,"tag":110,"props":630,"children":631},{},[632],{"type":45,"value":633},"Lighting or mood shifts",{"type":39,"tag":99,"props":635,"children":637},{"id":636},"transition-language",[638],{"type":45,"value":639},"Transition language",{"type":39,"tag":48,"props":641,"children":642},{},[643],{"type":45,"value":644},"Use explicit transition instructions between shots:",{"type":39,"tag":242,"props":646,"children":647},{},[648,653,658,663],{"type":39,"tag":110,"props":649,"children":650},{},[651],{"type":45,"value":652},"\"Hard cut to...\" for an abrupt switch",{"type":39,"tag":110,"props":654,"children":655},{},[656],{"type":45,"value":657},"\"Seamless morph into...\" for a fluid transition",{"type":39,"tag":110,"props":659,"children":660},{},[661],{"type":45,"value":662},"\"Whip pan to...\" for a fast, energetic cut",{"type":39,"tag":110,"props":664,"children":665},{},[666],{"type":45,"value":667},"\"Snap cut to...\" for a jarring, dramatic shift",{"type":39,"tag":48,"props":669,"children":670},{},[671],{"type":45,"value":672},"Without explicit transitions, the model improvises, which may or may not match your intent.",{"type":39,"tag":99,"props":674,"children":676},{"id":675},"example-multi-shot-commercial",[677],{"type":45,"value":678},"Example: multi-shot commercial",{"type":39,"tag":599,"props":680,"children":683},{"className":681,"code":682,"language":45},[602],"(0-3s) Macro shot of a luxury perfume bottle among scattered pink peonies,\n       shallow depth of field, petals floating in warm afternoon light,\n       soft ambient music.\n(3-7s) Camera glides closer, a feminine hand enters frame from the right,\n       fingers gently touch the glass bottle, the sound of silk rustling.\n(7-12s) Hard cut to slow-motion spray, golden mist diffuses through the air,\n        particles catching rim light against a dark background,\n        the hiss of the atomizer.\n(12-15s) Seamless pull-out to hero frame, product centered, volumetric\n         lighting, minimal cream background, elegant silence.\n",[684],{"type":39,"tag":606,"props":685,"children":686},{"__ignoreMap":608},[687],{"type":45,"value":682},{"type":39,"tag":54,"props":689,"children":691},{"id":690},"reference-inputs",[692],{"type":45,"value":693},"Reference inputs",{"type":39,"tag":48,"props":695,"children":696},{},[697],{"type":45,"value":698},"Many video models accept images, video clips, or audio files as reference inputs alongside a text prompt. This shifts the workflow from \"prompting\" to something closer to \"directing.\"",{"type":39,"tag":99,"props":700,"children":702},{"id":701},"image-to-video",[703],{"type":45,"value":704},"Image-to-video",{"type":39,"tag":48,"props":706,"children":707},{},[708],{"type":45,"value":709},"Feed a starting image and describe the motion. The model animates from that frame.",{"type":39,"tag":242,"props":711,"children":712},{},[713,718,723,728],{"type":39,"tag":110,"props":714,"children":715},{},[716],{"type":45,"value":717},"The input image becomes the first frame of the video",{"type":39,"tag":110,"props":719,"children":720},{},[721],{"type":45,"value":722},"Describe what changes (action, camera movement), not the static scene the model can already see",{"type":39,"tag":110,"props":724,"children":725},{},[726],{"type":45,"value":727},"Style preservation is a strength: animated styles, paintings, photographs, and color grading all carry through",{"type":39,"tag":110,"props":729,"children":730},{},[731],{"type":45,"value":732},"For maximum style control, generate the starting image with a specialized image model first, then pass it to the video model",{"type":39,"tag":99,"props":734,"children":736},{"id":735},"first-and-last-frame-interpolation",[737],{"type":45,"value":738},"First and last frame interpolation",{"type":39,"tag":48,"props":740,"children":741},{},[742],{"type":45,"value":743},"Some models accept both a starting and ending image. The model generates the transition between them. This is useful for:",{"type":39,"tag":242,"props":745,"children":746},{},[747,752,757],{"type":39,"tag":110,"props":748,"children":749},{},[750],{"type":45,"value":751},"Morphing between subjects (e.g. one animal transforming into another)",{"type":39,"tag":110,"props":753,"children":754},{},[755],{"type":45,"value":756},"Before\u002Fafter transformations (room makeover, seasonal change)",{"type":39,"tag":110,"props":758,"children":759},{},[760],{"type":45,"value":761},"Controlled narrative arcs where you know the start and end state",{"type":39,"tag":99,"props":763,"children":765},{"id":764},"subject-references",[766],{"type":45,"value":767},"Subject references",{"type":39,"tag":48,"props":769,"children":770},{},[771],{"type":45,"value":772},"Some models accept reference images of characters, products, or objects and maintain their appearance in the generated video. This is useful for:",{"type":39,"tag":242,"props":774,"children":775},{},[776,781,786],{"type":39,"tag":110,"props":777,"children":778},{},[779],{"type":45,"value":780},"UGC-style product review videos (reference image of character + reference image of product)",{"type":39,"tag":110,"props":782,"children":783},{},[784],{"type":45,"value":785},"Brand consistency across multiple video clips",{"type":39,"tag":110,"props":787,"children":788},{},[789],{"type":45,"value":790},"Placing existing characters in new scenarios",{"type":39,"tag":48,"props":792,"children":793},{},[794,796,802,804,810,812,818,820,825],{"type":45,"value":795},"When referencing input assets, many models use a bracket syntax like ",{"type":39,"tag":606,"props":797,"children":799},{"className":798},[],[800],{"type":45,"value":801},"[Image1]",{"type":45,"value":803}," or ",{"type":39,"tag":606,"props":805,"children":807},{"className":806},[],[808],{"type":45,"value":809},"[Audio1]",{"type":45,"value":811}," in the prompt to specify which reference maps to which role: \"",{"type":39,"tag":813,"props":814,"children":815},"span",{},[816],{"type":45,"value":817},"Image2",{"type":45,"value":819}," is in the interior of ",{"type":39,"tag":813,"props":821,"children":822},{},[823],{"type":45,"value":824},"Image1",{"type":45,"value":826},".\"",{"type":39,"tag":99,"props":828,"children":830},{"id":829},"audio-driven-generation",[831],{"type":45,"value":832},"Audio-driven generation",{"type":39,"tag":48,"props":834,"children":835},{},[836],{"type":45,"value":837},"Some models accept audio files and sync the generated video to the audio. The model can match:",{"type":39,"tag":242,"props":839,"children":840},{},[841,846,851],{"type":39,"tag":110,"props":842,"children":843},{},[844],{"type":45,"value":845},"Lip movements to speech",{"type":39,"tag":110,"props":847,"children":848},{},[849],{"type":45,"value":850},"Cuts and motion to musical beats",{"type":39,"tag":110,"props":852,"children":853},{},[854],{"type":45,"value":855},"Ambient rhythm to environmental sounds",{"type":39,"tag":48,"props":857,"children":858},{},[859],{"type":45,"value":860},"When using audio references, it helps to also transcribe the audio content in the text prompt itself, and match the video duration to the audio length.",{"type":39,"tag":99,"props":862,"children":864},{"id":863},"multi-reference-workflows",[865],{"type":45,"value":866},"Multi-reference workflows",{"type":39,"tag":48,"props":868,"children":869},{},[870],{"type":45,"value":871},"The most powerful results come from combining multiple reference types:",{"type":39,"tag":242,"props":873,"children":874},{},[875,880,885,890],{"type":39,"tag":110,"props":876,"children":877},{},[878],{"type":45,"value":879},"An image for character appearance",{"type":39,"tag":110,"props":881,"children":882},{},[883],{"type":45,"value":884},"A video clip for motion style",{"type":39,"tag":110,"props":886,"children":887},{},[888],{"type":45,"value":889},"An audio track for rhythm and pacing",{"type":39,"tag":110,"props":891,"children":892},{},[893],{"type":45,"value":894},"A text prompt describing how everything fits together",{"type":39,"tag":54,"props":896,"children":898},{"id":897},"style-control",[899],{"type":45,"value":900},"Style control",{"type":39,"tag":99,"props":902,"children":904},{"id":903},"name-the-style-explicitly",[905],{"type":45,"value":906},"Name the style explicitly",{"type":39,"tag":48,"props":908,"children":909},{},[910],{"type":45,"value":911},"Video models understand style labels. Include them directly in your prompt:",{"type":39,"tag":242,"props":913,"children":914},{},[915,920,925,930,935,940,945,950,955,960],{"type":39,"tag":110,"props":916,"children":917},{},[918],{"type":45,"value":919},"\"In the style of claymation\"",{"type":39,"tag":110,"props":921,"children":922},{},[923],{"type":45,"value":924},"\"Pixar animation style\"",{"type":39,"tag":110,"props":926,"children":927},{},[928],{"type":45,"value":929},"\"Anime\"",{"type":39,"tag":110,"props":931,"children":932},{},[933],{"type":45,"value":934},"\"Stop-motion\"",{"type":39,"tag":110,"props":936,"children":937},{},[938],{"type":45,"value":939},"\"8-bit retro\"",{"type":39,"tag":110,"props":941,"children":942},{},[943],{"type":45,"value":944},"\"Graphic novel\"",{"type":39,"tag":110,"props":946,"children":947},{},[948],{"type":45,"value":949},"\"Documentary footage\"",{"type":39,"tag":110,"props":951,"children":952},{},[953],{"type":45,"value":954},"\"Origami\"",{"type":39,"tag":110,"props":956,"children":957},{},[958],{"type":45,"value":959},"\"LEGO\"",{"type":39,"tag":110,"props":961,"children":962},{},[963],{"type":45,"value":964},"\"Blueprint technical drawing\"",{"type":39,"tag":48,"props":966,"children":967},{},[968],{"type":45,"value":969},"Style labels affect not just the visual look but also how characters move and interact. A claymation style produces jerky, stop-motion movement. An anime style produces fluid, exaggerated motion.",{"type":39,"tag":99,"props":971,"children":973},{"id":972},"quality-anchors",[974],{"type":45,"value":975},"Quality anchors",{"type":39,"tag":48,"props":977,"children":978},{},[979],{"type":45,"value":980},"Phrases like \"hyper-realistic, 8k\" or \"cinematic\" push models toward their highest fidelity output. Use them when you want photorealistic results.",{"type":39,"tag":99,"props":982,"children":984},{"id":983},"film-and-genre-language",[985],{"type":45,"value":986},"Film and genre language",{"type":39,"tag":48,"props":988,"children":989},{},[990],{"type":45,"value":991},"Reference specific genres or filmmaking styles for mood and tone:",{"type":39,"tag":242,"props":993,"children":994},{},[995,1000,1005,1010,1015],{"type":39,"tag":110,"props":996,"children":997},{},[998],{"type":45,"value":999},"\"Michael Mann cinematography\" (neon, night, urban)",{"type":39,"tag":110,"props":1001,"children":1002},{},[1003],{"type":45,"value":1004},"\"Wes Anderson\" (symmetrical, pastel, quirky)",{"type":39,"tag":110,"props":1006,"children":1007},{},[1008],{"type":45,"value":1009},"\"Roger Deakins lighting\" (naturalistic, precise)",{"type":39,"tag":110,"props":1011,"children":1012},{},[1013],{"type":45,"value":1014},"\"Blade Runner 2049 cinematography\" (atmospheric, orange\u002Fteal)",{"type":39,"tag":110,"props":1016,"children":1017},{},[1018],{"type":45,"value":1019},"\"National Geographic documentary\" (nature, steady, observational)",{"type":39,"tag":99,"props":1021,"children":1023},{"id":1022},"use-input-images-for-style",[1024],{"type":45,"value":1025},"Use input images for style",{"type":39,"tag":48,"props":1027,"children":1028},{},[1029],{"type":45,"value":1030},"Rather than describing a style verbally, generate an image with the exact aesthetic you want using an image model, then pass it to the video model. This gives you pixel-level control over the look. The video model preserves the style, color grading, and composition while adding motion.",{"type":39,"tag":99,"props":1032,"children":1034},{"id":1033},"grain-and-texture",[1035],{"type":45,"value":1036},"Grain and texture",{"type":39,"tag":48,"props":1038,"children":1039},{},[1040],{"type":45,"value":1041},"Adding \"slightly grainy, film-like\" or \"VHS aesthetic\" pushes output away from the too-clean AI look and makes videos feel more organic.",{"type":39,"tag":54,"props":1043,"children":1045},{"id":1044},"character-consistency",[1046],{"type":45,"value":1047},"Character consistency",{"type":39,"tag":99,"props":1049,"children":1051},{"id":1050},"repeat-descriptions-verbatim",[1052],{"type":45,"value":1053},"Repeat descriptions verbatim",{"type":39,"tag":48,"props":1055,"children":1056},{},[1057],{"type":45,"value":1058},"When generating multiple clips with the same character, use identical character descriptions across prompts. Create a \"character sheet\" with exact wording:",{"type":39,"tag":48,"props":1060,"children":1061},{},[1062],{"type":45,"value":1063},"\"John, a man in his 40s with short brown hair, wearing a blue jacket and glasses, looking thoughtful\"",{"type":39,"tag":48,"props":1065,"children":1066},{},[1067],{"type":45,"value":1068},"Paste this description into every prompt where John appears. The more specific and unique the description, the more consistent the results.",{"type":39,"tag":99,"props":1070,"children":1072},{"id":1071},"what-to-specify",[1073],{"type":45,"value":1074},"What to specify",{"type":39,"tag":242,"props":1076,"children":1077},{},[1078,1083,1088,1093],{"type":39,"tag":110,"props":1079,"children":1080},{},[1081],{"type":45,"value":1082},"Physical appearance: age, hair, skin, build",{"type":39,"tag":110,"props":1084,"children":1085},{},[1086],{"type":45,"value":1087},"Clothing: exact garments, colors, materials",{"type":39,"tag":110,"props":1089,"children":1090},{},[1091],{"type":45,"value":1092},"Accessories: glasses, jewelry, hat",{"type":39,"tag":110,"props":1094,"children":1095},{},[1096],{"type":45,"value":1097},"Expression or demeanor: thoughtful, cheerful, intense",{"type":39,"tag":99,"props":1099,"children":1101},{"id":1100},"vary-the-scene-not-the-character",[1102],{"type":45,"value":1103},"Vary the scene, not the character",{"type":39,"tag":48,"props":1105,"children":1106},{},[1107],{"type":45,"value":1108},"When placing a consistent character in different scenarios, change only the action, location, and camera work. Keep the character description word-for-word identical.",{"type":39,"tag":99,"props":1110,"children":1112},{"id":1111},"reference-images-for-identity",[1113],{"type":45,"value":1114},"Reference images for identity",{"type":39,"tag":48,"props":1116,"children":1117},{},[1118],{"type":45,"value":1119},"If the model supports subject reference images, use a clear photo of the character as input. This is more reliable than text descriptions alone, especially for maintaining facial features across clips.",{"type":39,"tag":54,"props":1121,"children":1123},{"id":1122},"common-pitfalls",[1124],{"type":45,"value":1125},"Common pitfalls",{"type":39,"tag":106,"props":1127,"children":1128},{},[1129,1139,1149,1159,1169,1179,1189,1199,1209,1219],{"type":39,"tag":110,"props":1130,"children":1131},{},[1132,1137],{"type":39,"tag":114,"props":1133,"children":1134},{},[1135],{"type":45,"value":1136},"Not describing audio",{"type":45,"value":1138},": If you skip audio prompting, models hallucinate ambient sounds. A common failure is adding inappropriate laughter or a \"live studio audience.\" Always describe the soundscape.",{"type":39,"tag":110,"props":1140,"children":1141},{},[1142,1147],{"type":39,"tag":114,"props":1143,"children":1144},{},[1145],{"type":45,"value":1146},"Too much dialogue for the clip length",{"type":45,"value":1148},": An 8-second clip can hold roughly 2-3 short sentences. Packing in a paragraph produces unnaturally fast speech or truncated output.",{"type":39,"tag":110,"props":1150,"children":1151},{},[1152,1157],{"type":39,"tag":114,"props":1153,"children":1154},{},[1155],{"type":45,"value":1156},"Too little dialogue for the clip length",{"type":45,"value":1158},": If you only provide a few words for a long clip, the model fills silence with gibberish or awkward pauses. Match dialogue length to clip duration.",{"type":39,"tag":110,"props":1160,"children":1161},{},[1162,1167],{"type":39,"tag":114,"props":1163,"children":1164},{},[1165],{"type":45,"value":1166},"Not specifying what to keep unchanged",{"type":45,"value":1168},": When using reference images or editing, always state what should stay the same. Without explicit instructions, models may change anything.",{"type":39,"tag":110,"props":1170,"children":1171},{},[1172,1177],{"type":39,"tag":114,"props":1173,"children":1174},{},[1175],{"type":45,"value":1176},"Expecting variation from identical prompts",{"type":45,"value":1178},": Unlike image models, some video models produce very similar outputs for the same prompt (even with different seeds). If you want variety, change the prompt, don't just rerun it.",{"type":39,"tag":110,"props":1180,"children":1181},{},[1182,1187],{"type":39,"tag":114,"props":1183,"children":1184},{},[1185],{"type":45,"value":1186},"Not prompting camera motion",{"type":45,"value":1188},": Without camera direction, you get either static shots or unpredictable movement. Describe the camera explicitly.",{"type":39,"tag":110,"props":1190,"children":1191},{},[1192,1197],{"type":39,"tag":114,"props":1193,"children":1194},{},[1195],{"type":45,"value":1196},"Subtitle contamination",{"type":45,"value":1198},": Many models were trained on videos with baked-in subtitles. Use colons for dialogue (not quotes), add \"(no subtitles)\", and repeat if necessary.",{"type":39,"tag":110,"props":1200,"children":1201},{},[1202,1207],{"type":39,"tag":114,"props":1203,"children":1204},{},[1205],{"type":45,"value":1206},"Vague prompts for complex scenes",{"type":45,"value":1208},": Modern video models handle long, detailed prompts. A prompt with 12+ specific requirements (camera moves, lighting, sound design, subject actions, environmental details) can work if each requirement is stated clearly. Don't undersell what you want.",{"type":39,"tag":110,"props":1210,"children":1211},{},[1212,1217],{"type":39,"tag":114,"props":1213,"children":1214},{},[1215],{"type":45,"value":1216},"Ignoring aspect ratio and resolution",{"type":45,"value":1218},": Most video models have specific resolutions they support (480p, 720p, 1080p). Check what the model supports and choose the right resolution for your use case. If you need vertical video and the model only outputs landscape, you may need to reframe with a separate tool.",{"type":39,"tag":110,"props":1220,"children":1221},{},[1222,1227],{"type":39,"tag":114,"props":1223,"children":1224},{},[1225],{"type":45,"value":1226},"Forgetting that video models don't have internet access",{"type":45,"value":1228},": No video model has live information. They work from training data. Don't expect them to know about current events or real-time information.",{"type":39,"tag":54,"props":1230,"children":1232},{"id":1231},"background-reading",[1233],{"type":45,"value":1234},"Background reading",{"type":39,"tag":48,"props":1236,"children":1237},{},[1238,1240,1244],{"type":45,"value":1239},"The techniques above are distilled from Replicate's blog posts on prompting video models. The posts are anchored to specific models that were current at the time, but the techniques generalize across modern video models. Use these for additional context, then use the ",{"type":39,"tag":66,"props":1241,"children":1242},{"href":68},[1243],{"type":45,"value":71},{"type":45,"value":1245}," skill to pick a model that fits your task today.",{"type":39,"tag":242,"props":1247,"children":1248},{},[1249,1262,1274,1286,1298,1309],{"type":39,"tag":110,"props":1250,"children":1251},{},[1252,1260],{"type":39,"tag":66,"props":1253,"children":1257},{"href":1254,"rel":1255},"https:\u002F\u002Freplicate.com\u002Fblog\u002Fseedance-2",[1256],"nofollow",[1258],{"type":45,"value":1259},"How to make remarkable videos with Seedance 2.0",{"type":45,"value":1261}," (Apr 2026)",{"type":39,"tag":110,"props":1263,"children":1264},{},[1265,1272],{"type":39,"tag":66,"props":1266,"children":1269},{"href":1267,"rel":1268},"https:\u002F\u002Freplicate.com\u002Fblog\u002Fveo-3-1",[1256],[1270],{"type":45,"value":1271},"How to prompt Veo 3.1",{"type":45,"value":1273}," (Oct 2025)",{"type":39,"tag":110,"props":1275,"children":1276},{},[1277,1284],{"type":39,"tag":66,"props":1278,"children":1281},{"href":1279,"rel":1280},"https:\u002F\u002Freplicate.com\u002Fblog\u002Fveo-3-image",[1256],[1282],{"type":45,"value":1283},"How to prompt Veo 3 with images",{"type":45,"value":1285}," (Aug 2025)",{"type":39,"tag":110,"props":1287,"children":1288},{},[1289,1296],{"type":39,"tag":66,"props":1290,"children":1293},{"href":1291,"rel":1292},"https:\u002F\u002Freplicate.com\u002Fblog\u002Fwan-22",[1256],[1294],{"type":45,"value":1295},"Open source video is back (Wan 2.2)",{"type":45,"value":1297}," (Jul 2025)",{"type":39,"tag":110,"props":1299,"children":1300},{},[1301,1308],{"type":39,"tag":66,"props":1302,"children":1305},{"href":1303,"rel":1304},"https:\u002F\u002Freplicate.com\u002Fblog\u002Fcompare-ai-video-models",[1256],[1306],{"type":45,"value":1307},"Compare AI video models",{"type":45,"value":1297},{"type":39,"tag":110,"props":1310,"children":1311},{},[1312,1319],{"type":39,"tag":66,"props":1313,"children":1316},{"href":1314,"rel":1315},"https:\u002F\u002Freplicate.com\u002Fblog\u002Fusing-and-prompting-veo-3",[1256],[1317],{"type":45,"value":1318},"How to prompt Veo 3 for the best results",{"type":45,"value":1320}," (Jun 2025)",{"items":1322,"total":1401},[1323,1339,1352,1361,1373,1379,1391],{"slug":1324,"name":1324,"fn":1325,"description":1326,"org":1327,"tags":1328,"stars":22,"repoUrl":23,"updatedAt":1338},"build-models","build and package custom AI models","Package and build custom AI models with Cog for deployment on Replicate. Use when creating a cog.yaml or predict.py, defining model inputs and outputs, loading model weights at setup time, building Docker images for ML models, serving locally with cog serve or cog predict, or porting a HuggingFace, GitHub, or ComfyUI model to run on Replicate. Trigger on phrases like \"build a model\", \"package a model\", \"create a Cog model\", \"wrap a model\", \"containerize an AI model\", \"predict.py\", \"cog.yaml\", \"BasePredictor\", or \"Cog container\", and when referencing cog.run, github.com\u002Freplicate\u002Fcog, or github.com\u002Freplicate\u002Fcog-examples. Covers GPU and CUDA setup, pget for fast weight downloads, async predictors with continuous batching, streaming outputs, and cold-boot optimization for image, video, audio, and LLM models. For pushing built models to Replicate, see publish-models. For running existing models, see run-models.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1329,1332,1335],{"name":1330,"slug":1331,"type":15},"AI Infrastructure","ai-infrastructure",{"name":1333,"slug":1334,"type":15},"Deployment","deployment",{"name":1336,"slug":1337,"type":15},"Machine Learning","machine-learning","2026-07-16T06:02:28.318441",{"slug":84,"name":84,"fn":1340,"description":1341,"org":1342,"tags":1343,"stars":22,"repoUrl":23,"updatedAt":1351},"compare Replicate AI models","Compare Replicate models by cost, speed, quality, and capabilities.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1344,1347,1350],{"name":1345,"slug":1346,"type":15},"Analysis","analysis",{"name":1348,"slug":1349,"type":15},"Benchmarking","benchmarking",{"name":13,"slug":14,"type":15},"2026-07-16T06:03:10.401096",{"slug":71,"name":71,"fn":1353,"description":1354,"org":1355,"tags":1356,"stars":22,"repoUrl":23,"updatedAt":1360},"find AI models on Replicate","Find AI models on Replicate using search and curated collections.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1357,1358,1359],{"name":1330,"slug":1331,"type":15},{"name":13,"slug":14,"type":15},{"name":1336,"slug":1337,"type":15},"2026-07-16T06:01:52.508562",{"slug":1362,"name":1362,"fn":1363,"description":1364,"org":1365,"tags":1366,"stars":22,"repoUrl":23,"updatedAt":1372},"prompt-images","generate prompts for image models","Prompting techniques for AI image generation and editing models on Replicate. Use when writing prompts for image models or building image generation features.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1367,1368,1371],{"name":17,"slug":18,"type":15},{"name":1369,"slug":1370,"type":15},"Image Generation","image-generation",{"name":13,"slug":14,"type":15},"2026-07-16T06:01:52.867443",{"slug":4,"name":4,"fn":5,"description":6,"org":1374,"tags":1375,"stars":22,"repoUrl":23,"updatedAt":24},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1376,1377,1378],{"name":17,"slug":18,"type":15},{"name":13,"slug":14,"type":15},{"name":20,"slug":21,"type":15},{"slug":1380,"name":1380,"fn":1381,"description":1382,"org":1383,"tags":1384,"stars":22,"repoUrl":23,"updatedAt":1390},"publish-models","publish and deploy AI models to Replicate","Push and publish custom AI models to Replicate, and set up CI\u002FCD for releasing new model versions safely. Use when running cog push, deploying a model to Replicate, releasing a new version, validating a model with cog-safe-push before publishing, configuring a Replicate deployment, setting up GitHub Actions for model releases, or porting a community model to an official one. Trigger on phrases like \"push a model to Replicate\", \"publish a model\", \"deploy a model\", \"release a new version\", \"cog push\", \"cog-safe-push\", \"model CI\", \"r8.im\", or \"schema compatibility\", and when referencing github.com\u002Freplicate\u002Fcog-safe-push or github.com\u002Freplicate\u002Fmodel-ci-template. Covers cog push, the full cog-safe-push config (test cases, fuzz, deployment, official_model), GitHub Actions patterns, multi-model matrix pushes, and post-publish monitoring. Assumes you already have a working Cog project; see build-models if you need to package one first.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1385,1386,1389],{"name":1330,"slug":1331,"type":15},{"name":1387,"slug":1388,"type":15},"CI\u002FCD","ci-cd",{"name":1333,"slug":1334,"type":15},"2026-07-16T06:02:28.648245",{"slug":1392,"name":1392,"fn":1393,"description":1394,"org":1395,"tags":1396,"stars":22,"repoUrl":23,"updatedAt":1400},"run-models","run AI models on Replicate","Run AI models on Replicate via predictions, webhooks, and streaming.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1397,1398,1399],{"name":1330,"slug":1331,"type":15},{"name":13,"slug":14,"type":15},{"name":1336,"slug":1337,"type":15},"2026-07-16T06:03:09.738392",7,{"items":1403,"total":1401},[1404,1410,1416,1422,1428,1434,1440],{"slug":1324,"name":1324,"fn":1325,"description":1326,"org":1405,"tags":1406,"stars":22,"repoUrl":23,"updatedAt":1338},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1407,1408,1409],{"name":1330,"slug":1331,"type":15},{"name":1333,"slug":1334,"type":15},{"name":1336,"slug":1337,"type":15},{"slug":84,"name":84,"fn":1340,"description":1341,"org":1411,"tags":1412,"stars":22,"repoUrl":23,"updatedAt":1351},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1413,1414,1415],{"name":1345,"slug":1346,"type":15},{"name":1348,"slug":1349,"type":15},{"name":13,"slug":14,"type":15},{"slug":71,"name":71,"fn":1353,"description":1354,"org":1417,"tags":1418,"stars":22,"repoUrl":23,"updatedAt":1360},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1419,1420,1421],{"name":1330,"slug":1331,"type":15},{"name":13,"slug":14,"type":15},{"name":1336,"slug":1337,"type":15},{"slug":1362,"name":1362,"fn":1363,"description":1364,"org":1423,"tags":1424,"stars":22,"repoUrl":23,"updatedAt":1372},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1425,1426,1427],{"name":17,"slug":18,"type":15},{"name":1369,"slug":1370,"type":15},{"name":13,"slug":14,"type":15},{"slug":4,"name":4,"fn":5,"description":6,"org":1429,"tags":1430,"stars":22,"repoUrl":23,"updatedAt":24},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1431,1432,1433],{"name":17,"slug":18,"type":15},{"name":13,"slug":14,"type":15},{"name":20,"slug":21,"type":15},{"slug":1380,"name":1380,"fn":1381,"description":1382,"org":1435,"tags":1436,"stars":22,"repoUrl":23,"updatedAt":1390},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1437,1438,1439],{"name":1330,"slug":1331,"type":15},{"name":1387,"slug":1388,"type":15},{"name":1333,"slug":1334,"type":15},{"slug":1392,"name":1392,"fn":1393,"description":1394,"org":1441,"tags":1442,"stars":22,"repoUrl":23,"updatedAt":1400},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1443,1444,1445],{"name":1330,"slug":1331,"type":15},{"name":13,"slug":14,"type":15},{"name":1336,"slug":1337,"type":15}]