> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mosaic.so/llms.txt
> Use this file to discover all available pages before exploring further.

# 2. AI B-Roll

> Automatically generate or source relevant B-roll that matches what's being said in your video.

Automatically generate or source relevant B-roll that matches what's being said in your video, helping you increase visual variety, storytelling quality, and audience retention.

AI B-roll is especially useful for **talking-head videos, interviews, podcasts, explainers, and educational content** that benefit from visual support.

## How It Works

The AI B-Roll tile analyzes your video's speech, plans relevant visual cutaways, generates short video clips, and overlays them at appropriate timestamps.

You can control:

* B-roll density
* Video generation model
* Aspect ratio
* Whether generated clips include audio
* Maximum number of generated clips
* Visual style and content focus

## Input & Settings

### Coverage Level

Defines how much B-roll gets added per minute.

Options include (may vary by build):

* **Minimal**
* **Moderate** ← Balanced default
* **High**
* **Maximal**

Use **Minimal** for subtle enhancement and **Maximal** for heavy coverage.

### Video Model

Select which AI model to generate B-roll with.

Supported API values:

* `seedance-2`
* `veo-3.1`
* `veo-3.1-fast`
* `veo-3.1-lite`

Different models produce different visual styles (cinematic, realistic, stylized, etc.).

### Aspect Ratio

Controls the shape of generated B-roll.

Options:

* **Auto** (recommended) → Matches your input video or target platform
* **16:9** for YouTube/desktop
* **9:16** for TikTok/Reels/Shorts
  Choose based on your **final output format**.

### Generate Audio (Optional)

Toggle to include audio in the generated B-roll.

Notes:

* Not all models support audio
* Useful for cinematic segments
* Not required for overlay-style B-roll

### Max Video Generations

Sets the max number of B-roll scenes to create.

The backend caps this at 20 generated clips for deterministic runtime.

### Style & Content Prompt (Optional)

Use this to define:

* Visual style
* Subject matter
* Tone / vibe

Examples:

* "Cinematic city skyline shots, wide angle, slow motion"
* "Stock footage of office work and laptops, clean and modern"
* "Playful animated visuals matching educational content"
* "Nature and planet shots, documentary style"

Leave blank to let Mosaic choose based on content.

## Usage Recommendations

Use AI B-roll to:

* Break up long talking segments
* Add visual context to explanations
* Support storytelling
* Improve audience retention

AI B-roll works great when combined with:

* **Clips** (extract highlights first)
* **Reframe** (convert to 9:16 for TikTok)
* **Captions** (add subtitles)
* **AI Music** (background audio)

***

## API Info

<AccordionGroup>
  <Accordion title="Node Params & API Details" icon="code">
    * **Node ID:** `2160392b-ebe8-4f3d-b81e-fd11bdbbeb77`

    ### Node params

    | Param                   | Type                                                            | Required | Default        | Notes                                                                  |
    | ----------------------- | --------------------------------------------------------------- | -------- | -------------- | ---------------------------------------------------------------------- |
    | `coverage_level`        | `"low" \| "moderate" \| "high" \| "max"`                        | No       | `"moderate"`   | Amount/frequency of generated B-roll.                                  |
    | `prompt`                | `string`                                                        | No       | `""`           | Optional visual/style guidance.                                        |
    | `video_model`           | `"seedance-2" \| "veo-3.1" \| "veo-3.1-fast" \| "veo-3.1-lite"` | No       | `"seedance-2"` | Model choice for generated B-roll clips.                               |
    | `asset_types`           | `("video")[]`                                                   | No       | `["video"]`    | Fixed to video generation in current implementation.                   |
    | `aspect_ratio`          | `"auto" \| "16:9" \| "9:16"`                                    | No       | `"auto"`       | Generated clip framing mode.                                           |
    | `generate_audio`        | `boolean`                                                       | No       | `false`        | Include audio in generated clips when supported by the selected model. |
    | `max_video_generations` | `number`                                                        | No       | `20` effective | UI/metadata may allow higher values; backend hard cap is 20.           |

    ### Parameter groups

    * **Coverage strategy:** `coverage_level`, `max_video_generations`
    * **Generation model:** `video_model`, `asset_types`, `aspect_ratio`, `generate_audio`
    * **Creative guidance:** `prompt`

    ### Scenario requirements

    * Keep `max_video_generations` within `1..20` for deterministic behavior.
    * Some model/aspect combinations are rejected by backend validators.

    ### Runtime notes

    * `coverage_level` controls target placement density and minimum gaps.
    * `max_video_generations` is capped at 20.

    ### Example

    ```json theme={null}
    {
      "coverage_level": "moderate",
      "video_model": "seedance-2",
      "aspect_ratio": "9:16",
      "generate_audio": false,
      "max_video_generations": 10,
      "prompt": "Add short cinematic cutaways that reinforce key points."
    }
    ```
  </Accordion>
</AccordionGroup>
