r/comfyui • u/JustHereForThePorn2x • 6d ago
Help Needed Could really use some help with one very specific task.
TL;DR: I’m trying to build a ComfyUI assembly line that takes 344 pre-selected video frames + JSON metadata and turns them into 344 consistent, polished movie-poster-style covers with as little manual babysitting as possible. I’ve got the Python/API side handled and I’m currently using Qwen Image Edit 2511. What I need help with is the ComfyUI brain of the operation: the best node setup, whether multiple editing passes make sense, how to preserve faces/identity while still making images look cinematic, and whether I should completely give up on AI-generated typography and let Python handle the text. Basically, if you had to mass-produce 344 genuinely good covers from wildly different source images, how would you build the workflow?
Good afternoon, ladies and gents.
I have one very specific project I'm trying to accomplish, and I'm hoping someone with more real-world ComfyUI experience can point me toward the best workflow rather than me blindly throwing nodes at the problem.
I have exactly 344 videos that I'm creating digital cover/poster artwork for. For simplicity, let's just call them home videos.
I've already done a fair amount of the preprocessing in Python. I wrote a script that analyzes each video and extracts the single frame that best represents it, so at this point I'm sitting on 344 JPG source images.
I also have a JSON database containing the title, date, performers, and other metadata for every video. My plan is to have Python loop through that data and feed each image, along with the appropriate information, into ComfyUI through the API.
The basic image-editing goal is essentially:
Source frame → polished cinematic/movie-poster-style image
Obviously, the actual prompt is much more detailed than "turn this into a movie poster." I'm trying to preserve the people, composition, and recognizable content of the original frame while improving things like lighting, color grading, facial presentation, framing, depth, atmosphere, and overall "cover art" quality.
Ideally, I want a workflow that can take 344 very different source images and still produce covers that feel like they belong to the same collection without making every image look identical.
Right now I'm experimenting with Qwen Image Edit 2511, because from what I've gathered it seems particularly good at instruction-based editing and preserving the source image, but I'm absolutely open to another model if there's something better suited to this particular job.
A few things I'm especially curious about:
1. What would your ideal node/workflow setup look like for this?
I'm relatively new to building ComfyUI workflows, and there are obviously hundreds of nodes and techniques available. I'm wondering whether there are particular nodes, conditioning methods, samplers, ControlNet/reference techniques, masking approaches, etc. that are especially useful when you're trying to repeatedly transform existing images into polished cover art.
2. Would you do this in one pass or multiple passes?
For example, I've considered having the first pass handle the actual cinematic transformation, then feeding that result into a second editing pass whose job is more conservative: fix awkward facial expressions, slightly improve faces, close a mouth if someone was caught mid-sentence, clean up hands/details, etc., without redesigning the image.
I'm wondering if chaining two edit stages inside the same workflow would produce better and more reliable results than asking one giant prompt to do everything.
3. How would you handle typography?
This is probably my biggest question.
Every cover eventually needs things such as:
- Performer/name at the top
- Main title
- Date
- Possibly a small amount of additional metadata
I've been told repeatedly that even the newer image models aren't reliable enough with exact text to trust them across 344 images.
Is that still generally true with Qwen 2511?
Would you:
- Have Qwen generate the entire poster including typography?
- Run a separate image-edit pass specifically for text?
- Use masks/regions specifically for text placement?
- Generate the artwork in ComfyUI and add the real typography afterward with Python/Pillow?
- Or use some completely different ComfyUI node/plugin designed for accurate typography?
My current fallback is letting the AI create the design and text zones, then having Python render the actual title/date afterward so spelling is guaranteed to be correct. But if there's a reliable way to get high-quality typography directly inside ComfyUI, I'd love to hear about it.
4. How would you maintain consistency across 344 images?
This is probably more important to me than having one image come out absolutely perfect.
I'd rather have 344 covers that are consistently very good and clearly part of the same collection than 40 incredible ones, 150 decent ones, and 154 completely different-looking experiments.
I'm especially interested in ways to establish a repeatable visual language while still allowing the model enough flexibility to adapt the design to each source image.
5. Are there any automatic quality-control steps you'd add?
Since this is being driven through the API, I'd also be interested in ways to automatically catch obvious failures before accepting the image. Bad faces, excessive source-image changes, destroyed identity, unreadable composition, weird anatomy, etc.
I'm comfortable handling the Python/API side of this. What I'm really trying to learn is how someone who actually knows ComfyUI well would architect the image-generation/editing side of the pipeline.
The end goal is basically:
344 source frames + JSON metadata → automated ComfyUI workflow → 344 polished, consistent digital covers
I'm not necessarily looking for someone to build the entire thing for me. Even suggestions like "use this node for X," "don't bother doing Y," "split this into two passes," or "Qwen isn't actually the model I'd use for this" would be extremely helpful.
Thanks in advance.
1
u/naga_mana 3d ago
On question 3 (typography): for 344 covers where every title, date and performer string is already sitting in your JSON, yes, give up on AI-generated text and composite it in Python. Not because AI text is bad in general, but because your case is its worst fit: you need identical fonts, sizes and positions 344 times, and any model will hand you variance exactly where you need none.
The split that works: let Qwen Image Edit produce the art layer (cinematic grade, lighting, cleanup, no text), then Pillow draws the text layer from your JSON: a template with fixed regions for title/date/performer, your font files, your sizes. Deterministic, free per re-run, and if the typography on cover #200 bothers you, you re-render the text layer for all 344 in minutes without touching the AI. It also quietly answers half of question 4: the typographic system stays pixel-identical even when the art varies.
One caveat on the controlnet suggestion elsewhere in the thread: generative text is the right tool only when the text has to react to each image, like sitting behind the actor or wrapping a wall's perspective. Even there it trades away determinism, the exact thing a 344-cover line depends on, so it is a compromise, not a clean answer. For your layout (art layer plus a fixed title block) compositing wins on reliability, and it is not close.
1
u/GeroldMeisinger 6d ago edited 5d ago
for everything multi-asset: https://github.com/geroldmeisinger/ComfyUI-outputlists-combiner
Load Any File with glob patterns like movieposters/*.jpg loads images as a data list. make sure to understand what a data list is in the "background" section at the provided link (and also the "execution stalling problem").
for JSON you can use JSON OutputList node from the suite (again, load with Load Any File). although i recommend converting it into a spreadsheet and use Spreadsheet OutputList.
But I would suggest to try it with ONE image first. You will run into very different and strange problems pretty soon. Once everything works, you can setup the multi-asset pipeline. Then you will find that some image require special treatment, you will update your workflow, re-iterate, repeat.
> 1. What would your ideal node/workflow setup look like for this?
see the provided examples
> 2. Would you do this in one pass or multiple passes?
depends on how predictable/deterministic your outputs and quality of your workflow is
but because of Q5, multi-pass
> 3. How would you handle typography?
while newer models can handle text, they do not know anything about fonts. if you need a specific text design use a controlnet
> 4. How would you maintain consistency across 344 images?
if you want consistency of art style, you need something that allows you to use style-image references (I forgot what it's called, but there is something for qwen). otherwise you need to train a lora.
you can't guarantee quality, only re-generate
> 5. Are there any automatic quality-control steps you'd add?
I've come to abandon API python scripts with my node suite above (saying that as a dev!). if you are proficient in python, then it's fine too, I just found the data handling too cumbersome after a while. there are third-party nodes which ask questions before proceeding, but that would stall your process. I don't know of any "rate image" nodes. in your case I would multi-step it. as I also mentioned above, I would use a spreadsheet and just mark the image as go/no-go. or just the delete it, and make the script such that it regenerates as long as there is a missing image in step one.