Nodes/IAMCCS-nodes/IAMCCS Cine Prompt Composer
ComfyUI Node

IAMCCS Cine Prompt Composer

Stop hand-typing 'medium close-up, subtle handheld, low-key' every shot

By IAMCCS·Created 11 months ago·Updated 7 days ago· 113
IAMCCS Cine Prompt Composer
    • shot_prompt
    • report
    framingmedium close-up
    camera_movementsubtle handheld
    lens_stylenatural 35mm lens
    lightinglow-key cinematic lighting
    subjectMara
    action_promptshe listens, then speaks softly while holding eye contact
    emotioncontrolled hurt
    location_contextinside a small kitchen at night, rain on the window
    continuity_notekeep coherent eyelines, natural acting, stable identity, cinematic room geography
    extra_prompt

    IAMCCS_CinePromptComposer is a shot-prompt builder for the Cine/LTX pipeline: instead of typing "medium close-up, subtle handheld camera, natural 35mm lens, low-key cinematic lighting, controlled hurt, she listens then speaks softly" by hand for every shot, you pick each element from a dropdown and the node assembles a coherent shot_prompt string. Same text you'd have written, but structured so the filmmaking vocabulary stays consistent shot after shot - which is exactly what LTX-2 wants, because the model rewards long, specific prompts and punishes vague ones.

    This is the "director of one" workflow distilled to a form: framing, camera movement, lens, lighting, subject, action, emotion, location, and a continuity note. It's a text-composition utility - no sampling, no models - that sits at the front of a Cine graph feeding your text encoder and then the sampler.

    How it works

    It's a dropdown-driven composer (it extends the pack's LTX-2 cinematic prompt composer, so this is the shared shot-vocabulary engine for the Cine family). You select framing (11 options from "wide establishing shot" to "insert detail"), camera_movement (10 options), lens_style (8 options), lighting (9 options), and emotion (10 options). The free-text fields - subject (e.g. "Mara"), action_prompt, location_context, and continuity_note - carry the per-shot specifics. Every dropdown also includes custom, so the vocabulary never boxes you out; pick custom and type what you need into the adjacent free-text field.

    It then composes all of it into one ordered shot_prompt string, tuned for the Cine/LTX-2 text encoder. The continuity_note default ("keep coherent eyelines, natural acting, stable identity, cinematic room geography") is the sort of thing that measurably helps LTX-2 keep a scene feeling like one scene instead of a montage.

    Inputs and outputs

    Inputs: framing, camera_movement, lens_style, lighting, subject, action_prompt, emotion, location_context, continuity_note, plus optional extra_prompt for anything the dropdowns can't express. Outputs: shot_prompt (the assembled string - wire this into a text encoder) and report.

    Installing it

    Part of the IAMCCS-nodes pack. ComfyUI Manager → search IAMCCS, or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/IAMCCS/IAMCCS-nodes.git
    

    Restart ComfyUI; it's under IAMCCS/Cine/00 Utilities. No pip requirements, no model files - pure text assembly. README floor: ComfyUI ≥ 0.3.0, Python ≥ 3.12, Torch ≥ 2.8.

    Where people get burned

    • It outputs a string, not conditioning. New users wire shot_prompt straight into a KSampler and get a type error - it has to go through a CLIP text encoder first (or the Cine stage that encodes it for you).
    • It doesn't set the shot. The composer writes the prompt; the reference board and FLF engine set the frames. If you change framing and see zero change in output, check that the conditioning you're editing is actually the one reaching the sampler - a stale wire upstream is the usual culprit.
    • The dropdowns are opinionated film vocabulary, not magic. "Tracking forward" in the prompt still depends on the model actually delivering motion; for LTX-2, pair it with a decent action_prompt rather than expecting the camera word to do all the work.
    CategoryIAMCCS/Cine/00 Utilities

    Inputs (10)

    NameTypeDefaultDescription
    framingCOMBOmedium close-up11 options: custom, wide establishing shot, medium shot, medium close-up, close-up, extreme close-up, +5
    camera_movementCOMBOsubtle handheld10 options: custom, locked-off camera, slow push-in, slow pull-back, subtle handheld, gentle pan, +4
    lens_styleCOMBOnatural 35mm lens8 options: custom, natural 35mm lens, intimate 50mm lens, compressed telephoto portrait, wide lens with room geography, shallow depth of field, +2
    lightingCOMBOlow-key cinematic lighting9 options: custom, soft window light, warm practical lamps, noir desk lamp, moonlight through window, rainy night reflections, +3
    subjectSTRINGMara
    action_promptSTRINGshe listens, then speaks softly while holding eye contact
    emotionCOMBOcontrolled hurt10 options: custom, controlled hurt, calm suspicion, quiet regret, restrained fear, tender hesitation, +4
    location_contextSTRINGinside a small kitchen at night, rain on the window
    continuity_noteSTRINGkeep coherent eyelines, natural acting, stable identity, cinematic room geography
    extra_promptoptSTRING

    Outputs (2)

    NameTypeDescription
    shot_promptSTRING
    reportSTRING