ImageMaximumNode
Max-blend two control videos into one (the surprising utility node)
- video_1
- video_2
- image
ImageMaximumNode does one thing: it takes two video tensors and combines them with an elementwise maximum - pixel by pixel, keeping whichever of the two is brighter. Two inputs (video_1, video_2), one output (image). It sounds useless until you hit the problem it exists to solve.
That problem is combining control signals. EasyAnimate's trajectory control is drawn as glowing heatmap blobs, and its camera control is likewise rendered as a control video. Want both in one shot? You can't just average them - a dark blob plus a dark background washes out to nothing. Max is exactly right for overlaying bright control markers: whatever is most salient at each pixel wins. So this node is how you merge a trajectory path and a camera move into a single control_video for the V5.1 sampler.
What it does under the hood
It's got enough smarts to be genuinely convenient:
- Resolution handling - if the two inputs differ in height or width, it resizes
video_2tovideo_1's dimensions before combining. Different-resolution sources just work. - Length handling - it truncates to the shorter of the two clips. The output is as long as the shortest input, so make sure both spans match your target
video_lengthor you'll silently lose frames.
The output is a single IMAGE of the merged frames, ready to feed into EasyAnimateV5_V2VSampler's control_video input.
When you'd actually use it
- Merging a trajectory heatmap with a camera control render.
- Fusing two separate control passes (say, a movement path and a region emphasis map).
- Any place you want "the brightest of both" instead of an average - and for control overlays, bright-is-winner is almost always the right merge.
It's also an honest lesson in how control-conditioned generation works: you can stack signals before they reach the model, as long as they're all in the same visual language the control model was trained on. If you max-blend two incompatible encodings, you just get noise - the node faithfully merges garbage if you feed it garbage.
Notes
The frame-length truncation is the only real trap - feed it a 30-frame camera render and a 49-frame trajectory and you'll get a 30-frame output without any warning. Keep both sources at the sampler's video_length. And don't expect it to be useful outside the control context: max-blending two real videos gives you a horror show. It's a control-signal combinator, and it's good at that.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| video_1 | IMAGE | — | |
| video_2 | IMAGE | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |