Nodes/Jovimetrix/BIT SPLIT (JOV) ⭄
ComfyUI Node

BIT SPLIT (JOV) ⭄

Crack numbers, text, and images into raw bits

By Amorano·Created 3 years ago·Updated 12 months ago· 397
BIT SPLIT (JOV) ⭄
  • VALUE
  • 🇴
BITS8
MSBfalse

BIT SPLIT (JOV) ⭄ is the kind of node you won't need every day, and will thank yourself for knowing about the day you do: it takes an input and breaks it into individual bits. Number becomes a stream of 1s and 0s, text becomes a list of its characters, image becomes a per-pixel "is this pixel lit?" stream. If that sounds niche, it is - this is a node for people building logic-driven or procedural workflows, not for making pretty pictures. But in the Jovimetrix *philosophy of "every value is just data," it's a foundational piece.

What it does, type by type

The node's own description is refreshingly precise:

  • BOOL, INT, FLOAT - the value's numeric bits are split out (so an 8-bit number becomes 8 values).
  • STRING - treated as a list of characters, so each character is its own output element.
  • IMAGE and MASK - every pixel is visited; any non-black pixel yields a "TRUE" bit, so you get a stream of bits for the whole image.

That image case is the interesting one. Feed it a black-and-white mask and you can ask "which pixels are on" and get a boolean stream - which you can then route through the pack's logic nodes to drive decisions in a procedural workflow.

Inputs and outputs

Three inputs, two outputs:

  • VALUE (any) - the thing to split. The only input you'll usually touch.
  • BITS (INT, default 8, 1–64) - how many output bits you want. Truncates or zero-pads to fit.
  • MSB (BOOLEAN, default false) - most-significant-bit first (true) or least-significant-first (false). If you're wiring this into real signal processing or a display driver, this matters; for casual use, leave it off.

Outputs are numerical bits (a list of 0/1 INTs) and boolean bits (a list of True/False). Same information, two encodings, so you can feed either into whatever downstream node expects that type.

Installing it

Part of Jovimetrix:

  • ComfyUI Manager - search "Jovimetrix", install.
  • Manual - git clone https://github.com/Amorano/Jovimetrix.git into custom_nodes/, then pip install -r requirements.txt.

No models. Requirements are numpy, OpenCV, Pillow, matplotlib, plus the author's cozy_comfyui library. Needs ComfyUI 0.1.3+.

The honest take

Let's be real: 99% of ComfyUI users will never need to see the bits of an image. BIT SPLIT earns its place in two scenarios - you're building a procedural/automation workflow that branches on data conditions, or you're doing something weird and wonderful like driving LED-style displays or encoding state into bitmasks. The Jovimetrix package is built around this kind of arbitrary data plumbing (its OP BINARY node even does bitwise ops), and BIT SPLIT is the source side of that story. Don't install Jovimetrix for this node. Do remember it exists when you find yourself thinking "I wish I could check if this number is even / this pixel is lit / this character is a space" - that's exactly the gap it fills.

CategoryJOVIMETRIX 🔺🟩🔵/CALC

Inputs (3)

NameTypeDefaultDescription
VALUEopt*the value to convert into bits
BITSoptINT81–64number of output bits requested
MSBoptBOOLEANfalsereturn the most signifigant bits (True) or least signifigant bits first

Outputs (2)

NameTypeDescription
*Bits as Numerical output (0 or 1)
🇴BOOLEANBits as Boolean output (True or False)