aenum git+https://github.com/cozy-comfyui/cozy_comfyui@main#egg=cozy_comfyui git+https://github.com/cozy-comfyui/cozy_comfy@main#egg=cozy_comfy matplotlib numpy>=1.25.0 opencv-contrib-python Pillow


COMFYUI Nodes for procedural masking, live composition and video manipulation
JOVIMETRIX IS ONLY GUARANTEED TO SUPPORT COMFYUI 0.1.3+ and FRONTEND 1.2.40+
IF YOU NEED AN OLDER VERSION, PLEASE DO NOT UPDATE.
Please consider sponsoring me if you enjoy the results of my work, code or documentation or otherwise. A good way to keep code development open and free is through sponsorship.
| | |
-|-|-|-
[](https://github.com/sponsors/Amorano) | [](https://www.paypal.com/paypalme/onarom) | [](https://www.patreon.com/joviex) | [](https://ko-fi.com/alexandermorano)
BLEND node — subtract, multiply and overlay like the bestCOLOR BLIND check supportCOLOR MATCH against existing images or create a custom LUTCOLOR THEORY spreads from an existing imageCOLOR MEANS to generate palettes for existing images to keep other images in the same tonal rangesPIXEL SPLIT separate the channels of an image to manipulate and PIXEL MERGE them back togetherSTACK a series of images into a new single image vertically, horizontally or in a gridFLATTEN a batch of images into a single image with each image subsequently added on top (slap comp)VALUE Node has conversion support for all ComfyUI types and some 3rd party types (2DCoords, Mixlab Layers)LERP node to linear interpolate all ComfyUI and Jovimetrix value typesARRAY that can Merge, Split, Select, Slice or Randomize a list of ANY typeSTRINGER node to perform specific string manipulation operations: Split, Join, Replace, Slice.QUEUE Node that supports recursing directories, filtering multiple file types and batch loadingOP UNARY and OP BINARY nodes to perform single and double type functions across all ComfyUI and Jovimetrix value typesSWIZZLE node to swap their XYZW positionsDELAY execution at certain parts in a workflow, with or without a timeoutTICK and WAVE GEN nodesMigrated to Jovi_GLSL
~~* GLSL shader support~~
~~* * GLSL Node provides raw access to Vertex and Fragment shaders~~
~~* * Dynamic GLSL dynamically convert existing GLSL scripts file into ComfyUI nodes at runtime~~
~~* * Over 20+ Hand written GLSL nodes to speed up specific tasks better done on the GPU (10x speedup in most cases)~~
Migrated to Jovi_Capture
~~* STREAM READER node to capture monitor, webcam or url media~~
~~* STREAM WRITER node to export media to a HTTP/HTTPS server for OBS or other 3rd party streaming software~~
Migrated to Jovi_Spout
~~* SPOUT streaming support *WINDOWS ONLY*~~
Migrated to Jovi_MIDI
~~* MIDI READER Captures MIDI messages from an external MIDI device or controller~~
~~* MIDI MESSAGE Processes MIDI messages received from an external MIDI controller or device~~
~~* MIDI FILTER (advanced filter) to select messages from MIDI streams and devices~~
~~* MIDI FILTER EZ simpler interface to filter single messages from MIDI streams and devices~~
Migrated to Jovi_Help
~~* Help System for *ALL NODES* that will auto-parse unknown knows for their type data and descriptions~~
Migrated to Jovi_Colorizer
~~* Colorization for *ALL NODES* using their own node settings, their node group or via regex pattern matching~~
Nodes that have been removed are in various other packages now. You can install those specific packages to get the functionality back, but I have no way to migrate the actual connections — you will need to do that manually. **
Nodes that have been migrated:
2025/09/04 @2.1.25:
LEVEL nodeHISTOGRAM node2025/08/15 @2.1.23:
FLATTEN node2025/08/12 @2.1.22:
2025/08/03 @2.1.21:
DELAY node2025/07/31 @2.1.20:
OP UNARY or OP BINARY2025/07/27 @2.1.19:
BATCH TO LIST nodeVECTOR node(s) default step changed to 0.12025/07/13 @2.1.18:
2025/07/07 @2.1.17:
2025/07/04 @2.1.16:
2025/06/28 @2.1.15:
GRAPH NODE updated to use new mechanism in cozy_comfyui 0.0.37 for list of list parse on dynamics2025/06/18 @2.1.14:
2025/06/18 @2.1.13:
2025/06/07 @2.1.11:
2025/06/06 @2.1.10:
2025/06/02 @2.1.9:
COMBO style of inputs2025/05/29 @2.1.8:
2025/05/27 @2.1.7:
SPLIT node to break images into vertical or horizontal slices2025/05/25 @2.1.6:
2025/05/16 @2.1.5:
EnumScaleInputMode for BLEND node to adjust inputs prior to operationCONSTANT node to fall throughVALUE nodes return all items as list, not just >1PIXEL SPLIT nodeADJUST node into BLUR, EDGE, LIGHT, PIXEL,2025/05/08 @2.1.4:
2025/05/08 @2.1.3:
2025/05/07 @2.1.2:
TICK with normalization and new series generator2025/05/06 @2.1.1:
TICK SIMPLE in situ of TICK to be inclusive of the end range2025/05/05 @2.1.0:
OP UNARY fixed factorialOP UNARYSTEREOGRAM and STEROSCOPIC — they were designed poorly2025/05/01 @2.0.11:
2025/04/24 @2.0.10:
SHAPE NODE fixed for transparency blends when using blurred masks2025/04/24 @2.0.9:
2025/04/23 @2.0.8:
2025/04/19 @2.0.7:
2025/04/19 @2.0.6:
2025/04/19 @2.0.5:
2025/04/17 @2.0.4:
MODE that would fail when the matte was smaller than the input image2025/04/12 @2.0.0:
Jovi_Capture – Web camera, Monitor Capture, Window Capture
Jovi_MIDI – MIDI capture and MIDI message parsing
Jovi_Spout – SPOUT Streaming support
Jovi_Colorizer – Node Colorization
LIST or BATCH and process as if all elements are in a list.MATTE_RESIZEPlease see the wiki for advanced use of the environment variables used during startup
If you have ComfyUI Manager installed, simply search for Jovimetrix and install from the manager’s database.
Clone the repository into your ComfyUI custom_nodes directory. You can clone the repository with the command:
git clone https://github.com/Amorano/Jovimetrix.git
You can then install the requirements by using the command:
.\python_embed\python.exe -s -m pip install -r requirements.txt
If you are using a virtual environment (venv), make sure it is activated before installation. Then install the requirements with the command:
pip install -r requirements.txt
You can find me on [](https://discord.gg/62TJaZ3Z5r).