ComfyUI Node

Street View Animator

Rotations, Tilts and Zooms as a Frame Stack

By ru4ls·Created 11 months ago·Updated 8 months ago· 10
Street View Animator
    • images
    • metadata
    location40.720032,-73.988354
    start_heading0.0
    end_heading360.0
    start_pitch0.0
    end_pitch0.0
    start_fov90
    end_fov90
    duration5.0
    fps24
    aspect_ratio
    interpolationlinear
    historical_date_id

    If you've ever wanted a slow camera pan across a real street - the kind of move that makes a walk-through video feel alive - StreetViewAnimator is the pack's shortcut. It doesn't generate video. It generates a sequence of real frames by moving the Street View camera through your chosen parameters frame by frame, and hands you the whole stack as one batched IMAGE output. You then do what you like with it: feed it to a video-diffusion workflow (the README demonstrates exactly this - using the output as first/last frame input to create a walk-through), process it frame by frame, or combine it into a video with a Video Combine node.

    The appeal is that every frame is a real, photographic capture of an actual place. No model hallucinating motion blur; the camera genuinely rotates through the scene Google photographed.

    How it works

    The node interpolates heading, pitch, and fov from start to end over duration × fps frames, using your chosen easing, and calls the Street View API once per frame. Each frame becomes one slice of a stacked tensor.

    That per-frame cost is the one thing to respect here. 5 seconds at 24 fps is 120 API requests per run. The pack's free $200/month Google credit covers a lot - but this node burns through it faster than any other in the pack, and an animation you re-run while tweaking adds up. Be deliberate; preview a 1-second, low-fps pass before committing to the full render.

    The inputs that matter

    • start_heading / end_heading (0–360) - rotation. The classic move is 0 → 360 for a full sweep, and the node handles the wrap-around so it rotates the short way rather than snapping.
    • start_pitch / end_pitch (−90 to 90) - tilt. Combined with heading changes it gives you dynamic "crane-like" moves.
    • start_fov / end_fov (10–120) - zoom. Keep heading still and animate fov for a dolly effect.
    • duration (0.1–60 s) and fps (1–60) - total frames = duration × fps. Higher is smoother and pricier.
    • interpolation - linear, ease_in, ease_out, or ease_in_out. For pans that feel natural rather than mechanical, ease_in_out is the one.
    • aspect_ratio - the same preset dropdown as the plain loader (16:9, 1:1, 9:16, …), setting the frame size.
    • historical_date_id (optional) - a panorama ID if you want to animate a historical capture instead of the current view.

    Outputs are images (the stacked, batched IMAGE - a batch of N frames you can feed to video nodes directly) and metadata (a STRING recording frame count, settings, and the easing used).

    Install

    Same pack, same story as the rest of ru4ls/ComfyUI_StreetView-Loader: clone it into custom_nodes, pip install -r requirements.txt, restart ComfyUI, and put a Google Street View API key in the pack's .env file. You'll find the node under Ru4ls/StreetView in the menu. No extra models, no special deps - just remember the per-frame API bill before you queue up a long render.

    CategoryRu4ls/StreetView

    Inputs (12)

    NameTypeDefaultDescription
    locationSTRING40.720032,-73.988354
    start_headingFLOAT0.00–360
    end_headingFLOAT360.00–360
    start_pitchFLOAT0.0-90–90
    end_pitchFLOAT0.0-90–90
    start_fovINT9010–120
    end_fovINT9010–120
    durationFLOAT5.00.1–60
    fpsINT241–60
    aspect_ratioCOMBO5 options: 1:1 Square (640x640), 16:9 Widescreen (640x360), 9:16 Vertical (360x640), 4:3 Classic (640x480), 3:2 Photography (640x427)
    interpolationCOMBOlinear4 options: linear, ease_in, ease_out, ease_in_out
    historical_date_idoptSTRINGEnter a panorama ID to animate a historical image from a specific date

    Outputs (2)

    NameTypeDescription
    imagesIMAGE
    metadataSTRING