> ## 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.

# 6. Cinematic Captions

> Add stylized captions designed to look cinematic or 'YouTube documentary' style.

Adds stylized captions designed to look cinematic or "YouTube documentary" style.

<img src="https://mintcdn.com/mosaic/l9HWWkYCXVPErm4s/images/cc.png?fit=max&auto=format&n=l9HWWkYCXVPErm4s&q=85&s=b0183ddcb08257a696dc0d768f16621e" alt="Cc" width="1920" height="1080" data-path="images/cc.png" />

**Font Selection:** Choose fonts for your captions. Primary font is used for most words, secondary font adds visual variety for emphasis.

**Color Override:** Override the AI-selected text colors with a fixed color for all captions.

**Let AI choose colours:** Mosaic AI will choose colours based off the colours in the video.

Good for:

* Talking head videos
* Interviews
* Short-form content

***

## API Info

<AccordionGroup>
  <Accordion title="Node Params & API Details" icon="code">
    * **Node ID:** `dfa94b02-6a18-4922-9613-636bd202d69d`

    ### Node params

    | Param               | Type                                                                                                                           | Required | Default        | Notes                                                                 |
    | ------------------- | ------------------------------------------------------------------------------------------------------------------------------ | -------- | -------------- | --------------------------------------------------------------------- |
    | `font1`             | `string`                                                                                                                       | No       | `"Montserrat"` | Primary font family.                                                  |
    | `font2`             | `string \| null`                                                                                                               | No       | `null`         | Secondary/accent font family. Set to `null`/omit to use only `font1`. |
    | `color_override`    | `string \| null` (hex)                                                                                                         | No       | `null`         | If set, forces this color onto generated caption spec.                |
    | `text_bg_enabled`   | `boolean`                                                                                                                      | No       | `false`        | Enable text background box.                                           |
    | `text_bg_color`     | `string` (hex)                                                                                                                 | No       | `"#000000"`    | Text background color.                                                |
    | `text_bg_opacity`   | `number`                                                                                                                       | No       | `0.6`          | Text background opacity (`0.1-1.0`).                                  |
    | `text_bg_roundness` | `number`                                                                                                                       | No       | `6`            | Text background corner radius (`0-20`).                               |
    | `animation_style`   | `"pop" \| "slide" \| "fade" \| "bounce" \| "typewriter" \| "wave" \| "cinematic" \| "highlight"`                               | No       | `"pop"`        | Caption animation preset.                                             |
    | `stroke_enabled`    | `boolean`                                                                                                                      | No       | `true`         | Enable stroke on caption text.                                        |
    | `stroke_color`      | `string` (hex)                                                                                                                 | No       | `"#000000"`    | Stroke color.                                                         |
    | `stroke_width`      | `number`                                                                                                                       | No       | `2`            | Stroke width (`0-8`).                                                 |
    | `shadow_enabled`    | `boolean`                                                                                                                      | No       | `false`        | Enable text shadow.                                                   |
    | `shadow_blur`       | `number`                                                                                                                       | No       | `10`           | Shadow blur radius (`0-40`).                                          |
    | `shadow_color`      | `string` (hex)                                                                                                                 | No       | `"#000000"`    | Shadow color.                                                         |
    | `shadow_opacity`    | `number`                                                                                                                       | No       | `0.5`          | Shadow opacity (`0.1-1.0`).                                           |
    | `uniform_word_size` | `boolean`                                                                                                                      | No       | `false`        | Force consistent word sizing.                                         |
    | `single_line`       | `boolean`                                                                                                                      | No       | `false`        | Force single-line captions.                                           |
    | `caption_position`  | `"auto" \| "top-left" \| "top" \| "top-right" \| "left" \| "center" \| "right" \| "bottom-left" \| "bottom" \| "bottom-right"` | No       | `"auto"`       | Caption placement.                                                    |

    ### Parameter groups

    * **Font pairing:** `font1`, `font2`
    * **Color policy:** `color_override`, `text_bg_*`
    * **Animation & layout:** `animation_style`, `caption_position`, `single_line`, `uniform_word_size`
    * **Edge styling:** `stroke_*`, `shadow_*`

    ### Runtime notes

    * If `color_override` is null, AI style generation chooses colors from scene analysis.
    * Runtime validates/fetches fonts from remotion template; invalid font names can fail render.
    * `font1`/`font2` should be valid Google Font family names.
    * For API overrides, pass these via `update_params[agent_node_id]`.

    ### Example

    ```json theme={null}
    {
      "font1": "Montserrat",
      "font2": "Besley",
      "color_override": null,
      "animation_style": "cinematic",
      "caption_position": "bottom",
      "text_bg_enabled": true,
      "text_bg_color": "#000000",
      "text_bg_opacity": 0.55,
      "stroke_enabled": true,
      "stroke_color": "#000000",
      "stroke_width": 2
    }
    ```
  </Accordion>
</AccordionGroup>
