NS Grok Imagine Video
Grok's text-to-video and clip editing, without a GPU
- client
- video_path
NS Grok Imagine Video is the video end of the Grok pair in symbiotica-ai/comfyui-nodes. Feed it a prompt and it generates a clip through xAI's API; feed it an image URL and it animates that; feed it a video URL and it edits the clip. All three modes live in one node, and all of them run in the cloud - which is the entire point, because Grok's video model is closed (see docs/knowledge/external-api-nodes.md for the pattern). No local checkpoint, no VRAM, just a key and a prompt.
What it does, and the modes
- Text-to-video - prompt → a generated clip at the duration/aspect/resolution you pick.
- Image-to-video -
image_url+ prompt → the image animates. - Video editing -
video_url+ prompt → edits an existing clip (max 8.7s input). This mode overrides image_url, and thedurationinput is explicitly not used for it - the edit keeps the source's length.
The inputs that matter
- client (required) - the GROK_API_CLIENT from NS Grok Client.
- prompt (required, multiline) - description or edit instruction.
- duration - 1–15 seconds (default 5). Only applies to generation, not editing.
- aspect_ratio - 7 options, 16:9 default, through 9:16 for vertical.
- resolution - 720p or 480p. The 720p default is the quality pick; 480p is the cheap-and-fast one.
- image_url / video_url (optional) - the animation/edit sources.
One output, and it's worth calling out: video_path, a STRING path to the generated file, not a VIDEO tensor. That's the practical difference from the image node. The file lands locally and you'll need to load it back into the graph (a video loader, or the pack's own utilities) if you want to keep processing it - or just hand the path to a save node.
Install
Part of symbiotica-ai/comfyui-nodes - ComfyUI Manager search "Symbiotica", or clone + pip install -r requirements.txt. No ffmpeg strictly needed on this node itself (the generation happens remotely; the local part is just writing the download). You need an xAI key with billing, wired through NS Grok Client.
Gotchas
Video generation is the expensive end of Grok Imagine - cost scales with duration and resolution, so don't leave it on 15s/720p while iterating on a prompt. The video_path STRING output confuses people every time: it isn't a VIDEO, so wiring it into a video-effect node fails at the socket. And the 8.7s cap on edit input is a hard provider limit, not a node quirk - a longer source will be refused, so trim first. Remember video_url beats image_url when both are set, and duration is ignored in edit mode - both are "the node does what the provider does," not bugs.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| client | GROK_API_CLIENT | — | |
| prompt | STRING | Text description of the video to generate or edit instruction | |
| duration | INT | 51–15 | Video duration in seconds (1-15). Not used for video editing. |
| aspect_ratio | COMBO | 16:9 | Aspect ratio of the generated video |
| resolution | COMBO | 720p | Output resolution (720p or 480p) |
| image_urlopt | STRING | Optional: Image URL to animate (leave empty for text-to-video) | |
| video_urlopt | STRING | Optional: Video URL to edit (max 8.7s, overrides image_url) |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| video_path | STRING | — |