Nodes/ComfyUI-aihub-workflow-exposer/AIHub Expose Project Video
ComfyUI Node

AIHub Expose Project Video

Read a stored video from the project — and know when to leave it unprocessed

By otavanopisto·Created about a year ago·Updated 22 days ago· 7
AIHub Expose Project Video
    • VIDEO
    • LOCAL_FILE
    idexposed_video
    file_namevideo.mp4
    batch_index
    do_not_processfalse
    optionalfalse

    AIHub Expose Project Video reads a video file stored in the AIHub project and hands it to your workflow as a VIDEO object plus the raw LOCAL_FILE path. But read the docstring the way its author wrote it: "this util does not have the capacity to process the video file itself into something usable, it merely exposes the file name to be used by other nodes that can handle video files." That honesty is the whole personality of this node - it's a file gateway, not a video decoder.

    Mechanically it's the project-file pattern: the workflow needs a project (via AIHubWorkflowController with a project_type), the client tells the server which file, the server injects the path, and the node wraps the file into ComfyUI's VIDEO representation by default. The README adds a sharper version of the same warning - "the expose project video function cannot load a video file and it must be done by another node" - which is why the escape hatch exists.

    What you set

    • file_name - the video file as stored, extension included (video.mp4 default).
    • batch_index - pick one file from a stored batch by index; single integer, negatives count from the end.
    • do_not_process - the important one. Check it and the node leaves the video alone entirely: VIDEO comes back null and you get LOCAL_FILE, which you feed to whatever node actually handles video. Set this when the default VideoFromFile wrapping isn't what you want, or when you need to process the file path yourself.
    • optional - true means a missing file yields nulls instead of aborting.
    • id - protocol field id.

    Outputs: VIDEO, LOCAL_FILE.

    The pragmatic reading

    For most real workflows, do_not_process should be on. This node's value is that it gets a path to a project-stored video into your graph - the actual decoding and frame work belongs to a video-capable node downstream. Defaulting to processing is convenient for simple cases, but if you ever find yourself getting a VIDEO you can't do anything useful with, the flag is there precisely to get out of the way and hand you the file path instead.

    Install & gotchas

    Standard pack install: ComfyUI Manager → search ComfyUI-aihub-workflow-exposer, or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/otavanopisto/ComfyUI-aihub-workflow-exposer
    

    then restart. No requirements.txt, no model downloads.

    Two gotchas. First, the no-project default trap - no project context, no file, and with optional off you get a hard "Video file not found" error. Second, don't expect this node to make frames: it doesn't, and no amount of wiring here replaces an actual video-processing node. If your workflow needs frames as images, that's AIHubExposeFrame (live from an editor) or a dedicated video loader (from files) - this node's job ends at getting the file into the graph.

    Categoryaihub/expose

    Inputs (5)

    NameTypeDefaultDescription
    idSTRINGexposed_videoA unique custom id for this workflow.
    file_nameSTRINGvideo.mp4The name of the video file as stored in the project files, including extension
    batch_indexSTRINGIf the file belongs to a batch, the index of the latent to load, it must be a single integer, and it can be negative to count from the end
    do_not_processBOOLEANfalseIf set to true, the video will not be processed by the node and you will have to handle it manually
    optionalBOOLEANfalseIf set to true, it will not raise an error if the video is not found

    Outputs (2)

    NameTypeDescription
    VIDEOVIDEO
    LOCAL_FILESTRING