π§ Load Video (Dehypnotic)
A video loader that hands you the audio for free
- images
- audio
- fps
Load Video (Dehypnotic) is a video-in node with a nicer frontend and a free bonus: it decodes a video into an IMAGE frame batch and extracts its audio track into ComfyUI's standard AUDIO format, plus the framerate, in one go. Drag a file in, pick it from the dropdown, and you get frames, sound, and fps out the other side.
The niche it fills: ComfyUI's own Load Video has been historically clunky, and the community standard for serious video work is VideoHelperSuite. Load Video (Dehypnotic) isn't trying to out-VHS VHS for exotic codecs and format tricks - it's the friendly middle ground. The upload button and drag-and-drop go straight into ComfyUI/input/, there's a compact native player that previews on mouseover, and the dropdown lists your videos newest-first. For most frame-extraction and animation-remake work, that's all you need.
How it works
Under the hood it's two familiar tools doing what they do best. Frames are decoded with OpenCV (cv2.VideoCapture), converted BGRβRGB, and normalized into a float IMAGE tensor - the same shape every other image node in your graph expects. The audio is extracted by piping the file through FFmpeg (-vn video off, PCM float32, stereo, 44.1 kHz) and reshaping the output into ComfyUI's AUDIO dict. The node's IS_CHANGED returns the file's mtime, so ComfyUI re-reads the video whenever you replace the file on disk rather than caching stale frames forever.
Inputs and outputs
video(required) - a dropdown of every supported file (mp4,mkv,webm,avi,mov,gif) in your input folder, sorted newest first. Upload via the button or just drop a file onto the node.- Output
images(IMAGE) - the full frame sequence. - Output
audio(AUDIO) - the extracted track, orNonefor a silent video. - Output
fps(FLOAT) - the video's framerate, which you'll feed straight into anything that needs a target FPS.
That trio - frames plus audio plus fps - is the whole reason to prefer this over a bare frame loader: it feeds both the video half and the audio half of a workflow from one source.
Installing it
ComfyUI Manager: search "Dehypnotic", install, restart. Or:
cd ComfyUI/custom_nodes
git clone https://github.com/Dehypnotic/ComfyUI-Dehypnotic
Then restart. Delete any old Dehypnotic split-pack folders first (comfyui-aspect-ratio-advanced, comfyui-numbered-text, comfyui-range-to-string, comfyui-dehypnotic-save-nodes) - this is the merged "only repo now," and leftovers conflict.
Here's the gotcha this node inherits from the whole pack: there is no requirements.txt, and Load Video specifically needs opencv-python (for cv2) plus an FFmpeg binary. The pack expects them already in your environment. ComfyUI's own venv often has OpenCV from other nodes, but if you get an import error on cv2, that's the cause:
pip install opencv-python
For audio, the node first tries imageio-ffmpeg's bundled binary and falls back to a system ffmpeg on your PATH. No FFmpeg at all means the frames still load but audio silently comes back as None - no error, just no sound.
Common issues
- Import error mentioning
cv2. OpenCV isn't installed. See above. - Audio output is
Noneon a video that clearly has sound. Either FFmpeg is missing entirely, or the pack's bundled binary didn't materialize. Check withffmpeg -versionin a terminal; install via your package manager if absent. - Long videos eat RAM. The whole frame sequence is decoded into one tensor in memory, so a 4K, five-minute clip can chew through several GB before you've done anything. Trim or transcode shorter sections first.
- The dropdown looks stale. It only lists videos present in
ComfyUI/input/at node creation, newest-first. Drop your file there (or upload through the node), and refresh the node's value list if it doesn't appear.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| video | COMBO | 1 options: none |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| images | IMAGE | β |
| audio | AUDIO | β |
| fps | FLOAT | β |