Nodes/ComfyUI-MidjourneyHub/Midjourney Blend (Image Mix)
ComfyUI Node

Midjourney Blend (Image Mix)

Two images in, one hybrid out — Midjourney's blend, wired into the graph

By jiaqianjing·Created 2 years ago·Updated 4 months ago· 18
Midjourney Blend (Image Mix)
  • image1
  • image2
  • image
  • task_id
  • buttons
dimensionsSQUARE
bot_typeMID_JOURNEY
quality
seed-1

Midjourney Blend (Image Mix) does what MJ's Discord /blend does - take two images, mix them into a new one - but instead of dragging files into a chat, you wire two IMAGE tensors into a node. It's the pack's most self-contained node: no prompt required, no grid to interpret, just two images and a settings panel, and out comes a hybrid plus a fresh task_id you can keep acting on.

How it works

The node converts both input tensors to base64 PNGs, posts them to /mj/submit/blend with a botType and a dimensions string, gets a task_id back, and then polls the same fetch endpoint as every other MJ node in this pack until the blend is done. Two details worth knowing:

  • Dimensions aren't "1:1" like everywhere else - the API speaks SQUARE (1:1), PORTRAIT (2:3), or LANDSCAPE (3:2).
  • The seed is actually a cache-buster. Midjourney's relay caches identical requests and will happily hand you the same result for the same inputs. When seed is -1 the node uses a millisecond timestamp as the request's state, so every blend is treated as a fresh job. If you want a reproducible blend, pass a real seed - but know that identical inputs with the same seed can return the cached image.

Inputs and outputs

  • image1, image2 - required IMAGE tensors. Both get converted to PNG and sent up.
  • dimensions - SQUARE (default), PORTRAIT, LANDSCAPE.
  • bot_type - MID_JOURNEY or NIJI_JOURNEY (the anime model).
  • quality - a free-form string; the API doc suggests "hd" or leave it empty.
  • seed - -1 for fresh (default), or a fixed value up to 2^31−1.

Outputs: image (the blend), task_id (STRING), and buttons (DICT of MJ actions). Wire task_id into the Upscale/Variation nodes to refine the blend further - that's the natural next step, since a blend is itself a 2×2 grid.

Installing

Via ComfyUI Manager (search "ComfyUI-MidjourneyHub") or:

cd ComfyUI/custom_nodes
git clone https://github.com/jiaqianjing/ComfyUI-MidjourneyHub
# restart ComfyUI

Put your own key and URL in config.ini under [MIDJOURNEY_API] - the repo ships with the author's keys committed, so replace them before spending a single credit. Dependencies are the pack's usual light set (aiohttp, openai, nest_asyncio); nothing heavy.

Where people get burned

The same relay caveats as the rest of the pack apply (unofficial MJ API, Chinese-language console, api_url subject to change without notice - check it first when jobs fail). One blend-specific gotcha: if you're feeding it images from other ComfyUI nodes, make sure they're actual RGB images and not masks or latent-shaped tensors - the base64 conversion will happily mangle a wrong-shaped input into a corrupt PNG that the relay rejects.

CategoryMidjourneyHub

Inputs (6)

NameTypeDefaultDescription
image1IMAGE
image2IMAGE
dimensionsoptCOMBOSQUARE3 options: PORTRAIT, SQUARE, LANDSCAPE
bot_typeoptCOMBOMID_JOURNEY2 options: MID_JOURNEY, NIJI_JOURNEY
qualityoptSTRING
seedoptINT-1-1–2147483647

Outputs (3)

NameTypeDescription
imageIMAGE
task_idSTRING
buttonsDICT