VRGDG_SplitPrompt_T2I_I2V
Split one scene prompt into its image and motion halves
- t2i_prompt
- i2v_prompt
VRGDG_SplitPrompt_T2I_I2V is a small glue node that takes one JSON prompt and splits it into two strings: t2i_prompt (text-to-image) and i2v_prompt (image-to-video). In the pack's music-video workflow, every scene is a two-stage pipeline - generate the scene image first, then animate that image into video - and those two stages want different prose.
Think about what each stage actually needs. The image stage (often NanoBanana or another fast image model) needs the scene's description: who's there, what they look like, the environment, the lighting. The video stage (LTX-2.3) needs the action: what moves, how the camera moves, what happens over the clip. They're related, but a single prompt that's great at one is mediocre at the other. LTX in particular is known to reward long, specific prompts, so giving it a dedicated motion-focused prompt beats pasting the whole scene paragraph at it.
How it works
You hand it prompt_json - a multiline JSON string that bundles both halves of the scene description. The node parses it, pulls out the text-to-image portion, and hands you t2i_prompt; pulls out the image-to-video portion, and hands you i2v_prompt. Wire t2i_prompt into your image sampler's conditioning and i2v_prompt into the LTX image-to-video node, and each stage reads exactly the prose it was written for.
The one practical detail: the JSON schema is defined by the surrounding workflow, not by this node in isolation. It doesn't invent field names - it reads the structure the author's graphs use. If you're building your own workflow around it, copy the JSON shape from a working VRGDG example rather than guessing keys; if the keys don't match, you'll get empty strings out, not a helpful error.
Why you'd bother
This node exists to keep the two-stage prompt authoring sane. Instead of maintaining one prompt that tries to do double duty, or two disconnected prompts that drift apart, you keep both halves in one JSON object and split them deterministically at the right place. Same input, same outputs, every run - it's pure parsing, no LLM, no surprises. For the music-video workflow it's the clean seam between the image stage and the animation stage.
Getting it
Shared pack install:
cd ComfyUI/custom_nodes
git clone https://github.com/vrgamegirl19/comfyui-vrgamedevgirl
or Manager → search "vrgamedev", restart. No models, no dependencies beyond the pack's shared requirements.txt - it's a text parser. The whole value is in how the surrounding workflow is wired, so if you're using this, you're probably already inside a VRGDG music-video graph and just needed to know that this node is why your image prompts and video prompts can be different without you maintaining two copies.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt_json | STRING | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| t2i_prompt | STRING | — |
| i2v_prompt | STRING | — |