Nodes/ComfyUI LivePhoto Creator/Preview Live Photo
ComfyUI Node

Preview Live Photo

See Your Live Photo Play, Right Inside ComfyUI

By stormcenter·Created 2 years ago·Updated 2 years ago· 39
Preview Live Photo
  • video

    Here's the problem this node solves: LivePhotoCreator hands you back a path to a .MOV, not a picture you can look at. PreviewImage can't play video. So you'd have to leave ComfyUI, dig through the output folder, and open the file yourself to see whether your Live Photo actually worked. LivePhotoPreview is the eyeball that keeps you in the graph.

    It's a tiny display node and proud of it. You feed it the video output from LivePhotoCreator and it renders an actual inline <video> element right in the node - controls, looping, muted, the whole deal. No model files, no generation, no extra outputs to wire. It's pure verification.

    How it works

    Under the hood it's an output node (notice the is_output_node flag - it has nothing to send forward). When it runs, it returns {"ui": {"video": <path>}}, and the pack's bundled JavaScript extension (js/livephoto_preview.js) takes that path, splits it into the folder and filename, and pulls the actual file through ComfyUI's /view endpoint so the browser can play it. The source even has a nice forgiving touch: if you feed it a bare directory instead of a file path, it quietly appends IMG.MOV for you.

    There's exactly one input worth knowing about:

    • video (VIDEO) - the path that LivePhotoCreator's video output produces. That's it. Wire and run.

    Why you'd reach for it

    Honestly, because otherwise you're tabbing out to the filesystem every time you tweak a setting. You generate a clip, adjust the duration or key frame, regenerate, and you want to see the difference without hunting for livephoto_20260811_091023/IMG.MOV in the output directory. This node puts that on the canvas next to everything else. Pair it with a PreviewImage on the photo output and you can compare the still against the motion in one glance.

    Common issues

    The known issues here come straight from the README: some browsers block autoplay, and that's why the video element ships muted and looping. If you click run and see a dark box, hit the play button - in most cases it's your browser being cautious, not the node being broken. If the file genuinely isn't where the node expects it, you'll get a warning printed in the console rather than a hard crash, which is decent behavior for a preview node.

    Installing it

    This is part of the ComfyUI LivePhoto Creator pack, so you get all three nodes in one install. Easiest route is ComfyUI Manager: search for "ComfyUI LivePhoto Creator" (or just "Live Photo") and install, then restart. Or do it by hand:

    cd ComfyUI/custom_nodes
    git clone https://github.com/stormcenter/ComfyUI-LivePhotoCreator
    

    Then make sure the pack's runtime deps are present - opencv-python, pillow, and a system ffmpeg binary:

    pip install opencv-python pillow
    sudo apt-get install ffmpeg   # or brew install ffmpeg / Windows installer
    

    Restart ComfyUI and the node shows up under the image category. There's a dependency check baked into __init__.py that prints a friendly warning listing anything missing on startup, which is a nice touch for a small pack. No model downloads - this pack is pure post-processing, and LivePhotoPreview doesn't even need ffmpeg itself; it just needs the file path to exist.

    Categoryimage

    Inputs (1)

    NameTypeDefaultDescription
    videoVIDEO

    Outputs (0)

    No outputs