Nodes/comfyui-minimax-h3-audio-T8/MiniMax H3 MV Ref2VA Prompt Compiler / 本地口型分镜提示词 (Advanced EXP/T8)
ComfyUI Node

MiniMax H3 MV Ref2VA Prompt Compiler / 本地口型分镜提示词 (Advanced EXP/T8)

The prompt node that refuses to invent lyrics

By T8mars·Created about a month ago·Updated a day ago· 1,031
MiniMax H3 MV Ref2VA Prompt Compiler / 本地口型分镜提示词 (Advanced EXP/T8)
  • scene_plan
  • mv_prompt_plan
  • segment_prompts_json
  • prompt_relay_events
  • prompt_preview
  • report_json
global_creative_promptA singer performs through a coherent cinematic music video with natural expression and intentional scene changes.
performer_descriptionthe same lead performer shown in the reference picture
visual_stylecinematic music video, natural skin, realistic light and texture
camera_patternstable medium close-up with subtle handheld movement smooth lateral tracking medium shot restrained slow push-in with a stable background
non_vocal_actionkeeps the mouth naturally closed and moves with the rhythm
exact_lyrics_json

Somewhere between "one clip of a singer" and "a whole music video" you hit the boring-but-mandatory job: writing a correct, structured prompt for every scene, with the right reference tags, the right timing, and no hallucinated words in the singer's mouth. That's this node. It takes the scene plan from the MV Vocal Scene Planner, plus a handful of text fields you write once, and deterministically compiles one six-section Ref2VA prompt per scene.

Ref2VA, for the uninitiated, is the MiniMax H3 reference-to-video-and-audio task family: you hand the model a <Picture 1> (who's performing), an <Audio 1> (what's playing), and a prompt describing the shot, and it generates video whose lip and body timing follow the audio. It's the heart of the T8 pack's fully-local MV line, which deliberately never calls the hosted MiniMax API, an LLM, or anything remote.

What makes it worth using

So what makes this compiler worth having instead of writing prompts yourself? Three things, and they're all about not doing something:

  • It never guesses lyrics. If you don't give it exact words, it doesn't invent any and it doesn't fake subtitles. The only way text appears in the singer's mouth is the optional exact_lyrics_json input - a per-scene list of verbatim strings that get quoted. Leave it empty and H3 just performs the melody.
  • It wires the reference tags correctly. <Picture 1> and <Audio 1> are matched to the scene's actual media, and numbering has to line up with what the renderer is connected to - the single most common source of "media tag error" crashes in this pack.
  • It compiles the same way every time. Deterministic, CPU-only, no model in the loop, so identical inputs give identical prompts - which makes A/B testing a sampler or a LoRA actually meaningful instead of chasing prompt drift.

Inputs and outputs

Inputs worth knowing:

  • scene_plan - from the scene planner; one scene in, one prompt out.
  • global_creative_prompt, performer_description, visual_style - the recurring identity/style text folded into every scene. performer_description defaults to "the same lead performer shown in the reference picture," which is the right instinct for keeping identity consistent.
  • camera_pattern - one shot per line (or separated by |), cycled across scenes. Default is a medium close-up / lateral tracking / slow push-in set.
  • non_vocal_action - what the performer does when not singing (default: mouth closed, moving with the rhythm).
  • exact_lyrics_json - the optional verbatim lyrics list, as discussed.

Outputs: the mv_prompt_plan (typed, feeds the Local MV renderer), segment_prompts_json (human-readable preview per scene), prompt_relay_events (typed Prompt Relay event objects with exact absolute-second boundaries, if you use the pack's Prompt Relay tooling), prompt_preview, and report_json. For a beginner: wire mv_prompt_plan forward and eyeball prompt_preview before committing - it's free QA.

The caveat about this V1 route

One honest caveat about the whole V1 Ref2VA route this node belongs to: it conditions on the full song mix, so the lip-sync is "performance synced to the track" rather than a clean vocal-lock. The README is explicit that the newer Vocal Lock V2/V3 chain (isolated vocal, fully_copy, official six-section format) is the current accepted route for lip-sync acceptance testing, and the V1 line is kept for compatibility. If your goal is verified mouth movement on a specific vocal, skip ahead to the V2 nodes; if you're prototyping a full-song MV quickly, this chain is simpler to stand up.

Installing it

Install is the pack-wide recipe: ComfyUI Manager search MiniMax H3 Audio T8, or clone https://github.com/T8mars/comfyui-minimax-h3-audio-T8.git into custom_nodes, restart, and make sure ComfyUI itself is up to date first. The compiler adds no extra Python dependencies - it's string construction over the scene plan, which is exactly why it's the reliable part of an experimental pipeline.

CategoryT8/MiniMax H3/MV & Lip Sync/Experimental

Inputs (7)

NameTypeDefaultDescription
scene_planH3_T8_MV_SCENE_PLAN
global_creative_promptSTRINGA singer performs through a coherent cinematic music video with natural expression and intentional scene changes.
performer_descriptionSTRINGthe same lead performer shown in the reference picture
visual_styleSTRINGcinematic music video, natural skin, realistic light and texture
camera_patternSTRINGstable medium close-up with subtle handheld movement smooth lateral tracking medium shot restrained slow push-in with a stable background每行或每个 | 一种镜头,按场景循环使用。
non_vocal_actionSTRINGkeeps the mouth naturally closed and moves with the rhythm
exact_lyrics_jsonSTRING可选:按场景提供精确歌词字符串列表。留空时绝不猜歌词,也不生成字幕。

Outputs (5)

NameTypeDescription
mv_prompt_planH3_T8_MV_PROMPT_PLAN
segment_prompts_jsonSTRING
prompt_relay_eventsH3_T8_PROMPT_RELAY_EVENTS
prompt_previewSTRING
report_jsonSTRING