From 6bf3daccbefecc9c3f187b6e627f2c47a577398d Mon Sep 17 00:00:00 2001 From: Clawdio Date: Wed, 18 Mar 2026 22:18:38 +0000 Subject: [PATCH] fix: use VideoFromFile (not VideoInput) for SaveVideo compatibility MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ComfyUI's SaveVideo calls video.get_dimensions() which requires VideoFromFile. VideoInput does not exist — correct class is VideoFromFile from comfy_api.input_impl. --- __init__.py | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/__init__.py b/__init__.py index c615ae1..1149409 100644 --- a/__init__.py +++ b/__init__.py @@ -21,16 +21,20 @@ except ImportError: # ─── VIDEO type helper (native ComfyUI compat) ─────────────────────────────── def _make_video_output(path: str): - """Wrap video path as ComfyUI VIDEO type object when available.""" + """Wrap video path as ComfyUI VIDEO type object for SaveVideo compatibility. + + ComfyUI's SaveVideo node calls video.get_dimensions() and video.save_to(), + so we must return a VideoFromFile object, not a plain string. + """ try: - from comfy_api.input_impl import VideoInput - return VideoInput(path) + from comfy_api.input_impl import VideoFromFile + return VideoFromFile(path) except ImportError: pass try: - from comfy.video_types import VideoOutput - return VideoOutput(path) - except ImportError: + from comfy_api.latest._input_impl import VideoFromFile + return VideoFromFile(path) + except (ImportError, AttributeError): pass return path