Nodes/ComfyUI-BCNodes/PostFx Signature Sheet
ComfyUI Node

PostFx Signature Sheet

Print every film stock onto your own photo

By 0xBeycan·Created 23 days ago·Updated 3 days ago· 2
PostFx Signature Sheet
  • image
  • sheet
◄categorysignature►
◄conditionneutral►
◄strength1.00►
◄columns5►

Thirty-five themes with names like gold_200 and tri_x_400 is a fine list and a useless shopping experience. You can't tell what any of them look like from a dropdown. This node answers that by printing all of them, labelled, onto your own image.

What it is

An IMAGE in, an IMAGE out: a labelled contact-sheet grid of every theme in a category, applied to the image you fed it, as one preview picture. Five inputs, one output, and it exists to be run exactly once per project.

| Input | Default | What it does | |---|---|---| | image | - | The image to grade. It uses the first image of the batch | | category | signature | signature, experimental, or all | | condition | neutral | The shooting condition applied to every cell | | strength | 1 | Effect strength, 0 to 1.5 | | columns | 5 | Grid width, 1 to 10 |

Output is sheet - one IMAGE. No sockets to worry about beyond that.

How to read it

signature is the market-standard set: fifteen film stocks and industry grades - Portra 400, Gold 200, Pro 400H, Ektar, Cinestill 800T and friends. experimental is the other fifteen, which range from interesting to deliberately odd, and that's the point of the category. all shows the lot, which on a 5-column grid is a tall image you'll be zooming into.

Run it at condition = neutral when you're choosing a look. The condition scales only the texture - grain, chroma noise, halation - so leaving it neutral compares grades rather than grades plus grain, which is what you actually want in an audition. Set the condition later, on PostFx Apply, once you've picked your stock and you know what light you're pretending the shot was taken in.

Why it's worth the minutes

The KB's realism advice is very specific about this: name a physical camera and a film stock, because the encoder understands gear, and "stacking realistic ordinary everyday (which does nothing alone) with a specific equipment spec (which does everything)". Named stocks do real work in the prompt.

This node is the same list of stocks, applied after the sampler where it can't cost you detail. Having both options is genuinely better than picking one: prompt for the stock when you want the model to compose for it - halation around lights, warmth in skin - and grade for it here when you want a consistent house look across a set, a series, or a hundred candidates.

The practical bit

Feed it something small. The postfx pipeline runs on the CPU, and this node runs it fifteen to thirty times in one go - on a 2048px image with columns = 5 you'll be waiting, and the preview you get is a big grid you can't read without zooming anyway. A 512px crop of a representative shot is the right input: face, some skin, a highlight, a bit of background.

Then take the answer and go: set that theme on PostFx Apply, dial condition for the light you're imagining, and use strength to keep it under control.

Installing it

cd ComfyUI/custom_nodes
git clone https://github.com/0xBeycan/ComfyUI-BCNodes
pip install -r ComfyUI-BCNodes/requirements.txt

The postfx package is the requirement here, from requirements.txt. Without it the pack still loads and only the PostFx nodes are absent. Manager users: search ComfyUI-BCNodes, install, restart, reload the tab. It's under BCNodes/postfx.

Where people get burned

Waiting on a huge input. Covered above, and it's the only real complaint this node has. Small image in, fast answer out.

Only the first image is used. Feed it a batch and you're auditioning looks on frames you never see. Take one out of the batch first, or accept that the sheet is about image one.

strength other than 1 changes the comparison. At 0.5 you're looking at half of every theme, which is a fine way to choose a subtle look and a confusing way to compare stocks against each other.

It doesn't apply anything. The sheet is a preview; the actual look goes on PostFx Apply. If your final image is unchanged, you graded the contact sheet instead of the picture.

CategoryBCNodes/postfx

Inputs (5)

NameTypeDefaultDescription
imageIMAGE—
categoryCOMBOsignature3 options: signature, experimental, all
conditionCOMBOneutral6 options: neutral, day_outdoor, overcast, indoor_evening, neon_night, night_flash
strengthFLOAT1.000–1.5—
columnsINT51–10—

Outputs (1)

NameTypeDescription
sheetIMAGE—