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

# Gemini Omni Extend

> Extend a public source video with optional image references.

`gemini-omni-extend` continues motion from one public source video. Send the video through the singular `video_url` field. You can also supply up to five optional reference images through `image_urls`.

| Property | Value                                                 |
| -------- | ----------------------------------------------------- |
| Model ID | `gemini-omni-extend`                                  |
| Input    | Prompt + one source video + up to 5 reference images  |
| Duration | Determined by the source video; do not send `seconds` |
| Output   | 720p or 1080p, native audio                           |
| Price    | \$0.25 per request (25 credits)                       |

<ParamField body="model" type="string" required>
  Set to `gemini-omni-extend`.
</ParamField>

<ParamField body="prompt" type="string" required>
  Describe how movement, camera direction, and audio should continue.
</ParamField>

<ParamField body="size" type="string" default="1280x720">
  Use `1280x720` or `1920x1080` for 16:9 output. Use `720x1280` or `1080x1920`
  for 9:16 output. Other sizes are not supported.
</ParamField>

<ParamField body="video_url" type="string" required>
  One publicly reachable `http` or `https` source-video URL. Send a string, not
  an array.
</ParamField>

<ParamField body="image_urls" type="string[]">
  Up to five optional, publicly reachable `http` or `https` reference-image
  URLs. Each reference image must be no larger than 5 MiB.
</ParamField>

## Request

```bash theme={null}
curl https://api.freemodel.app/v1/videos \
  -H "Authorization: Bearer $FREEMODEL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gemini-omni-extend",
    "prompt": "Continue the camera move through the doorway without a cut",
    "size": "1280x720",
    "video_url": "https://example.com/source-video.mp4",
    "image_urls": ["https://example.com/character-reference.jpg"]
  }'
```

The response returns a queued task `id`. Follow the [Video API workflow](/api-reference/video-generation) to poll and download.

<Note>
  Do not send `seconds` with this model. The extension contract derives the
  output duration from the source video.
</Note>
