Nodes/ComfyUI-ThinkSound/LoadO ThinkSound Video
ComfyUI Node

LoadO ThinkSound Video

The node that's really just a file path

By Yuan-ManX·Created about a year ago·Updated about a year ago· 29
LoadO ThinkSound Video
    • video
    video_pathcat.png

    Yes, the display name is "LoadO" - a typo in the pack's own node registration, and honestly the first hint that this node is not what it pretends to be. LoadO ThinkSound Video looks like a video loader but it's actually a path passthrough: you give it a file path and it hands that exact string to the ThinkSound node, which treats it as a path on disk. No decoding, no frames, no latent tensors. It's the "which file should I make sound like" input for the pack's audio generation.

    How it works

    The node's load_video function takes your video_path string and returns it unchanged. That's the entire mechanism. The VIDEO type on the output is aspirational - downstream, the ThinkSound node does os.path.splitext() and ffmpeg calls on the value, so it has to be a filesystem path for anything to work.

    There's a hidden bit of flexibility here: because ThinkSound converts whatever you point it at to an mp4 with ffmpeg before extracting features, it doesn't strictly need a video. The default value is cat.png, and a still image gets ffmpeg'd into a short single-frame clip just fine. So this is really "point it at any media file ffmpeg can open."

    The input and output

    • video_path - a string, default "cat.png". Type an absolute or relative path. In practice the ComfyUI way is to drag a file from your OS onto the widget, which fills the field with the full path for you.

    That one string comes out as video (type VIDEO), which wires into the video port on the ThinkSound node. That's the only connection it makes.

    Installing it

    It's one of the four nodes in the ComfyUI-ThinkSound pack - search "ComfyUI-ThinkSound" in ComfyUI Manager or clone it:

    cd ComfyUI/custom_nodes
    git clone https://github.com/Yuan-ManX/ComfyUI-ThinkSound.git
    

    The pack's shared setup applies: weights go in ckpts/ (Hugging Face liuhuadai/ThinkSound or ModelScope), and the pinned requirements (torch 2.6.0, numpy 1.23.5, and a hundred friends) should go in a dedicated environment, not your main one. Full details in the ThinkSound node article.

    Gotchas

    The one trap worth naming: because the output is a path masquerading as a VIDEO type, don't try to wire a real video tensor in here - say, a decode from a VHS Load Video node. The ThinkSound node will happily accept the type and then choke when it runs string-and-ffmpeg operations on something that isn't a path. If you want to make audio for footage you've already decoded in ComfyUI, save it out to a file first and point this node at that path. And remember the elephant in the room from the ThinkSound article: the pipeline this feeds is currently a non-functional stub, so a perfectly wired path won't produce audio until the pack's generation node is fixed.

    CategoryThinkSound

    Inputs (1)

    NameTypeDefaultDescription
    video_pathSTRINGcat.png

    Outputs (1)

    NameTypeDescription
    videoVIDEO