Nodes/PromptMasterLD/🎬 H3 Route AV - LD
ComfyUI Node

🎬 H3 Route AV - LD

Route Picture and Sound as One Decision, So They Can Never Desync

By Lora-DaddyΒ·Created 6 days agoΒ·Updated 2 days agoΒ· 5
🎬 H3 Route AV - LD
  • single_images
  • single_audio
  • multi_images
  • multi_audio
  • images
  • audio
  • route
  • is_multishot
β—„routeautoβ–Ί

Two rails, one queue, and the sound can't follow the wrong picture

In an H3 workflow where the single-shot rail and the multishot rail share one post-chain and one save node, the routing bug that bites isn't "nothing renders" - it's "frames render from rail A and audio renders from rail B." If you're routing picture and sound with separate switches, you have two switches to keep in sync, and nothing enforces it. H3 Route AV (🎬 H3 Route AV - LD, under LD / PromptMaster / Video rail, in PromptMasterLD) closes that hole by construction: it routes picture AND sound through ONE decision, so a frames/audio mismatch isn't merely unlikely - it's unrepresentable.

How it works

The decision is read from H3 Studio, not from a hand-flipped boolean. The single required input, route, has three positions:

  • auto - reads H3 Studio's MULTISHOT tick out of the submitted prompt. This is the one to leave it on: whatever the panel says, the rail follows.
  • single shot (A) and multishot (B) - forced settings, for testing one rail on purpose.

Wire the rails into the optional inputs: single_images + single_audio for the single-shot path, multi_images + multi_audio for the multishot path. Like the generic H3 Route, both sides are lazy - only the live rail is executed, so the dead rail never samples a frame or loads a model. That's the entire reason one shared post-chain is legal.

Why does Studio have to dictate this at all? Because Studio returns positive=None when MULTISHOT is on - it skips the single-shot encode deliberately - so routing to the single-shot rail with multishot ticked hands a sampler a None conditioning and the queue dies. The router reading the tick at execution time means the two can't disagree, because there's no second place to set a value.

Outputs: images (IMAGE) and audio (AUDIO) - the winning rail's pair, ready for decode or save - plus route (STRING) and is_multishot (BOOLEAN) saying what fired, which you can wire onward if anything downstream needs to know which branch it's on.

Install

cd ComfyUI/custom_nodes
git clone https://github.com/Lora-Daddy/PromptMasterLD
cd PromptMasterLD
pip install -r requirements.txt

Restart ComfyUI, or ComfyUI Manager β†’ search "PromptMasterLD".

Which route node do you actually want?

The pack ships three routers and the choice is simpler than it looks. Need to move a MODEL, a latent, or any single wire between two paths? That's the generic H3 Route - its inputs are wildcard, so it switches anything. Need picture and sound to travel as one unit? That's this node, H3 Route AV. And if you just want to see what routing state Studio produced without running anything - say, debugging why the wrong branch fired - that's H3 Route Probe, which reads the same submitted prompt and reports it. If you're building a fresh multishot/single-shot canvas, Route AV is the one to start from: one wire for frames, one for audio, one decision.

CategoryLD/PromptMaster/Video rail

Inputs (5)

NameTypeDefaultDescription
routeCOMBOautoauto reads H3 Studio's MULTISHOT tick out of the submitted prompt. The two forced settings are for testing one rail on purpose.
single_imagesoptIMAGEβ€”
single_audiooptAUDIOβ€”
multi_imagesoptIMAGEβ€”
multi_audiooptAUDIOβ€”

Outputs (4)

NameTypeDescription
imagesIMAGEβ€”
audioAUDIOβ€”
routeSTRINGβ€”
is_multishotBOOLEANβ€”