# `OpenRtbEcto.V2.BidRequest.Video`
[🔗](https://github.com/AppMonet/open_rtb_ecto/blob/v1.4.6/lib/open_rtb_ecto/v2/bid_request/video.ex#L1)

This object represents an in-stream video impression. Many of the fields are non-essential for
minimally viable transactions, but are included to offer fine control when needed. Video in
OpenRTB generally assumes compliance with the VAST standard. As such, the notion of companion ads
is supported by optionally including an array of Banner objects (refer to the Banner object in
Section 3.2.6) that define these companion ads.

The presence of a Video as a subordinate of the Imp object indicates that this impression is
offered as a video type impression. At the publisher’s discretion, that same impression may also
be offered as banner, audio, and/or native by also including as Imp subordinates objects of those
types. However, any given bid for the impression must conform to one of the offered types.

# `t`

```elixir
@type t() :: %OpenRtbEcto.V2.BidRequest.Video{
  api: term(),
  battr: term(),
  boxingallowed: term(),
  companionad: term(),
  companiontype: term(),
  delivery: term(),
  ext: term(),
  h: term(),
  id: term(),
  linearity: term(),
  maxbitrate: term(),
  maxduration: term(),
  maxextended: term(),
  maxseq: term(),
  mimes: term(),
  minbitrate: term(),
  mincpmpersec: term(),
  minduration: term(),
  placement: term(),
  playbackend: term(),
  playbackmethod: term(),
  plcmt: term(),
  poddur: term(),
  podid: term(),
  podseq: term(),
  pos: term(),
  protocol: term(),
  protocols: term(),
  rqddurs: term(),
  sequence: term(),
  skip: term(),
  skipafter: term(),
  skipmin: term(),
  slotinpod: term(),
  startdelay: term(),
  w: term()
}
```

# `changeset`

---

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