← ComfyTV Video
Export a ComfyTV video back to normal ComfyUI nodes
- video
- VIDEO
ComfyTV handles video as COMFYTV_VIDEO - a URL snapshot pointing at an mp4 on disk, managed inside its project canvas. The rest of ComfyUI handles video as a VIDEO object. Those don't talk to each other, and if you've done a whole edit chain inside ComfyTV (clip, color, FX, composite) and now want to hand the result to a native node - Save Video, something from VHS, a Wan Video pipeline - you need ← ComfyTV Video in between.
This is the out-bridge for the most valuable asset on the ComfyTV canvas, which is why it's the one you'll reach for at the end of a session: your finished edit gets to leave the canvas and land in the normal graph as a real VIDEO, ready to be saved or further processed.
How it works
No ▶ Run here. This isn't a ComfyTV stage; it's a converter that executes on the regular ComfyUI queue. The source wraps the mp4 referenced by the COMFYTV_VIDEO URL with ComfyUI's VideoFromFile loader, so the output VIDEO is just the file, read through the standard loader. One input (video, a COMFYTV_VIDEO URL), one output (VIDEO). The only real requirement is that the upstream ComfyTV stage actually ran - the URL has to point at a rendered file. No URL means no video, and the node has nothing to hand you.
The pattern to keep straight: → ComfyTV Video takes a native VIDEO and pulls it into the ComfyTV canvas (that one needs a Run to snapshot). ← ComfyTV Video pushes a ComfyTV clip out to native. If you're following the README's quick tour, the typical flow is ComfyTV generate → clip → FX chain, then this bridge into a final Save Video - export stays a native-ComfyUI problem.
Installing it
cd ComfyUI/custom_nodes
git clone https://github.com/jtydhr88/ComfyTV
Restart the ComfyUI backend, not just the browser tab. ComfyUI Manager finds the pack by searching "ComfyTV". Two README gotchas worth memorizing: on Desktop/macOS/multi-install setups the relative cd can clone into the wrong instance (check the startup log for the real base path and clone into it, absolute and quoted), and the first level of custom_nodes/ComfyTV/ must contain __init__.py - a nested ComfyTV/ComfyTV/… folder needs moving up a level.
No Python dependencies to babysit - pyproject.toml declares none, and video decode/encode rides on ComfyUI's own ffmpeg/PyAV.
Troubleshooting
- Invalid or empty URL. The upstream ComfyTV video stage hasn't been Run yet, or the snapshot path is stale. Re-run the producing stage, then re-run the bridge.
- Node missing after install. Wrong instance or nested folder - verify
custom_nodes/ComfyTV/__init__.pyexists and do a full backend restart. - Confusing it with → ComfyTV Video. Into-bridges Run and snapshot; out-bridges like this one just convert on Queue. If you're trying to get video into ComfyTV, you want the
→node instead.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| video | COMFYTV_VIDEO | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| VIDEO | VIDEO | — |