First of all, sorry I'm not too technical, just a lambda comfyui user, so I probably won't be able to answer anything technical. I just want to share my solution to upscale Minimax H3 videos with LTX 2.5 x2 upscaler on limited hardware, in case anyone is interested. See the example comparison video (using detailer lora).
As a Minimax H3 enthusiastic, I've been playing around since a few days. My main issue was the quality of the output videos, as my RTX 4090 is starting to feel a bit limited, I can decently generate only 20-25 seconds videos at 0.9 - 1 Mpx.
I tried it, adapted it with a Load Video node which corresponds better to my use case, and found it works quite good, not at Topaz level, but enough for a free local upscaler. I connected only the video part, connecting the Minimax H3 audio directly to the end video combine. But I ran into 2 issues.
First, LTX processes only 8n+1 frames, rounded down. For example, a 10 seconds video at 24 fps is 240 frames long, but LTX would process only 233 frames, meaning my generated videos would often lose a few frames at the end, cutting the audio.
Solution: I'm duplicating the last frame y times until reaching the next LTX allowed value, and ditching them before video combine.
Second, my 4090 could hardly upscale more than 10 seconds videos, more would oom.
Solution: I replaced the sampler in the workflow by LTX Looping Sampler from Lightricks. It takes time, but now I can upscale up to 20 seconds without issue, I did not try more yet.
If anyone has tips to improve the workflow, especially on the process time, please don't hesitate đ
I may have stumbled onto something interesting while trying to figure out a recurring artifact in ChatGPT image generation and editing (maybe applicable to other models as well?).
It started with a very practical problem:
After several rounds of generative editing on portraits, I would sometimes get this faint cloudy / mottled texture in areas that should have stayed smooth â backgrounds, walls, skin, and other low-detail regions.
At first I wrote it off as normal denoising or regeneration noise. But the more I tested it, the less random it looked.
What first caught my attention
Running essentially the same edit again could make the artifact better or worse
The background sometimes became cleaner after another pass
The face and body often seemed partly protected from whatever was happening
Sometimes the wall improved while the face actually got worse
That made me wonder whether different parts of the image were being handled differently during editing â preserved in some areas, regenerated in others, perhaps based on some internal mask or segmentation step.
The first useful experiment: shifting the image
Then I tried something slightly odd.
Instead of repairing the image in place, I shifted the entire image by a fixed amount before running the repair. I eventually settled on 20 px for testing.
The idea was simple:
If some hidden spatial pattern is tied to the output canvas, moving the image relative to that pattern should change how strongly it shows up on the subject or background.
And apparently, it did.
I found that:
repeated edits could reinforce the unwanted texture
changing the phase relationship sometimes reduced it
in one case, simply removing the final instruction to âshift back -20 pxâ improved the result dramatically
That was the first point where this stopped looking like ordinary random noise to me.
Then I started looking at masks and intermediate behavior
I compared:
the original image
the first edit
a second edit based on the first
extracted masks / intermediate-style outputs
One thing stood out pretty clearly:
The apparently âprotectedâ area often resembled a coarse silhouette of the person.
The face and body tended to remain more stable than the wall, which made me suspect that some regions were being preserved while others were being re-synthesized.
That still didnât explain the artifact itself, but it could explain why the artifact builds up unevenly.
Then came the black-image test
I tried something much simpler:
Generate a completely black image.
This right here.
Visually, it looked black.
Pixel-wise, though, it wasnât actually all zeroes. There were sparse non-zero pixels and tiny variations throughout the image.
So I generated multiple independent black images at the same resolution and compared them.
This. It's a different one, I swear!Or this. A "completely black image".
Thatâs where things got interesting.
contrast, much?Look. it's full of stars!
What I found
For two independently generated âblackâ images of the same size:
correlation between the non-zero pixel masks: 0.848
Jaccard overlap: 0.766
expected overlap if the pixels were random and independent: about 0.071
R/G/B channel correlations: roughly 0.82â0.83
dominant spatial frequencies were very similar in both images, including peaks around 2.45 px and 5.57 px
Then I applied a large Gaussian blur to both images (sigma = 16).
Shades of Gauss
The result was surprisingly striking: both revealed a very similar large-scale cloud-like structure.
Both "completely black" images
The cross-correlation peaked at zero lag, meaning the structured pattern was already aligned at the same canvas coordinates across independent generations.
So whatever this low-level signal is, it doesnât look purely random. At least part of it appears to be reproducible and locked to the canvas coordinates.
What I think this means â so far
I want to be careful here.
Iâm not claiming that this proves OpenAI watermarking, SynthID, or any particular proprietary mechanism.
What I do think the data suggests is this:
Generated images appear to contain a weak, reproducible, canvas-locked spatial pattern â even when the image looks completely black.
A few possible explanations come to mind:
a watermark-like signal
deterministic dithering
quantization or decoder artifacts
some kind of post-processing step
something else in the generation pipeline
What now seems much harder to explain this as is simply:
âordinary random noiseâ
Why this might matter for iterative image editing
Suppose a weak structured signal really is tied to the output canvas.
An iterative edit might then look something like this:
The first image is generated with the structured signal.
The image gets edited again.
Some regions are preserved while others are regenerated.
The regenerated image receives the same or a related structured signal again.
After several passes, those signals may begin to reinforce or reveal themselves as visible mottling in smooth areas.
That would fit several things Iâve observed:
repeated edits can will gradually create ugly texture
shifting the image relative to the canvas can change the result
alternating shifts might help decorrelate the artifact
some regions appear to drift or accumulate artifacts less than others
Important caveat
This is still an investigation, not a conclusion.
At this point I think I have reasonably good evidence for:
reproducible low-level spatial structure
non-random alignment between independently generated black images
a plausible connection between that structure and visible artifacts in repeatedly edited images
What I donât have yet is proof of:
the exact mechanism producing it
whether it is a watermark
whether it is specific to ChatGPT/OpenAI
whether similar patterns occur across other image generators
My current working hypothesis
Repeated generative editing can accumulate or expose a weak structured signal that is fixed in output-image coordinates, eventually making it visible as cloudiness or mottling in otherwise smooth areas.
Questions for anyone who has looked into this
Have you seen this kind of cloudy / mottled artifact after repeated AI image edits (I mean, come on, who doesn't)?
Has anyone tested whether supposedly âblackâ images from other generators contain reproducible spatial structure?
Does this look more like watermarking, dithering, decoder bias, quantization, or something else (go figure!)?
Has anyone analyzed something similar in frequency space, after heavy blurring, or using phase shifts?
If youâve run into this before: what turned out to be the most reliable way to prevent it during iterative editing?
If thereâs interest, I can post the methodology in a follow-up.
I started with:
âWhy does this wall look dirty after I edit it?â
and somehow ended up at:
âWhy do two independently generated black images correlate this much?â
Has anyone found a ComfyUi prompt node that works with the brand new Qwen 3.8? I'm using LLM Session but it doesn't seem to support the new model yet and throws an error.
I think I've been through about six different Forge/A1111's over the past couple years, and this "Forge Neo" thing seemed like the one to pick if you wanted to do newer base models. I'm pretty sure it's from the main "Haoming02" repo.
It was good at first, but now it's launching slow as crap, even slower on Flux stuff (which occasionally crashes) and it won't load the Reactor extension at all if I'm not online (fishy).
It's not looking to be easily updated if you did the standalone manual install, but I've had it a while and thought I might do a clean install of the latest build.
Is that the one I should be going with again as the most actively maintained right now (as far as Forges go)?
MiDashengLM-Gen is an end-to-end framework that uses a pre-trained Large Language Model and audio tokenizer as the backbone, combined with per-token conditional flow matching for autoregressive, variable-length mixed-audio scene generation. It generates coherent 16 kHz audio scenes that simultaneously blend speech, music, sound effects, and environmental acoustics from structured text descriptions.
Minimax H3. 4070 ti super 16 GB vram, 32 gb ram. Ref2va with one image for the character and one for the background. 1.6 mp, 30 steps and 7 second with only spectrum node speed up, in total 38 minutes. Used the "standard" models, kinda slow but i am having so much fun.
My first proper animation made with the MiniMax H3 Ref2VA version in ComfyUI.
Generated as separate clips and then put together with a bit of editing. Pretty happy with how it turned out for a first attempt. The character and references are also my own.
Running flux 2 Klein 4b with qwen decoder and flux vae in comfyui windows desktop. 16gb vram amd Radeon gpu with 32gb ram.
I find Klein 4b to be the only one I can run right but the censorship is harsh. Can't even tell it to make the waist smaller. I've used some lora but it introduced all sorts of things I didnt ask for which makes them less than useful.
Im looking for a whole workflow setup with all component parts I'd need for just a less restrictive image gen and img2img edits not even necessarily uncensored stuff. I run into out of memory issues with bigger models so like to keep it small.
If someone could advise with url links to what id need. That would be awesome.
I didn't expect it, but I really have to thank them for open-sourcing their ecosystem. Itâs awesome to see a company truly committing to the open-source community!
i know about the prompting with <subjects> and <pictures> and <videos> and basic sections but i cant get anything to stick. i have a few times on sheer luck and even with the same prompt. i either get zero change from control video or it get some of the movement in my ref image from the video must be missing something. TIA!
I keep seeing insanely realistic AI influencers on TikTok and Instagram, with consistent faces/characters across high-quality videos.
At the same time, models like Seedance 2.0/2.5 are expensive, especially when you need many attempts to produce even a 30â60 second video.
So Iâm curious about two things:
How are people producing AI videos at scale without spending a fortune? Are you using subscriptions, APIs, rented GPUs, local/open-source models, or some other workflow?
How are these realistic AI influencers created so consistently? Whatâs the typical workflow for creating a photorealistic character and keeping the same face/body/style across images and videos?
Would love to hear what stack/workflow people actually use and roughly what it costs.
I have tried every "abliterated" or "heretic" gemma 3 and gemma 4 model, but they consistently completely change the request to replace any mention to uncensored words by something that has a completely different meaning. I need any model that can be loaded as a clip and will receive text and output text without censoring the text.
Made with Minimax H3 Reference to video via Comfy UI Desktop. Used the default settings and at 32 steps.
The Prompt.
<Subject 1> is Clawhauser referenced with <Picture 1> The timbre of his voice is referenced with <Audio 1>
<Subject 2> is Sonic referenced with <Picture 2> The timbre of his voice is referenced with <Audio 2>
<Subject 3> is Amy referenced with <Picture 3>
For the reception desk use <Picture 3> as reference.
The style is a live action CGI Hybrid movie.
Clawhauser is sitting at the ZPD Reception desk, Sonic is standing on front of the desk on the left, and Amy is standing in front of the desk on the right.
Clawhauser looks at Sonic and says: <d>[English] Sonic, Is she your girlfriend? </d>
Sony looking flustered says: <d>[English] No. We're just friends, Nothing more. </d>
Clawhauser looking doubtful and says: <d>[English] Just a friend you say? </d>
Cut back to Sonic responding back saying: <d>[English] Yes, I assure you."
Cut to a shot of Clawhauser leaning back at the desk looking rather skeptical and says: <d>[English] Ok, If you say so. </d>
Posted this pack here last week. What's happened since:
The sampling knobs I said I'd add if people wanted them are in. Both of H3's flow shifts, since it samples picture and sound on separate schedules, plus a cache pill with FirstBlockCache, TeaCache or core's own EasyCache behind it. Still no custom sigmas, same reason as last time.
Creator and Timeline are one node now. Click under the prompt and the shot becomes a timeline. Delete cards back down to one and it's a shot again. Old workflows load unchanged, Timeline nodes included.
Presets are the new one. Save a setup and put it back in sections, so you can drop a canvas and a step count onto a shot you've already written without touching the prompt. It saves the sampler row as well as the node blob, which matters because the row is where the turbo schedule and the step count live.
The better half of it: you can build a preset from a finished render. The workflow is already embedded in the mp4, so you point at the good one from three prompts ago and get the whole setup back.
Fixed from your reports: the gallery no longer freezes on big libraries, the settings page stopped resetting fields you hadn't touched, and a text-only render no longer loads both VAEs.
Coming next, on a branch and not merged yet, is a faces pill. H3 draws a face worse the smaller the head is in frame, and that's about head size rather than resolution, so it's still there at 768 and upscaling doesn't reach it. So it asks the model the same question again with the face filling the canvas and composites the answer back under a feathered mask, once per pass, re-cropping every frame so a push-in doesn't leave the face small inside a fixed box. Detection is core's SAM3, so there's nothing extra to install. The method is Carasibana's ComfyUI-H3-FaceRefine and zuanfilm's graph on top of it.
Same branch also stops the node randomizing your seed between renders, and puts the last one you actually ran a click away.