Panorama · Multi-View
One panorama, a ring of cameras, and a whole storyboard in a single Run
- panorama
- images
- image
Current View captures one window out of a 360° panorama. Multi-View is the sibling that places evenly spaced cameras around the sphere and shoots them all in a single Run - one click, a batch of flat images. With view_count at 4 you get Front / Right / Back / Left, as if you stood in the center and turned four ways. That's an instant storyboard, or an orbit showcase for a character or product, or a set of consistent-environment frames for Image Variations or video.
It's the "don't make me aim four times" node. When you're building a multi-camera setup from one environment, this is the one you want.
The inputs
view_count- how many viewport shots to extract, 1..64 (default 4). The Vue panel's slider drives it (the schema marks it hidden).aspect_ratio- per-view shape, 16:9 default.resolution- per-view short-side tier: 1K / 2K / 4K.selected_index- internal plumbing, 1-indexed; clicking a thumbnail in the output grid sets it.panorama(optional) - theCOMFYTV_PANORAMAsource.
The two outputs, and which to use
This node has both, and the difference matters:
images- the full batch (COMFYTV_IMAGES). Wire this into an Image Picker to browse and edit the shots individually. That's the intended flow and the one you'll use most.image- the single item atselected_index. Handy when you know which view you want without browsing, or when a downstream stage wants exactly one image.
Where it fits
Pair with the pack's flow: Panorama → Multi-View → Image Picker → (edit), or route picked frames into a Video Stage for an image-to-video pass. For "consistent environment across angles," this is the cheap path - every frame comes from the same source, so lighting and geography match in a way separate generations never will.
Install
Pack-wide:
cd ComfyUI/custom_nodes
git clone https://github.com/jtydhr88/ComfyTV
Restart ComfyUI - Desktop/macOS users clone into the running instance by absolute path, verify __init__.py at the top level, and restart the backend (not just the browser). ComfyUI Manager finds it as "ComfyTV". No extra Python dependencies.
Same resolution caveat as its sibling: the batch is only as sharp as the source panorama. And remember everything flows as project snapshots here - COMFYTV_IMAGES isn't a native ComfyUI batch, so Bridge nodes are the doorway to native graph nodes if you need one.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| force_run_token | INT | 00–2147483647 | Internal — bumped on Run to invalidate ComfyUI's input cache. |
| project_id | STRING | Internal — populated by the projectStore on the frontend. | |
| parent_output_id | INT | 00–2147483647 | Internal — lineage parent set by spawn handlers on the frontend. |
| view_count | INT | 41–64 | How many viewport screenshots to extract. Hidden — driven by the Vue panel's slider. |
| aspect_ratio | COMBO | 16:9 | Per-view aspect ratio. |
| resolution | COMBO | 1K | Per-view short-side resolution tier. |
| selected_index | INT | 11–999 | Internal — 1-indexed cell pick for image-batch stages. Driven by clicking a thumbnail in the node's output grid. |
| panoramaopt | COMFYTV_PANORAMA | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| images | COMFYTV_IMAGES | — |
| image | COMFYTV_IMAGE | — |