Use your cast in Grok Imagine
Grok Imagine animates a still as the first frame and, on the 1.5 model, also accepts a stack of reference images so the same face, outfit and proportions carry across clips that do not start from the sheet. It is the most flexible of the five for a multi-view pack: pin hero.png as the first frame and hand it the other views as references in the same request.
Which file goes where
- hero.pngFirst frame (image-to-video). Output keeps the 2:3 aspect of the still.
- closeup.pngReference image slot 1 (reference-to-video). Best single image for face identity.
- three_quarter.pngReference image slot 2. Gives the model the face at an angle.
- profile.pngReference image slot 3. Side silhouette, hair and jawline.
- back.pngReference image slot 4. Needed only if the action turns the character around.
- contact_sheet.pngOptional single reference when you only have one slot: all five views in one 16:9 image.
- character.jsonCopy the bible text into every prompt; the seed does not transfer to video.
Capabilities
- First frame (image-to-video)Yes
- Last frameYes
- Reference images7
- Native extendYes
- Max clip15 s at 480p, 720p or 1080p (reference-to-video is capped at 720p)
- AudioYes
Steps
- Open grok.com or the Grok app and switch to the Imagine tab (a paid Grok plan is required for video).
- Click the image upload control in the composer and add hero.png. The still becomes the first frame and the clip keeps its 2:3 aspect ratio.
- If your plan exposes reference images, add closeup.png, three_quarter.png and profile.png as references in the same request so the identity holds when the camera moves off the first frame.
- Paste the bible text from character.json, then describe the motion, not the picture: what the character does, where the camera goes, what is said.
- Pick duration, resolution and aspect ratio. For a first pass use 720p and a short duration; 1080p is only available for text-to-video and image-to-video, not reference-to-video.
- Generate, review for identity drift (eyes, hairline, outfit colours), and regenerate with a stronger bible line for whatever drifted.
- To continue the scene, use the extend feature on the finished clip with a continuation prompt instead of starting a fresh image-to-video job.
Prompt template
{{bible}} The first frame shows this exact character; keep the face, hair, skin tone, outfit and proportions unchanged throughout. {{action}} Natural motion, steady camera, cinematic lighting, no new characters. If reference images are attached: the character in <IMAGE_1> and <IMAGE_2> is the same person as in the first frame.
Tips
- Keep the full bible text at the top of every prompt, including extensions. The model only knows what it can see in the frame and what you tell it.
- closeup.png is the strongest identity anchor. If you can only attach one reference, use it rather than the full-body hero.
- Describe what moves, not what is in the picture. Re-describing the still fights the first frame and causes drift.
- For a scene that ends in a known pose, supply that view (for example three_quarter.png) as the last frame on grok-imagine-video-1.5 and let the model interpolate.
- Chain long scenes with the extension endpoint rather than regenerating from a frame grab; extension picks up from the last frame of the input clip.
- Image-to-video ignores the aspect ratio setting and follows the still. Crop hero.png yourself if you need 16:9.
Caveats
- xAI pages disagree on the reference image cap: the video overview says up to 14 reference images and 3 voice references on grok-imagine-video-1.5, while the reference-to-video page and third-party API mirrors say 7. We list 7 as the safe number.
- The overview says that on 1.5 an image combined with reference images, reference audio or a last frame is treated as reference-to-video with a pinned first frame. On the older grok-imagine-video model the two modes are separate: a single first-frame image or references, not both.
- Video extension is a separate endpoint (/v1/videos/extensions) documented for the grok-imagine-video model; the capability table marks extension as not available on the 1.5 models at the time of writing.
- First-and-last-frame support is described in the 1.5 text but the capability table row is blank. Treat last-frame pinning as preview behaviour and test it.
- Consumer app limits (duration tiers, resolution, whether reference slots appear) depend on the subscription plan and change frequently; the API limits above are the documented ones.
- The exact request field for a last frame could not be confirmed from the REST reference; the overview text names it last_frame but check the live schema.
API notes
POST https://api.x.ai/v1/videos/generations with model grok-imagine-video or grok-imagine-video-1.5, a prompt, an image object (url, base64 data URI, or a Files API file_id) for the first frame, and optionally a reference_images array of url objects; refer to references in the prompt as <IMAGE_1>, <IMAGE_2> and so on. The call is asynchronous and returns a request_id that you poll until the video URL is ready; the official xAI SDKs can poll for you. Extension is a separate POST to /v1/videos/extensions that takes the finished video and a 2 to 10 second continuation.