Batch Make (mtb)
Turn one image into a batch of N identical frames
- image
- mask
- IMAGE
Batch Make does exactly what it says and nothing more: it takes a single image and duplicates it into a batch of count identical copies. That's it. No cleverness, no options beyond a count and an optional mask - and that's precisely why it's useful. A lot of the more interesting nodes in MTB Nodes' mtb/batch family (Batch Shake, Batch Time Wrap, per-frame color or curve nodes) need something with a batch dimension to operate on before they can start varying it frame by frame. Batch Make is how you get from "one image" to "a batch, ready to be animated" in a single step.
Where it fits in a workflow
Say you want to apply a subtle handheld camera-shake effect to a static image, or run a per-frame color drift across what's otherwise the same picture, or just feed something with the right batch shape into a node that expects a video-length input but you only have a single still. Rather than generating 25 near-identical frames from your sampler (slow, and they won't actually be identical), you generate one frame, then let Batch Make stamp it out N times. Everything downstream that varies things per frame - shake, drift, noise, color grading - then does the actual work of making each copy different.
The inputs and output that matter
image(IMAGE, required) - the single frame to duplicate.count(INT, default 1) - how many copies to produce. Set this to match whatever batch size your downstream animation nodes expect.mask(MASK, optional) - if you're carrying a mask alongside the image, it gets duplicated in lockstep so the batch dimension stays consistent between image and mask.
Output is a single IMAGE - the duplicated batch, ready to wire into anything that expects a multi-frame input.
Installing it
ComfyUI Manager: search MTB Nodes, install, restart. Manually:
cd ComfyUI/custom_nodes
git clone https://github.com/melMass/comfy_mtb
then restart. Nothing to download - it's pure tensor duplication, no models involved.
Common issues
There isn't much to go wrong with a node this simple, but two things trip people up. First, memory: duplicating a large image into a batch of, say, 200 copies multiplies your VRAM footprint by 200 the moment anything downstream actually processes the batch - it's cheap to create the duplicated tensor, not necessarily cheap to run a sampler or upscaler over all of it. Set count deliberately, not as a placeholder you forget to change.
Second, the pack-wide issue worth knowing about regardless of which mtb node you're using: MTB doesn't hard-fail if one of its nodes can't import - it logs [comfy_mtb] Some nodes (N) could not be loaded at startup and points you at http://127.0.0.1:8188/mtb, then keeps the rest of the pack running. That's a real, confirmed behavior from other users' install logs, so if Batch Make (or anything else from this pack) doesn't show up after install, that console line is the first place to look - not a reinstall.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| count | INT | 1 | — |
| maskopt | MASK | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| IMAGE | IMAGE | — |