# Slideshow

> Turn 2 to 100 images and an optional audio track into an MP4 slideshow with motion and transitions. No AI model runs, so it costs 0 credits.

Source: https://nodaro.ai/docs/nodes/video/slideshow

The **Slideshow** node turns 2 to 100 images and an optional audio track into one MP4 video. Each image becomes a slide, with an optional zoom or Ken Burns motion and a transition between slides. With audio, the video is exactly as long as the audio. No AI model runs, so the node always costs 0 credits.

- Found in: Video › Create
- Output: video
- API type: `slideshow`

## When to use it
- A narrated photo essay: a list of stills over a voiceover.
- A music-backed reel: product shots or event photos over a generated track.
- A storyboard animatic: [Generate Image](https://nodaro.ai/docs/nodes/image/generate-image) results in order, with dissolves between beats.

For a single image, use [Still to Video](https://nodaro.ai/docs/nodes/video/still-to-video). It makes the same kind of video without a list.

## Quick start
### Add the node

Press Tab on the canvas and choose **Video › Create › Slideshow**.

### Connect the images

Connect 2 to 100 image nodes to **Images**; the order of the connections is the order of the slides. Or connect the image column of a [List](https://nodaro.ai/docs/nodes/automate/list) node and set the connection to **Bundle**, so that every row becomes a slide, in row order.

### Add sound and transitions

Connect an audio node to **Audio** to set the length and the soundtrack. Connect a [Transition](https://nodaro.ai/docs/nodes/creative-controls/transition) picker to **Transition** to choose how slides change.

### Run it

Click **Run**. The MP4 appears on the node.

Workflow: Twelve product shots from a List, a music track and a dissolve transition become one music-backed reel.

- List → Slideshow (images)
- Generate Music → Slideshow (audio)
- Transition → Slideshow (transition)

## Inputs
| Input | Accepts | What it does |
| --- | --- | --- |
| **Images** | 2 to 100 image nodes, or a List node's image column set to **Bundle** | The slides, in order. Required. |
| **Audio** | Audio nodes | The soundtrack. Optional. It sets the length of the video. |
| **Transition** | A [Transition](https://nodaro.ai/docs/nodes/creative-controls/transition) picker | How slides change. Without it, slides cut. A cinematic transition that has no local equivalent also becomes a cut. |

The output, **Video**, is an MP4 file with H.264 video, and AAC audio when an audio track is connected.

## How long each slide lasts

| Case | What happens |
| --- | --- |
| **Audio connected** | The video is exactly as long as the audio, never cut short. The slides share the time equally. |
| **No audio** | Each slide lasts **Per Image** seconds, so the video is the number of slides times Per Image. The video is silent, with no audio track. |

A transition takes its time from the slide that ends, never from the next one, so the total length stays exact. The strip on the node shows each slide's width as its duration, so what you see is the real timing.

From the API, you can also set a length for each slide with `imageDurations`, where `null` means automatic. Slides with a set length keep it, and the others share the remaining time. When every slide has a set length and the total differs from the audio, all slides are scaled to fit the audio, and the node shows the factor it applied. A List node cannot set per-slide lengths.

## Settings
| Setting | What it does |
| --- | --- |
| **Per Image** | Seconds per slide, from 0.5 to 60. The default is 3. Used only when no audio is connected. |
| **Transition** | The length of the blend between slides, from 0 to 5 seconds. The default is 0.5. The type of transition comes from the connected Transition picker. |
| **Motion** | **None** (the default), **Zoom in**, **Zoom out**, **Ken Burns** or **Alternate**, which flips between zooming in and out from slide to slide. |
| **Intensity** | How strong the motion is, from 1 to 10. The default is 3. It has no effect when Motion is None. |
| **Resolution** | **720p**, **1080p** (the default) or **4K**. |
| **Aspect Ratio** | **16:9** (the default), **9:16**, **1:1** or **4:3**. |
| **FPS** | **24** or **30** (the default) frames per second. |
| **Fit** | **cover** (the default) crops each image to fill the frame. **contain** shows the whole image and fills the bars with the pad color. |
| **Pad Color** | The color of the bars when Fit is contain. The default is black, #000000. |

## Credits
Slideshow always costs 0 credits. It renders on Nodaro's own media engine, with no AI model.

## Tips
- **Use Alternate for an edited feel.** Alternate at an intensity of 2 to 4 makes a photo reel feel edited rather than mechanical.
- **Keep transitions shorter than slides.** A transition blends inside the ending slide's time, so keep it well under your shortest slide.
- **Expect static bars.** With contain and a motion, each image moves inside the frame and the bars stay still.
- **4K with motion is the slow path.** Every slide then goes through the motion pipeline. Without motion, any size renders quickly.
- **Intercut with footage.** Send the slideshow to [Combine Videos](https://nodaro.ai/docs/nodes/video/combine-videos) to mix it with real clips.

## Frequently asked questions

### How long is each slide in a Slideshow?

With audio connected, the video is exactly as long as the audio and the slides share it equally. Without audio, each slide lasts the Per Image time, 3 seconds by default, and the video is silent.

### How do I add transitions between slides?

Connect a Transition picker to the Transition input and set Transition duration in the settings panel. Without a Transition picker, the slides change with a hard cut.

### How many images can a Slideshow have?

From 2 to 100. With fewer than 2, the node asks you to use Still to Video; with more than 100, it stops with an error instead of starting a very long render.

### Does Slideshow cost credits?

No. It renders the video with Nodaro's own media engine and runs no AI model, so it always costs 0 credits.
