---
metadata:
  - name: generator
    content: Diplodoc Platform v5.57.3
alternate:
  - https://boost.yandex.com/doc/en/ad-monetization/dev/android7/instream.md
  - https://boost.yandex.com/doc/ru/ad-monetization/dev/android7/instream.md
  - href: en/ad-monetization/dev/android7/instream.md
    type: text/markdown
    title: Markdown version
  - href: llms.txt
    type: text/markdown
    title: llms.txt
---
> **Documentation Index:** Fetch the complete configuration index at https://boost.yandex.com/doc/en/llms.txt

<!--
Используется в Boost: boost/en/ad-monetization/dev/android
-->

# InStream ads

<!-- source: en/ad-monetization/dev/_includes7/instream-src.md -->
InStream is an ad format that lets you monetize your app by serving ads while video content is playing. An InStream ad consists of a scenario with multiple video blocks.

The type of video unit in an InStream scenario determines how the video ad should be played relative to the main video content.
<!-- endsource: en/ad-monetization/dev/_includes7/instream-src.md -->



## About InStream

<!-- source: en/ad-monetization/dev/_includes7/instream-src.md -->
To set up an InStream scenario, create a [video resource](https://yandex.com/support2/partner/en/video/resource#create-resource) in the Boost interface. Once created, the video resource is assigned a unique identifier (Page ID). This ID should be used in the Mobile Ads SDK.

To increase ad revenue, you can set up playing multiple ads within a single ad placement: an AdPod. You can set up the AdPod for an ad placement in the Boost interface.

Types of video units supported by the Mobile Ads SDK:
- Pre-roll: A video ad is played before the main content.
- Mid-roll: A video ad is played at a certain time within the main content.
- Post-roll: A video ad is played after the main content.
- Pause-roll: A video ad is played when the user clicks the pause button.
- In-roll: A video ad is played anywhere in the video when a certain point is reached.
<!-- endsource: en/ad-monetization/dev/_includes7/instream-src.md -->



## API for working with InStream ads

There are multiple APIs for working with InStream ads:

### ExoPlayer AdsLoader API

An API for [basic integration](https://boost.yandex.com/doc/en/ad-monetization/dev/android7/instream-based.md) of InStream ads into ExoPlayer. It lets you quickly integrate the display of InStream ads. The API supports Pre-roll, Mid-roll, and Post-roll ad breaks.

{% note info "Limits" %}

1. A specific version of ExoPlayer is required.
2. In-roll and Pause-roll video ads aren't supported.

{% endnote %}

### InStream API

An API for [advanced integration](https://boost.yandex.com/doc/en/ad-monetization/dev/android7/instream-advanced.md) of InStream ads. It lets you support playing any type of ad break and use your own implementation of a player. InStream ads consist of video ads that are played automatically and manually.

Use the InstreamAdBinder API to automatically play Pre-roll, Mid-roll, and Post-roll ad breaks. To play In-roll and Pause-roll ad breaks manually, use the In-roll API and Pause-roll API, respectively.

{% note info %}

You can also use the InstreamAdBinder API, In-roll API, and Pause-roll API concurrently if you:
1. Use different instances of the ad player.
2. Don't start the Pause-roll and In-roll APIs for playing ads if the main video was paused using the InStreamAdBinder API.

{% endnote %}

