Nodes/ComfyUI-Kling-Direct/Kling Video Loader
ComfyUI Node

Kling Video Loader

Load a local video as frames, path, and audio in one shot

By IxMxAMAR·Created 5 months ago·Updated 2 months ago· 4
Kling Video Loader
    • video
    • video_path
    • audio
    video

    Drop an mp4 into ComfyUI's input folder and KlingDirect_VideoLoader turns it into everything a Kling workflow could want at once: the frames as an IMAGE batch, the file path as a STRING, and the audio track as an AUDIO tensor. Three outputs, one dropdown, no API call, no credits. It's the pack's local-media front door, and it sits right next to Raw File Loader - the difference is that this one actually decodes the video.

    That decode is what you should notice: this node loads the video into memory as frames (with the pack's v2.1 pre-allocated-tensor path, which roughly triples the frame count it can handle before OOM - 600-frame 1080p clips now work where they used to die). That's the right trade when you need the pixels for local post-processing. If you only need a path to hand to a URL-based node, Raw File Loader skips the decode entirely and is the cheaper choice.

    The single input

    • video - a dropdown of video files in the input directory (mp4, mov, avi, webm). It's marked video_upload, so you can also drop a file straight onto the widget.

    The three outputs

    • video (IMAGE) - all frames as a tensor batch, ready for preview, post-processing, or feeding into a local pipeline.
    • video_path (STRING) - the absolute path on disk. This is what you hand to nodes that want a file location.
    • audio (AUDIO) - the extracted soundtrack, decoded alongside the frames.

    The all-in-one design is the useful bit: preview the clip and keep its path and audio from a single node, instead of wiring a video loader, a path finder, and an audio extractor separately.

    Install

    Part of ComfyUI-Kling-Direct: ComfyUI Manager → search "Kling Direct" → install, or git clone https://github.com/IxMxAMAR/ComfyUI-Kling-Direct into ComfyUI/custom_nodes, then restart. Pure local I/O - no auth, no key, no model downloads. The pack's deps (opencv-python for the frame decode, numpy, torch, Pillow, requests) are already satisfied by ComfyUI.

    Where people get burned

    • It decodes everything. Loading a long, high-res video as a tensor is memory-hungry even with the v2.1 fix. If you're only after the file path, use Raw File Loader and skip the frames.
    • The dropdown needs the file to exist. The list populates from the input folder; drop a new file in while ComfyUI is running and you may need to refresh or restart to see it.
    • Audio extraction isn't magic. If the source is a silent video, the audio output is a silent/empty tensor - nothing wrong with your graph, the source just has no track.

    It doesn't call Kling at all - this node is the local half of the workflow, feeding media in from your disk so the cloud half can do its thing.

    CategoryKling AI/Config

    Inputs (1)

    NameTypeDefaultDescription
    videoCOMBOSelect a video file from the ComfyUI input directory.

    Outputs (3)

    NameTypeDescription
    videoIMAGE
    video_pathSTRING
    audioAUDIO