Nodes/houdini-comfyui-bridge/String To Image Helper
ComfyUI Node

String To Image Helper

Show an image without loading it — String To Image Helper

By CapybaraCrowporation·Created 10 months ago·Updated 3 months ago· 110
String To Image Helper
      image_path

      Most output nodes do real work: they encode pixels, write files, stamp metadata. HouCuiStringAsImage (display name "String To Image Helper") does almost nothing - and that's the feature. You hand it a string that's a path to an image, and it tells the ComfyUI frontend "show this image." No loading, no copying, no encoding. If the file is already sitting on disk, that's all you need.

      This is a bridge-world node. In a Houdini ComfyUI Bridge workflow, Houdini can write a render, a mask, or a reference frame into ComfyUI's output directory without ComfyUI having generated it at all. The graph's job is just to let you look at it and carry on. Instead of round-tripping the pixels through a LoadImage and a Preview node, the bridge hands you a path string and this node presents it in the UI as if ComfyUI had produced it.

      How it works

      The mechanism is exactly the SaveImage result convention, minus the saving. process() builds a results dict with three fields from your image_path input:

      • filename - the basename of the path,
      • subfolder - the directory part of the path,
      • type - hardcoded to "output".

      and returns it as a {"ui": {"images": [...]}} payload. ComfyUI's frontend treats that as "an image was produced" and displays it, same as it would for a real save node. Because the node is flagged OUTPUT_NODE, it always runs and the graph's cache works backward from it.

      The one trap: the path must be output-relative

      Here's where people get burned. type: "output" tells the frontend to resolve the filename inside ComfyUI's output/ directory. So image_path should be relative to output/ - like my_folder/render_003.png - not an absolute path and not input-relative. Feed it an absolute Windows path and the UI quietly fails to find the file, because it's joining that against the output directory into a nonsense location. If the preview shows nothing, that's the first thing to check. Also note there's no existence check: the node will happily announce an image that isn't there.

      Install

      HouCuiStringAsImage ships in houdini-comfyui-bridge (CapybaraCrowporation/houdini-comfyui-bridge), the community project by Rafael Drelich Valentim and Anatolii Iudanov that plugs ComfyUI into Houdini - not a SideFX initiative, GPL-3.0, open-sourced late 2025 and presented at SIGGRAPH Asia 2025.

      cd ComfyUI/custom_nodes
      git clone https://github.com/CapybaraCrowporation/houdini-comfyui-bridge
      

      Restart ComfyUI after cloning (or use ComfyUI Manager, search "houdini-comfyui-bridge"). The custom-node side pulls in no Python dependencies and no model files; the meat of the pack is the Houdini plugin (OTLs via your Houdini userdir or HOUDINI_PATH). Remember the docs' connectivity gotcha: ComfyUI Desktop defaults to port 8000 while the Houdini nodes default to 8188 - a mismatch that breaks the whole bridge before this node ever sees a string.

      Should you use it?

      In plain ComfyUI, probably not - PreviewImage exists and it actually loads the file. This node earns its keep specifically when an image lands in output/ from outside ComfyUI and you want to see it, wire it onward as a string, and keep the graph dependency-light. It's a preview adapter, not a loader, and knowing that distinction is the whole game.

      Categorysd

      Inputs (1)

      NameTypeDefaultDescription
      image_pathSTRINGThe image path to output.

      Outputs (0)

      No outputs