> For the complete documentation index, see [llms.txt](https://docs.agenticflow.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.agenticflow.ai/reference/nodes/create_video.md).

# Create Video from Topic

**Action ID:** `create_video`

## Description

Automatically generate professional videos from a topic or brief using AI. This node leverages PixelML's video generation capabilities to create videos with AI-generated images or stock footage, voiceovers, background music, and captions based on your input text or transcript.

## Provider

**PixelML**

## Connection

| Name               | Description                                 | Required | Category |
| ------------------ | ------------------------------------------- | :------: | -------- |
| PixelML Connection | The PixelML connection to call PixelML API. |     ✓    | pixelml  |

## Input Parameters

| Name                           | Type          | Required | Default | Description                                                                                                                                                 |
| ------------------------------ | ------------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| brief                          | string        |     -    | -       | Brief description of the video. Required if transcript is not provided                                                                                      |
| images                         | array         |     -    | -       | List of image URLs, used to create the video. If not provided, our AI will find the relevant assets to create the video                                     |
| transcript                     | string        |     -    | -       | Transcript of the video. If not provided, our AI will generate the transcript based on the brief                                                            |
| voice\_over\_language          | string (enum) |     -    | -       | Voice over id. If not provided, our AI will choose the most suitable voice based on the brief and the transcript                                            |
| background\_music              | string        |     -    | -       | Background music. If not provided, our AI will choose the most suitable background music based on the brief and the transcript                              |
| media\_type                    | string (enum) |     -    | -       | Media type: 'moving\_ai\_images' or 'stock\_videos'. If not provided, our AI will choose the most suitable media type based on the brief and the transcript |
| ai\_images\_generation\_preset | string (enum) |     -    | -       | AI images generation preset. If not provided, our AI will choose the most suitable preset based on the brief and the transcript                             |

<details>

<summary>View JSON Schema</summary>

```json
{
  "$defs": {
    "ImageGenPresets": {
      "description": "Image generation presets.",
      "enum": [
        "3d-model",
        "analog film",
        "anime",
        "cinematic",
        "comic book",
        "craft clay",
        "digital art",
        "enhance",
        "fantasy art",
        "isometric",
        "line art",
        "lowpoly",
        "neonpunk",
        "origami",
        "photographic",
        "pixel art",
        "texture",
        "ads-advertising",
        "ads-automotive",
        "ads-corporate",
        "ads-fashion editorial",
        "ads-food photography",
        "ads-luxury",
        "ads-real estate",
        "ads-retail",
        "artstyle-abstract",
        "artstyle-abstract expressionism",
        "artstyle-art deco",
        "artstyle-art nouveau",
        "artstyle-constructivist",
        "artstyle-cubist",
        "artstyle-expressionist",
        "artstyle-graffiti",
        "artstyle-hyperrealism",
        "artstyle-impressionist",
        "artstyle-pointillism",
        "artstyle-pop art",
        "artstyle-psychedelic",
        "artstyle-renaissance",
        "artstyle-steampunk",
        "artstyle-surrealist",
        "artstyle-typography",
        "artstyle-watercolor",
        "futuristic-biomechanical",
        "futuristic-biomechanical cyberpunk",
        "futuristic-cybernetic",
        "futuristic-cybernetic robot",
        "futuristic-cyberpunk cityscape",
        "futuristic-futuristic",
        "futuristic-retro cyberpunk",
        "futuristic-retro futurism",
        "futuristic-sci-fi",
        "futuristic-vaporwave",
        "game-bubble bobble",
        "game-cyberpunk game",
        "game-fighting game",
        "game-gta",
        "game-mario",
        "game-minecraft",
        "game-pokemon",
        "game-retro arcade",
        "game-retro game",
        "game-rpg fantasy game",
        "game-strategy game",
        "game-streetfighter",
        "game-zelda",
        "papercraft-collage",
        "papercraft-flat papercut",
        "papercraft-kirigami",
        "papercraft-paper mache",
        "papercraft-paper quilling",
        "papercraft-papercut collage",
        "papercraft-papercut shadow box",
        "papercraft-stacked papercut",
        "papercraft-thick layered papercut",
        "photo-alien",
        "photo-film noir",
        "photo-hdr",
        "photo-long exposure",
        "photo-neon noir",
        "photo-silhouette",
        "photo-tilt-shift",
        "misc-architectural",
        "misc-disco",
        "misc-dreamscape",
        "misc-dystopian",
        "misc-fairy tale",
        "misc-gothic",
        "misc-grunge",
        "misc-horror",
        "misc-kawaii",
        "misc-lovecraftian",
        "misc-macabre",
        "misc-manga",
        "misc-metropolis",
        "misc-minimalist",
        "misc-monochrome",
        "misc-nautical",
        "misc-space",
        "misc-stained glass",
        "misc-techwear fashion",
        "misc-tribal",
        "misc-zentangle"
      ],
      "title": "ImageGenPresets",
      "type": "string"
    },
    "TextToSpeechVoices": {
      "description": "Text to speech voices.",
      "enum": [
        "Hoai_My_Neural",
        "Nam_Minh_Neural",
        "Ava_Neural",
        "Andrew_Neural",
        "Emma_Neural",
        "Brian_Neural",
        "Alloy",
        "Echo",
        "Fable",
        "Onyx",
        "Nova",
        "Shimmer",
        "en_US_Casual_K",
        "en_US_Journey_D",
        "en_US_Journey_F",
        "en_US_Journey_O",
        "en_US_Neural2_A",
        "en_US_Neural2_C",
        "en_US_Neural2_D",
        "en_US_Neural2_E",
        "en_US_Neural2_F",
        "en_US_Neural2_G",
        "en_US_Neural2_H",
        "en_US_Neural2_I",
        "en_US_Neural2_J",
        "en_US_News_K",
        "en_US_News_L",
        "en_US_News_N",
        "en_US_Polyglot_1",
        "en_US_Standard_A",
        "en_US_Standard_B",
        "en_US_Standard_C",
        "en_US_Standard_D",
        "en_US_Standard_E",
        "en_US_Standard_F",
        "en_US_Standard_G",
        "en_US_Standard_H",
        "en_US_Standard_I",
        "en_US_Standard_J",
        "en_US_Studio_O",
        "en_US_Studio_Q",
        "en_US_Wavenet_A",
        "en_US_Wavenet_B",
        "en_US_Wavenet_C",
        "en_US_Wavenet_D",
        "en_US_Wavenet_E",
        "en_US_Wavenet_F",
        "en_US_Wavenet-G",
        "en_US_Wavenet-H",
        "en_US_Wavenet-I",
        "en_US_Wavenet-J",
        "vi_VN_Neural2_A",
        "vi_VN_Neural2_D",
        "vi_VN_Standard_A",
        "vi_VN_Standard_B",
        "vi_VN_Standard_C",
        "vi_VN_Standard_D",
        "vi_VN_Wavenet_A",
        "vi_VN_Wavenet_B",
        "vi_VN_Wavenet_C",
        "vi_VN_Wavenet_D",
        "Danielle",
        "Gregory",
        "Ivy",
        "Joanna",
        "Kendra",
        "Kimberly",
        "Salli",
        "Joey",
        "Justin",
        "Kevin",
        "Matthew",
        "Ruth",
        "Stephen"
      ],
      "title": "TextToSpeechVoices",
      "type": "string"
    }
  },
  "description": "Create video config node input.",
  "properties": {
    "brief": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Brief description of the video. Required if transcript is not provided.",
      "title": "Brief"
    },
    "images": {
      "anyOf": [
        {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "List of image URLs, used to create the video. If not provided, our AI will find the relevant assets to create the video.",
      "title": "Images"
    },
    "transcript": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Transcript of the video. If not provided, our AI will generate the transcript based on the brief.",
      "title": "Transcript"
    },
    "voice_over_language": {
      "anyOf": [
        {
          "$ref": "#/$defs/TextToSpeechVoices"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Voice over id. If not provided, our AI will choose the most suitable voice based on the brief and the transcript.",
      "enum_options": {
        "Alloy": {
          "languages": [],
          "name": "Alloy",
          "provider": "OpenAI",
          "voice_id": "alloy"
        },
        "Andrew_Neural": {
          "gender": "male",
          "languages": [
            "en"
          ],
          "name": "Andrew Neural",
          "provider": "Azure",
          "voice_id": "en-US-AndrewNeural"
        },
        "Ava_Neural": {
          "gender": "female",
          "languages": [
            "en"
          ],
          "name": "Ava Neural",
          "provider": "Azure",
          "voice_id": "en-US-AvaNeural"
        },
        "Brian_Neural": {
          "gender": "male",
          "languages": [
            "en"
          ],
          "name": "Brian Neural",
          "provider": "Azure",
          "voice_id": "en-US-BrianNeural"
        },
        "Danielle": {
          "gender": "female",
          "languages": [
            "en"
          ],
          "name": "Danielle",
          "provider": "AWSPolly",
          "voice_id": "Danielle"
        },
        "Echo": {
          "languages": [],
          "name": "Echo",
          "provider": "OpenAI",
          "voice_id": "echo"
        },
        "Emma_Neural": {
          "gender": "female",
          "languages": [
            "en"
          ],
          "name": "Emma Neural",
          "provider": "Azure",
          "voice_id": "en-US-EmmaNeural"
        },
        "Fable": {
          "languages": [],
          "name": "Fable",
          "provider": "OpenAI",
          "voice_id": "fable"
        },
        "Gregory": {
          "gender": "male",
          "languages": [
            "en"
          ],
          "name": "Gregory",
          "provider": "AWSPolly",
          "voice_id": "Gregory"
        },
        "Hoai_My_Neural": {
          "gender": "female",
          "languages": [
            "vi"
          ],
          "name": "Hoai My Neural",
          "provider": "Azure",
          "voice_id": "vi-VN-HoaiMyNeural"
        },
        "Ivy": {
          "gender": "female",
          "languages": [
            "en"
          ],
          "name": "Ivy",
          "provider": "AWSPolly",
          "voice_id": "Ivy"
        },
        "Joanna": {
          "gender": "female",
          "languages": [
            "en"
          ],
          "name": "Joanna",
          "provider": "AWSPolly",
          "voice_id": "Joanna"
        },
        "Joey": {
          "gender": "male",
          "languages": [
            "en"
          ],
          "name": "Joey",
          "provider": "AWSPolly",
          "voice_id": "Joey"
        },
        "Justin": {
          "gender": "male",
          "languages": [
            "en"
          ],
          "name": "Justin",
          "provider": "AWSPolly",
          "voice_id": "Justin"
        },
        "Kendra": {
          "gender": "female",
          "languages": [
            "en"
          ],
          "name": "Kendra",
          "provider": "AWSPolly",
          "voice_id": "Kendra"
        },
        "Kevin": {
          "gender": "male",
          "languages": [
            "en"
          ],
          "name": "Kevin",
          "provider": "AWSPolly",
          "voice_id": "Kevin"
        },
        "Kimberly": {
          "gender": "female",
          "languages": [
            "en"
          ],
          "name": "Kimberly",
          "provider": "AWSPolly",
          "voice_id": "Kimberly"
        },
        "Matthew": {
          "gender": "male",
          "languages": [
            "en"
          ],
          "name": "Matthew",
          "provider": "AWSPolly",
          "voice_id": "Matthew"
        },
        "Nam_Minh_Neural": {
          "gender": "male",
          "languages": [
            "vi"
          ],
          "name": "Nam Minh Neural",
          "provider": "Azure",
          "voice_id": "vi-VN-NamMinhNeural"
        },
        "Nova": {
          "languages": [],
          "name": "Nova",
          "provider": "OpenAI",
          "voice_id": "nova"
        },
        "Onyx": {
          "languages": [],
          "name": "Onyx",
          "provider": "OpenAI",
          "voice_id": "onyx"
        },
        "Ruth": {
          "gender": "female",
          "languages": [
            "en"
          ],
          "name": "Ruth",
          "provider": "AWSPolly",
          "voice_id": "Ruth"
        },
        "Salli": {
          "gender": "female",
          "languages": [
            "en"
          ],
          "name": "Salli",
          "provider": "AWSPolly",
          "voice_id": "Salli"
        },
        "Shimmer": {
          "languages": [],
          "name": "Shimmer",
          "provider": "OpenAI",
          "voice_id": "shimmer"
        },
        "Stephen": {
          "gender": "male",
          "languages": [
            "en"
          ],
          "name": "Stephen",
          "provider": "AWSPolly",
          "voice_id": "Stephen"
        },
        "en_US_Casual_K": {
          "languages": [
            "en"
          ],
          "name": "en-US-Casual-K",
          "provider": "Google",
          "voice_id": "en-US-Casual-K"
        },
        "en_US_Journey_D": {
          "languages": [
            "en"
          ],
          "name": "en-US-Journey-D",
          "provider": "Google",
          "voice_id": "en-US-Journey-D"
        },
        "en_US_Journey_F": {
          "languages": [
            "en"
          ],
          "name": "en-US-Journey-F",
          "provider": "Google",
          "voice_id": "en-US-Journey-F"
        },
        "en_US_Journey_O": {
          "languages": [
            "en"
          ],
          "name": "en-US-Journey-O",
          "provider": "Google",
          "voice_id": "en-US-Journey-O"
        },
        "en_US_Neural2_A": {
          "languages": [
            "en"
          ],
          "name": "en-US-Neural2-A",
          "provider": "Google",
          "voice_id": "en-US-Neural2-A"
        },
        "en_US_Neural2_C": {
          "languages": [
            "en"
          ],
          "name": "en-US-Neural2-C",
          "provider": "Google",
          "voice_id": "en-US-Neural2-C"
        },
        "en_US_Neural2_D": {
          "languages": [
            "en"
          ],
          "name": "en-US-Neural2-D",
          "provider": "Google",
          "voice_id": "en-US-Neural2-D"
        },
        "en_US_Neural2_E": {
          "languages": [
            "en"
          ],
          "name": "en-US-Neural2-E",
          "provider": "Google",
          "voice_id": "en-US-Neural2-E"
        },
        "en_US_Neural2_F": {
          "languages": [
            "en"
          ],
          "name": "en-US-Neural2-F",
          "provider": "Google",
          "voice_id": "en-US-Neural2-F"
        },
        "en_US_Neural2_G": {
          "languages": [
            "en"
          ],
          "name": "en-US-Neural2-G",
          "provider": "Google",
          "voice_id": "en-US-Neural2-G"
        },
        "en_US_Neural2_H": {
          "languages": [
            "en"
          ],
          "name": "en-US-Neural2-H",
          "provider": "Google",
          "voice_id": "en-US-Neural2-H"
        },
        "en_US_Neural2_I": {
          "languages": [
            "en"
          ],
          "name": "en-US-Neural2-I",
          "provider": "Google",
          "voice_id": "en-US-Neural2-I"
        },
        "en_US_Neural2_J": {
          "languages": [
            "en"
          ],
          "name": "en-US-Neural2-J",
          "provider": "Google",
          "voice_id": "en-US-Neural2-J"
        },
        "en_US_News_K": {
          "languages": [
            "en"
          ],
          "name": "en-US-News-K",
          "provider": "Google",
          "voice_id": "en-US-News-K"
        },
        "en_US_News_L": {
          "languages": [
            "en"
          ],
          "name": "en-US-News-L",
          "provider": "Google",
          "voice_id": "en-US-News-L"
        },
        "en_US_News_N": {
          "languages": [
            "en"
          ],
          "name": "en-US-News-N",
          "provider": "Google",
          "voice_id": "en-US-News-N"
        },
        "en_US_Polyglot_1": {
          "languages": [
            "en"
          ],
          "name": "en-US-Polyglot-1",
          "provider": "Google",
          "voice_id": "en-US-Polyglot-1"
        },
        "en_US_Standard_A": {
          "languages": [
            "en"
          ],
          "name": "en-US-Standard-A",
          "provider": "Google",
          "voice_id": "en-US-Standard-A"
        },
        "en_US_Standard_B": {
          "languages": [
            "en"
          ],
          "name": "en-US-Standard-B",
          "provider": "Google",
          "voice_id": "en-US-Standard-B"
        },
        "en_US_Standard_C": {
          "languages": [
            "en"
          ],
          "name": "en-US-Standard-C",
          "provider": "Google",
          "voice_id": "en-US-Standard-C"
        },
        "en_US_Standard_D": {
          "languages": [
            "en"
          ],
          "name": "en-US-Standard-D",
          "provider": "Google",
          "voice_id": "en-US-Standard-D"
        },
        "en_US_Standard_E": {
          "languages": [
            "en"
          ],
          "name": "en-US-Standard-E",
          "provider": "Google",
          "voice_id": "en-US-Standard-E"
        },
        "en_US_Standard_F": {
          "languages": [
            "en"
          ],
          "name": "en-US-Standard-F",
          "provider": "Google",
          "voice_id": "en-US-Standard-F"
        },
        "en_US_Standard_G": {
          "languages": [
            "en"
          ],
          "name": "en-US-Standard-G",
          "provider": "Google",
          "voice_id": "en-US-Standard-G"
        },
        "en_US_Standard_H": {
          "languages": [
            "en"
          ],
          "name": "en-US-Standard-H",
          "provider": "Google",
          "voice_id": "en-US-Standard-H"
        },
        "en_US_Standard_I": {
          "languages": [
            "en"
          ],
          "name": "en-US-Standard-I",
          "provider": "Google",
          "voice_id": "en-US-Standard-I"
        },
        "en_US_Standard_J": {
          "languages": [
            "en"
          ],
          "name": "en-US-Standard-J",
          "provider": "Google",
          "voice_id": "en-US-Standard-J"
        },
        "en_US_Studio_O": {
          "languages": [
            "en"
          ],
          "name": "en-US-Studio-O",
          "provider": "Google",
          "voice_id": "en-US-Studio-O"
        },
        "en_US_Studio_Q": {
          "languages": [
            "en"
          ],
          "name": "en-US-Studio-Q",
          "provider": "Google",
          "voice_id": "en-US-Studio-Q"
        },
        "en_US_Wavenet-G": {
          "languages": [
            "en"
          ],
          "name": "en-US-Wavenet-G",
          "provider": "Google",
          "voice_id": "en-US-Wavenet-G"
        },
        "en_US_Wavenet-H": {
          "languages": [
            "en"
          ],
          "name": "en-US-Wavenet-H",
          "provider": "Google",
          "voice_id": "en-US-Wavenet-H"
        },
        "en_US_Wavenet-I": {
          "languages": [
            "en"
          ],
          "name": "en-US-Wavenet-I",
          "provider": "Google",
          "voice_id": "en-US-Wavenet-I"
        },
        "en_US_Wavenet-J": {
          "languages": [
            "en"
          ],
          "name": "en-US-Wavenet-J",
          "provider": "Google",
          "voice_id": "en-US-Wavenet-J"
        },
        "en_US_Wavenet_A": {
          "languages": [
            "en"
          ],
          "name": "en-US-Wavenet-A",
          "provider": "Google",
          "voice_id": "en-US-Wavenet-A"
        },
        "en_US_Wavenet_B": {
          "languages": [
            "en"
          ],
          "name": "en-US-Wavenet-B",
          "provider": "Google",
          "voice_id": "en-US-Wavenet-B"
        },
        "en_US_Wavenet_C": {
          "languages": [
            "en"
          ],
          "name": "en-US-Wavenet-C",
          "provider": "Google",
          "voice_id": "en-US-Wavenet-C"
        },
        "en_US_Wavenet_D": {
          "languages": [
            "en"
          ],
          "name": "en-US-Wavenet-D",
          "provider": "Google",
          "voice_id": "en-US-Wavenet-D"
        },
        "en_US_Wavenet_E": {
          "languages": [
            "en"
          ],
          "name": "en-US-Wavenet-E",
          "provider": "Google",
          "voice_id": "en-US-Wavenet-E"
        },
        "en_US_Wavenet_F": {
          "languages": [
            "en"
          ],
          "name": "en-US-Wavenet-F",
          "provider": "Google",
          "voice_id": "en-US-Wavenet-F"
        },
        "vi_VN_Neural2_A": {
          "languages": [
            "vi"
          ],
          "name": "vi-VN-Neural2-A",
          "provider": "Google",
          "voice_id": "vi-VN-Neural2-A"
        },
        "vi_VN_Neural2_D": {
          "languages": [
            "vi"
          ],
          "name": "vi-VN-Neural2-D",
          "provider": "Google",
          "voice_id": "vi-VN-Neural2-D"
        },
        "vi_VN_Standard_A": {
          "languages": [
            "vi"
          ],
          "name": "vi-VN-Standard-A",
          "provider": "Google",
          "voice_id": "vi-VN-Standard-A"
        },
        "vi_VN_Standard_B": {
          "languages": [
            "vi"
          ],
          "name": "vi-VN-Standard-B",
          "provider": "Google",
          "voice_id": "vi-VN-Standard-B"
        },
        "vi_VN_Standard_C": {
          "languages": [
            "vi"
          ],
          "name": "vi-VN-Standard-C",
          "provider": "Google",
          "voice_id": "vi-VN-Standard-C"
        },
        "vi_VN_Standard_D": {
          "languages": [
            "vi"
          ],
          "name": "vi-VN-Standard-D",
          "provider": "Google",
          "voice_id": "vi-VN-Standard-D"
        },
        "vi_VN_Wavenet_A": {
          "languages": [
            "vi"
          ],
          "name": "vi-VN-Wavenet-A",
          "provider": "Google",
          "voice_id": "vi-VN-Wavenet-A"
        },
        "vi_VN_Wavenet_B": {
          "languages": [
            "vi"
          ],
          "name": "vi-VN-Wavenet-B",
          "provider": "Google",
          "voice_id": "vi-VN-Wavenet-B"
        },
        "vi_VN_Wavenet_C": {
          "languages": [
            "vi"
          ],
          "name": "vi-VN-Wavenet-C",
          "provider": "Google",
          "voice_id": "vi-VN-Wavenet-C"
        },
        "vi_VN_Wavenet_D": {
          "languages": [
            "vi"
          ],
          "name": "vi-VN-Wavenet-D",
          "provider": "Google",
          "voice_id": "vi-VN-Wavenet-D"
        }
      }
    },
    "background_music": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Background music. If not provided, our AI will choose the most suitable background music based on the brief and the transcript.",
      "title": "Background Music"
    },
    "media_type": {
      "anyOf": [
        {
          "enum": [
            "moving_ai_images",
            "stock_videos"
          ],
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Media type. If not provided, our AI will choose the most suitable media type based on the brief and the transcript.",
      "title": "Media Type"
    },
    "ai_images_generation_preset": {
      "anyOf": [
        {
          "$ref": "#/$defs/ImageGenPresets"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "AI images generation preset. If not provided, our AI will choose the most suitable preset based on the brief and the transcript."
    }
  },
  "title": "CreateVideoConfigNodeInput",
  "type": "object"
}
```

</details>

## Output Parameters

| Name             | Type   | Description                                    |
| ---------------- | ------ | ---------------------------------------------- |
| video\_config    | string | Configuration details for the generated video  |
| video\_gen\_info | string | Information about the video generation process |

<details>

<summary>View JSON Schema</summary>

```json
{
  "description": "Create video config node output.",
  "properties": {
    "video_config": {
      "title": "Video Config",
      "type": "string"
    },
    "video_gen_info": {
      "title": "Video Gen Info",
      "type": "string"
    }
  },
  "required": [
    "video_config",
    "video_gen_info"
  ],
  "title": "CreateVideoConfigNodeOutput",
  "type": "object"
}
```

</details>

## How It Works

This node creates complete videos from text descriptions or briefs using PixelML's AI video generation platform. You provide either a brief topic description or a full transcript, and the AI automatically generates a script (if needed), selects or creates relevant visual assets (AI-generated images or stock videos), adds voiceover narration, incorporates background music, and combines everything into a polished video ready for distribution.

## Usage Examples

### Example 1: Generate Video from Brief Topic

**Input:**

```
brief: "Create an educational video explaining the benefits of renewable energy and how solar panels work"
media_type: "moving_ai_images"
ai_images_generation_preset: "cinematic"
```

**Output:**

```
video_config: "{\"duration\": 45, \"resolution\": \"1920x1080\", \"format\": \"mp4\"}"
video_gen_info: "{\"transcript_generated\": true, \"images_count\": 8, \"voice\": \"en_US_Neural2_D\", \"music\": \"inspiring_corporate\"}"
```

### Example 2: Create Video with Custom Transcript and Voice

**Input:**

```
transcript: "Welcome to our product demo. Today I'll show you three amazing features that will transform your workflow. First, our AI-powered automation saves you hours every day."
voice_over_language: "Joanna"
media_type: "stock_videos"
```

**Output:**

```
video_config: "{\"duration\": 32, \"resolution\": \"1920x1080\", \"format\": \"mp4\"}"
video_gen_info: "{\"transcript_generated\": false, \"videos_count\": 6, \"voice\": \"Joanna\", \"music\": \"tech_upbeat\"}"
```

### Example 3: Generate Artistic Video with Custom Images

**Input:**

```
brief: "A journey through the four seasons showcasing nature's beauty"
images: ["https://example.com/spring.jpg", "https://example.com/summer.jpg", "https://example.com/autumn.jpg", "https://example.com/winter.jpg"]
ai_images_generation_preset: "photographic"
voice_over_language: "Emma_Neural"
```

**Output:**

```
video_config: "{\"duration\": 28, \"resolution\": \"1920x1080\", \"format\": \"mp4\"}"
video_gen_info: "{\"transcript_generated\": true, \"custom_images\": 4, \"voice\": \"Emma_Neural\", \"music\": \"ambient_nature\"}"
```

## Common Use Cases

* **Marketing Videos**: Create promotional videos for products, services, or brand campaigns automatically from brief descriptions
* **Educational Content**: Generate tutorial and explainer videos for e-learning platforms and training programs
* **Social Media Content**: Produce engaging short-form videos for Instagram, TikTok, YouTube Shorts, and other social platforms
* **News Summaries**: Transform written news articles into video format for better engagement
* **Product Demonstrations**: Create product showcase videos from feature descriptions and benefits
* **Content Repurposing**: Convert blog posts, articles, or written content into video format for wider reach
* **Automated Video Series**: Generate consistent video content at scale for regular publishing schedules

## Error Handling

| Error Type              | Cause                                            | Solution                                                                          |
| ----------------------- | ------------------------------------------------ | --------------------------------------------------------------------------------- |
| Missing Input           | Neither brief nor transcript was provided        | Provide either a brief description or a complete transcript for the video         |
| Invalid Connection      | PixelML connection is not configured or expired  | Verify and update your PixelML connection credentials in the connection settings  |
| Invalid Image URLs      | One or more provided image URLs are inaccessible | Ensure all image URLs are publicly accessible and properly formatted              |
| Invalid Voice Selection | Selected voice is not supported                  | Choose a valid voice from the TextToSpeechVoices enum options                     |
| Quota Exceeded          | PixelML account quota has been exceeded          | Upgrade your PixelML plan or wait for quota reset                                 |
| Generation Timeout      | Video generation took too long and timed out     | Simplify the brief, reduce the number of custom images, or retry the request      |
| Invalid Preset          | AI image generation preset is not recognized     | Select a valid preset from the ImageGenPresets enum or omit to use auto-selection |

## Notes

* **Brief vs Transcript**: Provide a brief for AI to generate the full script, or provide a transcript for exact control over the narration content.
* **AI Automation**: When optional parameters are omitted, the AI intelligently selects voices, music, and visual styles based on your content.
* **Media Type Selection**: Choose 'moving\_ai\_images' for stylized, AI-generated visuals or 'stock\_videos' for realistic footage.
* **Image Presets**: The ai\_images\_generation\_preset dramatically affects the visual style. Test different presets to match your brand aesthetic.
* **Processing Time**: Video generation can take several minutes depending on length and complexity. Plan workflows accordingly.
* **Voice Consistency**: Use the same voice across a video series for brand consistency and better viewer recognition.
* **Custom Images**: Providing custom images gives you precise visual control while still benefiting from automated composition and effects.
* **Output Usage**: The video\_config and video\_gen\_info outputs can be used to track generation details and pass to subsequent video processing nodes.
