Nodes/PromptMasterLD/H3 Multishot (pack) - LD
ComfyUI Node

H3 Multishot (pack) - LD

Render the Whole Studio Pack Without Rebuilding the Graph

By Lora-Daddy·Created 6 days ago·Updated 2 days ago· 5
H3 Multishot (pack) - LD
  • pack
  • model
  • clip
  • video_vae
  • audio_vae
  • reference_images
  • voice_ref
  • sigmas
  • frames
  • audio
  • shots
  • report
seed0
frames_override0

When one node should just be the whole decision

By the time you've used H3 Studio for a while you'll notice a pattern: you're re-wiring the same handful of things every time - the script, the size, the clip length, the shot count, whether there's a start image or a song. H3 Multishot (pack) - LD exists so that pattern has a name instead of a pile of manual sockets. It takes H3 Studio's pack output and renders it through the H3 Multishot Memory Sampler on the verified context-pin chain. Everything - script, size, clip length, shot count, start image, song - comes from the panel. You wire the pack and the four model slots, and the node is the whole multishot rail.

The careful bit is in how it handles "nothing": an absent image or song is passed as nothing, never as a black frame or silence. If Studio didn't attach a start frame, the sampler gets no start frame - it doesn't get a black rectangle that quietly poisons shot 1. This is the pack-aware nicety that separates a wrapper node from a trap.

The inputs that actually matter

  • pack - H3 Studio's pack output. This is where the script, seconds, canvas, stills and song ride in.
  • model, clip, video_vae, audio_vae - the standard H3 quartet. Wire them from H3 Loader or your own loaders.
  • seed - wire this from the graph's SeedGenerator so the multishot chain and the normal sampler share one seed. If you don't, the two paths can drift apart and shots won't match your single-shot experiments.

Optional: reference_images (character/subject refs carried into every shot - leave unwired for none; this node never substitutes a placeholder), voice_ref (the clean vocal anchor as <Audio 1>), and frames_override (0 = use the panel's seconds; otherwise a frame count snapped to H3's grid).

And then there's sigmas, which the tooltip says in caps: WIRE THIS. The upstream multishot sampler prefers a supplied curve over its steps/scheduler widgets, and the author's note is specific about why - some turbo LoRAs only converge on the exact curve they shipped with. Unwired, this node re-derives a schedule from steps and can disagree with the Steps node feeding your normal sampler: two step controls, one render. Give it the same SIGMAS node your single-shot rail uses and the two paths can't drift.

Outputs

frames (IMAGE) and audio (AUDIO) are the finished multishot render, ready for a save node. shots (INT) tells you how many shots were rendered, and report (STRING) is the human-readable summary.

Install and one honest caveat

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". This node leans on the vendored ComfyUI-H3-Multishot sampler, which installs with the pack.

The caveat is scope. This node is deliberately opinionated - it renders the panel's decision and doesn't ask questions. If you want to tweak per-shot transitions, add an upscale model, or force a different schedule than the panel implies, you want the fuller H3 Multishot - LD node with Studio's latent driving it instead. Reach for the pack version when Studio is the source of truth and you want the shortest path to a render; reach for the explicit one when the render itself needs fiddling.

CategoryLD/PromptMaster

Inputs (10)

NameTypeDefaultDescription
packLDP_PACKStudio pack.
modelMODEL
clipCLIP
video_vaeVAE
audio_vaeVAE
seedINT00–18446744073709550000Wire this from the graph's SeedGenerator so the chain and the normal sampler share one seed.
reference_imagesoptIMAGEOptional. Leave unwired for none - this node never substitutes a placeholder.
voice_refoptAUDIO
sigmasoptSIGMASThe rail's own schedule. WIRE THIS. His sampler takes a supplied curve over its steps/scheduler widgets, and his note says why it matters here: 'some turbo LoRAs only converge on the exact curve they shipped with'. Unwired, this node re-derives one from `steps` and can disagree with the Steps (ref)/(render) node feeding the normal sampler - two step controls, one render.
frames_overrideoptINT00–4810 = use the panel's seconds. Otherwise a frame count, snapped to H3's 17k+5 grid.

Outputs (4)

NameTypeDescription
framesIMAGE
audioAUDIO
shotsINT
reportSTRING