ComfyUI Node

AnalyseMetadata

The pack's 'what's inside this image' node, and the bug nobody fixed

By RenderRift·Created 3 years ago·Updated 2 years ago· 8
AnalyseMetadata
    • STRING
    image

    AnalyseMetadata is supposed to be the read-the-image's-aura node: pick a PNG, get back a list of every node type in the workflow that produced it, as a string. In theory that's genuinely useful - a stranger posts an image, you want to know what went into it, and the answer is sitting in the file's metadata. In practice, as shipped, this node is broken, and you should know that before you build anything around it.

    How it works (and where it breaks)

    Like the rest of this pack, the mechanism is built on the workflow JSON that ComfyUI writes into every PNG's metadata - specifically the Description field, which is where the full graph lives. The node loads the image, reads that field, parses it, and collects every node's class_type into a list.

    Then it calls self.overlay_metadata_on_image(...) - a method that doesn't exist anywhere in the class. The result is an AttributeError the moment the node runs. This isn't a config problem you can fix; it's a dead call in the code, in a pack whose last commit was December 2023. If you're seeing a red node and an error trace pointing at overlay_metadata_on_image, that's not your workflow, that's the node.

    The intent, judging by the sibling code, was to also burn the metadata onto the image and hand back the file path. That half just never shipped.

    The honest replacement

    Don't fight it. This pack has two working nodes that do the useful 80% of what AnalyseMetadata was reaching for:

    • RR_DisplayMetaOptions - feed it the same metadata and get the plain list of node types, working, right now.
    • RR_LoadImageWithMeta - load a PNG and get its METADATA out, which you can then route into DisplayMetaOptions or the overlay node.

    Between those two you get everything AnalyseMetadata promised except the broken overlay part.

    Inputs and outputs

    For completeness: it takes a single image input (an upload from your ComfyUI input folder, just like core LoadImage) and returns one STRING - which, on the broken path, is either an error or, if it ever runs, the overlaid-image file path. Nothing else wires into it.

    Install

    Same as the whole pack:

    cd ComfyUI/custom_nodes
    git clone https://github.com/RenderRift/ComfyUI-RenderRiftNodes
    

    or ComfyUI Manager → search "RenderRift". Restart, and you'll see it in the node list. Installing it doesn't break anything else - the node just fails at runtime, cleanly, on its own.

    The verdict

    A broken node is a broken node, and this one has been broken since the pack's only meaningful release. Don't waste an afternoon trying to make it behave. Use RR_DisplayMetaOptions for the same information and move on - the metadata you were after is still there, and the working sibling nodes read it just fine.

    CategoryRenderRiftNodes

    Inputs (1)

    NameTypeDefaultDescription
    imageCOMBO1 options: example.png

    Outputs (1)

    NameTypeDescription
    STRINGSTRING