# `Jido.Chat.Content.Video`
[🔗](https://github.com/agentjido/jido_chat/blob/v1.0.0/lib/jido/chat/content/video.ex#L1)

Video content block for messages.

Represents a video attachment.

## Fields

- `url` - URL to the video file (optional if data is provided)
- `data` - Base64-encoded video data (optional if url is provided)
- `media_type` - MIME type (e.g., "video/mp4")
- `duration` - Duration in seconds (optional)
- `width` - Video width in pixels (optional)
- `height` - Video height in pixels (optional)
- `thumbnail_url` - URL to thumbnail image (optional)

## Examples

    Video.new("https://example.com/clip.mp4")
    Video.new("https://example.com/clip.mp4", media_type: "video/mp4", duration: 30)

# `t`

```elixir
@type t() :: %Jido.Chat.Content.Video{
  data: nil | nil | binary(),
  duration: nil | nil | integer(),
  height: nil | nil | integer(),
  media_type: nil | nil | binary(),
  thumbnail_url: nil | nil | binary(),
  type: :video,
  url: nil | nil | binary(),
  width: nil | nil | integer()
}
```

# `from_base64`

Creates a new video content block from base64-encoded data.

# `new`

Creates a new video content block from a URL.

## Options

- `:media_type` - MIME type of the video
- `:duration` - Duration in seconds
- `:width` - Video width in pixels
- `:height` - Video height in pixels
- `:thumbnail_url` - URL to thumbnail image

# `schema`

Returns the Zoi schema for Video content

---

*Consult [api-reference.md](api-reference.md) for complete listing*
