Nodes/ComfyUI Web Viewer/CHANNEL OSC Control @ vrch.ai
ComfyUI Node

CHANNEL OSC Control @ vrch.ai

On/off a channel from an OSC message

By VrchStudio·Created 2 years ago·Updated 18 days ago· 356
CHANNEL OSC Control @ vrch.ai
  • any_channel_on
  • any_channel_off
  • ANY_OUTPUT
server_ip172.17.0.2
port8000
path/channel
debugfalse

The CHANNEL OSC Control @ vrch.ai is the switch-flipper of the pack's OSC family. Where the ANY Value OSC Control node receives a raw value from a fader or knob, this one is built around on/off: an OSC message turns a channel on or off, and the node reflects that state as an ANY_OUTPUT you can branch on. It's the "button" flavor of OSC control, for the moments when a boolean is all you need.

Think of the use cases: a footswitch toggling between two prompt modes, a button on a phone that starts and stops a generation loop, an OSC-triggered bypass for an effect chain. All of those are just "is this channel on or not," and that's precisely the shape this node serves. It's also the natural building block for the pack's TouchOSC panel, which ships in the repo as comfyui_osc_control.tosc - load it into the TouchOSC app and you've got ready-made buttons wired for this scheme.

How it works

Two *-typed inputs set the state: any_channel_on and any_channel_off. Wire a signal into "on" and the channel flips on; into "off" and it flips off. The ANY_OUTPUT output then carries the current state - the practical pattern is feeding any_channel_on and any_channel_off from OSC value nodes so a message can drive the switch. server_ip, port (default 8000), and path (default /channel) define where it listens.

The * typing is the interesting part: these inputs accept almost anything, because all the node cares about is "did a signal arrive here." You don't need a perfectly-typed boolean source - any incoming value on the right input flips the state.

Installing it

Standard pack install:

cd ComfyUI/custom_nodes
git clone https://github.com/VrchStudio/comfyui-web-viewer
pip install -r comfyui-web-viewer/requirements.txt

Or install "ComfyUI Web Viewer" via ComfyUI Manager and restart. OSC support is built in - nothing extra to install.

The gotcha (same as every OSC node here)

Default server_ip is 172.17.0.2 - a Docker bridge address from the author's setup. On a normal machine you want 127.0.0.1 or your LAN IP, or messages never arrive. And remember the whole OSC family lives on a network protocol: the sending app and this node must agree on IP, port, and path, and be able to reach each other.

If you need more than one switch, the pack's CHANNEL x4 OSC Control gives you four of these channels with their own paths and outputs in a single node - grab that instead of stacking four of these. This one is the minimal single-channel version.

Categoryvrch.ai/control/osc

Inputs (6)

NameTypeDefaultDescription
any_channel_on*
any_channel_off*
server_ipSTRING172.17.0.2
portINT80000–65535
pathSTRING/channel
debugBOOLEANfalse

Outputs (1)

NameTypeDescription
ANY_OUTPUT*