If specified, the SDK will play the media with MIME type on the list.
List of strings specifying the MIME types. When empty, the SDK will
use its default list of MIME types supported on iOS.
Example: @[ @“video/mp4”, @“application/x-mpegURL” ]
The property is an empty array by default.
Maximum recommended bitrate. The value is in kbit/s.
SDK will pick media with bitrate below the specified max, or the closest
bitrate if there is no media with smaller bitrate found.
Default value, |kIMAAutodetectBitrate|, means the bitrate will be selected
by the SDK, using the currently detected network speed (cellular or Wi-Fi).
Timeout (in seconds) when loading a video ad media file. If loading takes
longer than this timeout, the ad playback is canceled and the next ad in the
pod plays, if available. Use -1 for the default of 8 seconds.
For VMAP and ad rules playlists, only play ad breaks scheduled after this time (in seconds).
This setting is strictly after the specified time. For example, setting playAdsAfterTime to
15 will ignore an ad break scheduled to play at 15s.
Specifies the list of UI elements that should be visible.
This property may be ignored for AdSense/AdX ads. For valid values, see
IMAUiElementType. This field
is ignored on tvOS, where UI elements are unavailable.
Specifies the optional UIViewController that will be used to open links in-app.
When nil, tapping the video ad “Learn More” button or companion ads
will result in opening Safari browser. Setting this allows the SDK to open links in-app. This
field is ignored on tvOS, where Safari is not available.
The IMALinkOpenerDelegate to be notified when a link is opened/closed.
Web links are unavailable on tvOS, but this delegate will be used to notify for deep links.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-20 UTC."],[[["\u003cp\u003e\u003ccode\u003eIMAAdsRenderingSettings\u003c/code\u003e allows publishers to customize how ads are displayed within their content.\u003c/p\u003e\n"],["\u003cp\u003ePublishers can specify preferred MIME types and bitrate for ad media playback.\u003c/p\u003e\n"],["\u003cp\u003eTimeouts, preloading behavior, and the display of UI elements during ad playback are configurable.\u003c/p\u003e\n"],["\u003cp\u003eIt is possible to customize ad break scheduling and link opening actions.\u003c/p\u003e\n"],["\u003cp\u003eThe settings provide control over the user experience and ad behavior, ensuring smoother integration.\u003c/p\u003e\n"]]],[],null,["# GoogleInteractiveMediaAds Framework Reference\n\nIMAAdsRenderingSettings\n=======================\n\n @interface IMAAdsRenderingSettings : NSObject\n\nSet of properties that influence how ads are rendered.\n- `\n ``\n ``\n `\n\n ### [mimeTypes](#/c:objc(cs)IMAAdsRenderingSettings(py)mimeTypes)\n\n `\n ` \n If specified, the SDK will play the media with MIME type on the list.\n List of strings specifying the MIME types. When empty, the SDK will\n use its default list of MIME types supported on iOS.\n Example: @\\[ @\"video/mp4\", @\"application/x-mpegURL\" \\]\n The property is an empty array by default. \n\n #### Declaration\n\n Swift \n\n var mimeTypes: [String]? { get set }\n\n Objective-C \n\n @property (nonatomic, copy, nullable) NSArray\u003cNSString *\u003e *mimeTypes;\n\n- `\n ``\n ``\n `\n\n ### [bitrate](#/c:objc(cs)IMAAdsRenderingSettings(py)bitrate)\n\n `\n ` \n Maximum recommended bitrate. The value is in kbit/s.\n SDK will pick media with bitrate below the specified max, or the closest\n bitrate if there is no media with smaller bitrate found.\n Default value, \\|kIMAAutodetectBitrate\\|, means the bitrate will be selected\n by the SDK, using the currently detected network speed (cellular or Wi-Fi). \n\n #### Declaration\n\n Swift \n\n var bitrate: Int { get set }\n\n Objective-C \n\n @property (nonatomic) NSInteger bitrate;\n\n- `\n ``\n ``\n `\n\n ### [loadVideoTimeout](#/c:objc(cs)IMAAdsRenderingSettings(py)loadVideoTimeout)\n\n `\n ` \n Timeout (in seconds) when loading a video ad media file. If loading takes\n longer than this timeout, the ad playback is canceled and the next ad in the\n pod plays, if available. Use -1 for the default of 8 seconds. \n\n #### Declaration\n\n Swift \n\n var loadVideoTimeout: TimeInterval { get set }\n\n Objective-C \n\n @property (nonatomic) NSTimeInterval loadVideoTimeout;\n\n- `\n ``\n ``\n `\n\n ### [playAdsAfterTime](#/c:objc(cs)IMAAdsRenderingSettings(py)playAdsAfterTime)\n\n `\n ` \n For VMAP and ad rules playlists, only play ad breaks scheduled after this time (in seconds).\n This setting is strictly after the specified time. For example, setting playAdsAfterTime to\n 15 will ignore an ad break scheduled to play at 15s. \n\n #### Declaration\n\n Swift \n\n var playAdsAfterTime: TimeInterval { get set }\n\n Objective-C \n\n @property (nonatomic) NSTimeInterval playAdsAfterTime;\n\n- `\n ``\n ``\n `\n\n ### [uiElements](#/c:objc(cs)IMAAdsRenderingSettings(py)uiElements)\n\n `\n ` \n Specifies the list of UI elements that should be visible.\n This property may be ignored for AdSense/AdX ads. For valid values, see\n [IMAUiElementType](../Enums/IMAUiElementType.html). This field\n is ignored on tvOS, where UI elements are unavailable. \n\n #### Declaration\n\n Swift \n\n var uiElements: [NSNumber]? { get set }\n\n Objective-C \n\n @property (nonatomic, copy, nullable) NSArray\u003cNSNumber *\u003e *uiElements;\n\n- `\n ``\n ``\n `\n\n ### [enablePreloading](#/c:objc(cs)IMAAdsRenderingSettings(py)enablePreloading)\n\n `\n ` \n Whether or not the SDK will preload ad media. Default is YES. \n\n #### Declaration\n\n Swift \n\n var enablePreloading: Bool { get set }\n\n Objective-C \n\n @property (nonatomic) BOOL enablePreloading;\n\n- `\n ``\n ``\n `\n\n ### [linkOpenerPresentingController](#/c:objc(cs)IMAAdsRenderingSettings(py)linkOpenerPresentingController)\n\n `\n ` \n Specifies the optional UIViewController that will be used to open links in-app.\n When nil, tapping the video ad \"Learn More\" button or companion ads\n will result in opening Safari browser. Setting this allows the SDK to open links in-app. This\n field is ignored on tvOS, where Safari is not available. \n\n #### Declaration\n\n Swift \n\n weak var linkOpenerPresentingController: UIViewController? { get set }\n\n Objective-C \n\n @property (nonatomic, weak, nullable) UIViewController *linkOpenerPresentingController;\n\n- `\n ``\n ``\n `\n\n ### [linkOpenerDelegate](#/c:objc(cs)IMAAdsRenderingSettings(py)linkOpenerDelegate)\n\n `\n ` \n The IMALinkOpenerDelegate to be notified when a link is opened/closed.\n Web links are unavailable on tvOS, but this delegate will be used to notify for deep links. \n\n #### Declaration\n\n Swift \n\n weak var linkOpenerDelegate: (any ../Protocols/IMALinkOpenerDelegate.html)? { get set }\n\n Objective-C \n\n @property (nonatomic, weak, nullable) id\u003c../Protocols/IMALinkOpenerDelegate.html\u003e linkOpenerDelegate;"]]