Enhanced Prompt with camera descriptives
Dress up your prompts the way video models actually want
- positive
- negative
Video models are camera-obsessed in a way image models never were - they genuinely respond to "the camera is panning right" or "extreme closeup" in ways that change the output. But nobody wants to retype that every time. Enhanced Prompt with camera descriptives splits the difference: you type your subject prompt, pick from a set of camera dropdowns (shot size, focus, angle, movement, lighting), and it assembles the whole thing into the polished positive prompt the model actually wants to see. The KB even flags this exact behavior for LTX - "if you don't specify lots of camera details and quality keywords, you get seriously low quality" - so this node is squarely aimed at a real problem, not a vanity feature.
How it works
Two required text boxes - positve_prompt (yes, the input is misspelled in the source; the output socket is the correctly-spelled positive) and negative_prompt, which comes pre-filled with a solid default block of bad-photography terms like "bad anatomy, awkward poses, text, logo, out of aspect ratio." Then five dropdowns: camera_shot_size (extreme closeup through wide shot), camera_focus, camera_angle (eye level, low angle, overhead, aerial...), camera_movement (stationary, zoom in/out, pan, tilt, orbit), and light (warm, midday, backlighting, neon, dramatic...). Each defaults to - for "don't add anything."
When use_cam_options is on (default), the node appends your chosen camera phrases to the positive prompt as complete sentences, e.g. "A cat. The camera is filming at eye level. The main person is in focus. The camera is stationary. The camera takes a closeup. Scene has dramatic lighting." Flip it off and you get your raw prompt back untouched - handy when you've already written your own camera language and just want the negative-prompt convenience.
The inputs that matter
positve_promptandnegative_prompt- your actual content.- The five camera dropdowns - the whole reason this node exists. Pick one per category and the phrasing is already model-friendly.
use_cam_options- the master switch for the camera assembly.
Output
Two STRING sockets: positive and negative. Wire positive into your CLIP text encoder (or your video model's text conditioning) and negative alongside it. Note the camera text only ever touches the positive side - the negative stays as you wrote it.
Common issues
The word-salad risk is real: select something in all five dropdowns and your positive gets long fast, and some video models choke on over-long prompts. If results get mushy, cut down to shot size + movement and leave the rest at -. Also remember it just builds a string - it does no token-weight or emphasis syntax, so don't expect (word:1.2) handling. And that positve_prompt input name will keep spelling-itself-wrong in your workflow; the output is what matters.
Installing it
Part of trashkollector/TKNodes ("ComfyUI Handy Nodes"). Install via ComfyUI Manager (search "Handy Nodes") or:
cd ComfyUI/custom_nodes
git clone https://github.com/trashkollector/TKNodes
Restart, and it's under TKNodes. Pure string assembly - no dependencies.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| positve_prompt | STRING | Positve prompt here! | — |
| negative_prompt | STRING | Incorrect body proportions. bad drawing, bad anatomy, bad body shape, blurred details, awkward poses, incorrect shadows, unrealistic expressions, lack of texture, poor composition, text, logo, out of aspect ratio, body not fully visible, ugly, defects, noise, fuzzy, oversaturated, soft, blurry, out of focus, frame | — |
| use_cam_options | BOOLEAN | true | — |
| camera_shot_size | COMBO | 8 options: -, The camera takes an extreme closeup. , The camera takes a closeup. , The camera takes a medium shot , The camera takes a medium full shot. , The camera takes a full shot. , +2 | |
| camera_focus | COMBO | 7 options: -, The main person is in focus. , The main person is in focus, the background objects are out of focus. , All objects in the scene are in focus. , The camera takes a tilt-shift focus shot. , The camera takes a shot with soft focus. , +1 | |
| camera_angle | COMBO | 10 options: -, The camera is filming at eye level. , The camera is filming at low angle., The camera is filming at hip level., The camera is filming at a knee level., The camera is filming at a ground level., +4 | |
| camera_movement | COMBO | 10 options: -, The camera is stationary., The camera is jittery, The camera is zooming in. , The camera is zooming out. , The camera is panning right. , +4 | |
| light | COMBO | 15 options: -, Scene has warm light. , Scene has midday light., Scene has morning light. , Scene has evening light. , There is a spotlight on the subject. , +9 |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| positive | STRING | — |
| negative | STRING | — |