Nodes/Jovimetrix/MIDI FILTER EZ (JOV) ❇️
ComfyUI Node

MIDI FILTER EZ (JOV) ❇️

A no-frills MIDI gate, now living in Jovi_MIDI

By Amorano·Created 3 years ago·Updated 12 months ago· 396
MIDI FILTER EZ (JOV) ❇️
  • 🎛️
  • 🎛️
MODEIGNORE
CHAN-1
🎚️-1
🎶-1
VAL-1

MIDI FILTER EZ (JOV) ❇️ is the "keep it simple" version of the MIDI filter: you pick a mode, a channel, a control, a note, and a value, and it only lets matching MIDI messages through. No range syntax, no string parsing, no surprises - just "I want CC 7 on channel 1, and nothing else." If you're wiring up your first MIDI-driven workflow, this is the gate you want before you graduate to the advanced filter's range strings.

And the standing heads-up for every MIDI node in this pack: it migrated out of Jovimetrix. The 2.0 rework moved MIDI READER, MIDI MESSAGE, MIDI FILTER, and MIDI FILTER EZ to a dedicated repo, Amorano/Jovi_MIDI (listed explicitly in the Jovimetrix README under migrated nodes). If a workflow references "MIDI FILTER EZ (JOV) ❇️" and it's missing, install Jovi_MIDI - that's where it lives now.

What it does

It takes a 🎛️ message input and filters it against a handful of plain-integer criteria:

  • MODE - the message-type filter (ignored by default).
  • CHAN - MIDI channel (default -1 = any).
  • 🎚️ - control/CC number (default -1 = any).
  • 🎶 - note number (default -1 = any).
  • VAL - value (default -1 = any).

That "-1 means 'don't care'" convention is the whole mental model: set the fields you care about, leave the rest at -1. Outputs are 🎛️ (the message, if it passed) and (a boolean saying whether this message passed) - wire the boolean into a switch or gate if you want to trigger on the filter result rather than just pass messages.

The difference from the advanced MIDI FILTER node is deliberately simple: EZ matches exact single values. Advanced lets you write "5-10" or "60-" range strings. If you only ever want "this one knob, this one channel," EZ is less typing and less to go wrong.

Installing it

Install Jovi_MIDI:

# ComfyUI Manager: search "Jovi_MIDI" and install
# or manually:
cd ComfyUI/custom_nodes
git clone https://github.com/Amorano/Jovi_MIDI.git
cd Jovi_MIDI
pip install -r requirements.txt

Restart ComfyUI. Deps: mido[ports-rtmidi], aenum, cozy_comfyui. No models.

Troubleshooting

  • Nothing passes through - check you haven't left a "-1" where you wanted "any" to actually be a real value. -1 is wildcard, so a literal -1 means it matches nothing.
  • Everything passes through - all your fields are -1, so nothing is being filtered. That's correct behavior, just not useful.
  • Node missing after a Jovimetrix update - expected; it's in Jovi_MIDI now.
  • The ⚡ output is always the same - remember it's "did this message pass," so if your criteria are loose, it'll be true most of the time. Tighten CHAN or 🎚️.

MIDI FILTER EZ is the friendly front door to MIDI filtering. For most live-performance setups it's genuinely enough - reach for the advanced filter only when you start needing ranges.

CategoryJOVIMETRIX 🔺🟩🔵/DEVICE

Inputs (6)

NameTypeDefaultDescription
🎛️optJMIDIMSGMidi
MODEoptCOMBOIGNOREDecide whether the images should be resized to fit a specific dimension. Available modes include scaling to fit within given dimensions or keeping the original size
CHANoptINT-1-1–127Channel
🎚️optINT-1-1–127Control
🎶optINT-1-1–127Note
VALoptINT-1-1–127Value

Outputs (2)

NameTypeDescription
🎛️JMIDIMSGThe amount of blurriness (0->1.0) of the input image.
BOOLEANThe amount of blurriness (0->1.0) of the input image.