GoogleInteractiveMediaAds Framework Reference
Stay organized with collections
Save and categorize content based on your preferences.
IMAAdPodInfo
@interface IMAAdPodInfo : NSObject
Simple data object containing podding metadata.
-
Total number of ads in the pod this ad belongs to. Will be 1 for standalone ads.
Declaration
Swift
var totalAds: Int { get }
Objective-C
@property (nonatomic, readonly) NSInteger totalAds;
-
The position of this ad within an ad pod. Will be 1 for standalone ads.
Declaration
Swift
var adPosition: Int { get }
Objective-C
@property (nonatomic, readonly) NSInteger adPosition;
-
Specifies whether the ad is a bumper. Bumpers are short videos used to open
and close ad breaks.
Declaration
Swift
var isBumper: Bool { get }
Objective-C
@property (nonatomic, readonly) BOOL isBumper;
-
Client side: Returns the index of the ad pod. For a preroll pod, returns 0.
For midrolls, returns 1, 2,…, N. For a postroll pod, returns -1. Defaults
to 0 if this ad is not part of a pod, or this pod is not part of a playlist.
DAI live stream: Returns the index of the ad pod. For a preroll pod, returns
- For midrolls, returns the break ID. Returns -2 if pod index cannot be
determined (internal error).
DAI VOD: Returns the index of the ad pod. For a preroll pod, returns 0. For
midrolls, returns 1, 2,…,N. For a postroll pod, returns N+1…N+X.
Defaults to 0 if this ad is not part of a pod, or this pod is not part of a
playlist.
Declaration
Swift
var podIndex: Int { get }
Objective-C
@property (nonatomic, readonly) NSInteger podIndex;
-
The position of the pod in the content in seconds. Pre-roll returns 0,
post-roll returns -1 and mid-rolls return the scheduled time of the pod.
Declaration
Swift
var timeOffset: TimeInterval { get }
Objective-C
@property (nonatomic, readonly) NSTimeInterval timeOffset;
-
The maximum duration of the pod in seconds. For unknown duration, -1 is returned.
Declaration
Swift
var maxDuration: TimeInterval { get }
Objective-C
@property (nonatomic, readonly) NSTimeInterval maxDuration;
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-08-20 UTC.
[null,null,["Last updated 2025-08-20 UTC."],[[["\u003cp\u003e\u003ccode\u003eIMAAdPodInfo\u003c/code\u003e is a simple data object providing metadata about ad pods, such as total ads, ad position within the pod, and whether an ad is a bumper.\u003c/p\u003e\n"],["\u003cp\u003eIt includes information about the pod's position in the content stream, including pod index and time offset in seconds.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eIMAAdPodInfo\u003c/code\u003e indicates if an ad is a bumper, which are short videos used to open and close ad breaks.\u003c/p\u003e\n"],["\u003cp\u003eThe object also provides the maximum duration of the pod, returning -1 for unknown durations.\u003c/p\u003e\n"],["\u003cp\u003eDevelopers can access properties like \u003ccode\u003etotalAds\u003c/code\u003e, \u003ccode\u003eadPosition\u003c/code\u003e, \u003ccode\u003eisBumper\u003c/code\u003e, \u003ccode\u003epodIndex\u003c/code\u003e, \u003ccode\u003etimeOffset\u003c/code\u003e, and \u003ccode\u003emaxDuration\u003c/code\u003e to get insights into the ad pod structure and timing.\u003c/p\u003e\n"]]],["The `IMAAdPodInfo` object provides metadata about an ad pod. Key information includes: `totalAds` (number of ads in the pod), `adPosition` (the ad's position within the pod), and `isBumper` (whether the ad is a bumper). `podIndex` indicates the pod's position in a playlist (pre-roll, mid-roll, or post-roll) and `timeOffset` denotes the pod's scheduled time. `maxDuration` specifies the pod's maximum duration in seconds.\n"],null,["# GoogleInteractiveMediaAds Framework Reference\n\nIMAAdPodInfo\n============\n\n @interface IMAAdPodInfo : NSObject\n\nSimple data object containing podding metadata.\n- `\n ``\n ``\n `\n\n ### [totalAds](#/c:objc(cs)IMAAdPodInfo(py)totalAds)\n\n `\n ` \n Total number of ads in the pod this ad belongs to. Will be 1 for standalone ads. \n\n #### Declaration\n\n Swift \n\n var totalAds: Int { get }\n\n Objective-C \n\n @property (nonatomic, readonly) NSInteger totalAds;\n\n- `\n ``\n ``\n `\n\n ### [adPosition](#/c:objc(cs)IMAAdPodInfo(py)adPosition)\n\n `\n ` \n The position of this ad within an ad pod. Will be 1 for standalone ads. \n\n #### Declaration\n\n Swift \n\n var adPosition: Int { get }\n\n Objective-C \n\n @property (nonatomic, readonly) NSInteger adPosition;\n\n- `\n ``\n ``\n `\n\n ### [isBumper](#/c:objc(cs)IMAAdPodInfo(py)isBumper)\n\n `\n ` \n Specifies whether the ad is a bumper. Bumpers are short videos used to open\n and close ad breaks. \n\n #### Declaration\n\n Swift \n\n var isBumper: Bool { get }\n\n Objective-C \n\n @property (nonatomic, readonly) BOOL isBumper;\n\n- `\n ``\n ``\n `\n\n ### [podIndex](#/c:objc(cs)IMAAdPodInfo(py)podIndex)\n\n `\n ` \n Client side: Returns the index of the ad pod. For a preroll pod, returns 0.\n For midrolls, returns 1, 2,..., N. For a postroll pod, returns -1. Defaults\n to 0 if this ad is not part of a pod, or this pod is not part of a playlist.\n DAI live stream: Returns the index of the ad pod. For a preroll pod, returns\n 1. For midrolls, returns the break ID. Returns -2 if pod index cannot be determined (internal error). DAI VOD: Returns the index of the ad pod. For a preroll pod, returns 0. For midrolls, returns 1, 2,...,N. For a postroll pod, returns N+1...N+X. Defaults to 0 if this ad is not part of a pod, or this pod is not part of a playlist. \n\n #### Declaration\n\n Swift \n\n var podIndex: Int { get }\n\n Objective-C \n\n @property (nonatomic, readonly) NSInteger podIndex;\n\n- `\n ``\n ``\n `\n\n ### [timeOffset](#/c:objc(cs)IMAAdPodInfo(py)timeOffset)\n\n `\n ` \n The position of the pod in the content in seconds. Pre-roll returns 0,\n post-roll returns -1 and mid-rolls return the scheduled time of the pod. \n\n #### Declaration\n\n Swift \n\n var timeOffset: TimeInterval { get }\n\n Objective-C \n\n @property (nonatomic, readonly) NSTimeInterval timeOffset;\n\n- `\n ``\n ``\n `\n\n ### [maxDuration](#/c:objc(cs)IMAAdPodInfo(py)maxDuration)\n\n `\n ` \n The maximum duration of the pod in seconds. For unknown duration, -1 is returned. \n\n #### Declaration\n\n Swift \n\n var maxDuration: TimeInterval { get }\n\n Objective-C \n\n @property (nonatomic, readonly) NSTimeInterval maxDuration;"]]