NimbusVideo

struct NimbusVideo
extension NimbusVideo : Decodable, Encodable, Equatable, NimbusRequestExtensible

This object represents an in-stream video impression. Many of the properties 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 NimbusImpressionBanner objects that define these companion ads. The presence of a NimbusImpressionVideo as a subordinate of the NimbusImpression 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 NimbusImpression subordinates objects of that type. However, any given bid for the impression must conform to one of the offered types. OpenRTB Section 3.2.7

  • Minimum bid for this video impression expressed in CPM. This value should be equal to or higher than the value set on NimbusImpression.bidFloor

    Declaration

    Swift

    var bidFloor: Float?
  • Banner objects if companion ads are available

    Declaration

    Swift

    var companionAds: [NimbusBanner]?
  • Supported content MIME types (e.g., “video/3gpp”, “video/mp4”).

    Declaration

    Swift

    var mimes: Set<String>?
  • Minimum video ad duration in seconds

    Declaration

    Swift

    var minDuration: Int?
  • Maximum video ad duration in seconds

    Declaration

    Swift

    var maxDuration: Int?
  • Array of supported video protocols. At least one supported protocol must be specified

    Declaration

    Swift

    var protocols: Set<NimbusVideoProtocol>?
  • Width of the video player in points

    Declaration

    Swift

    var width: Int
  • Height of the video player in points

    Declaration

    Swift

    var height: Int
  • Indicates the start delay in seconds for pre-roll, mid-roll, or post-roll ad placements.

    0 Mid roll where the value indicates the start delay, 0 pre roll, -1 generic mid roll, -2 generic post roll

    Declaration

    Swift

    var startDelay: Int?
  • Placement type for this video impression

    Declaration

    Swift

    var placementType: NimbusVideoPlacementType?
  • Indicates if the impression must be linear, nonlinear, etc. If none specified, assume all are allowed

    Declaration

    Swift

    var linearity: NimbusVideoLinearity?
  • Playback methods that may be in use. If none are specified, any method may be used

    Declaration

    Swift

    var playbackMethods: Set<NimbusVideoPlaybackMethod>?
  • Indicates if the player will allow the video to be skipped.

    Declaration

    Swift

    var canSkip: Bool?
  • Supported delivery methods (e.g., streaming, progressive). If none specified, assume all are supported.

    Declaration

    Swift

    var deliveryMethods: Set<NimbusContentDeliveryMethod>?
  • Ad position on screen

    Declaration

    Swift

    var position: NimbusPosition?
  • Supported API frameworks for this impression

    Declaration

    Swift

    var supportedApis: Set<NimbusApi>?
  • Minimum bit rate in Kbps

    Declaration

    Swift

    var minBitrate: Int?
  • Maximum bit rate in Kbps

    Declaration

    Swift

    var maxBitrate: Int?
  • Placeholder for exchange-specific extensions to OpenRTB

    Declaration

    Swift

    var extensions: [String : NimbusCodable]?
  • Initializes a NimbusImpressionVideo object

    • bidFloor: Minimum bid for this video impression expressed in CPM. This value should be equal to or higher than the value set on NimbusImpression.bidFloor
    • companionAds: Banner objects if companion ads are available
    • mimes: Supported content MIME types (e.g., “video/3gpp”, “video/mp4”).
    • minDuration: Minimum video ad duration in seconds
    • maxDuration: Maximum video ad duration in seconds
    • protocols: Array of supported video protocols. At least one supported protocol must be specified
    • width: Width of the video player in points
    • height: Height of the video player in points
    • startDelay: Indicates the start delay in seconds for pre-roll, mid-roll, or post-roll ad placements. >0 Mid roll where the value indicates the start delay, 0 pre roll, -1 generic mid roll, -2 generic post roll
    • placementType: Placement type for this video impression
    • linearity: Indicates if the impression must be linear, nonlinear, etc. If none specified, assume all are allowed
    • playbackMethods: Playback methods that may be in use. If none are specified, any method may be used
    • canSkip: Indicates if the player will allow the video to be skipped.
    • deliveryMethods: Supported delivery methods (e.g., streaming, progressive). If none specified, assume all are supported.
    • position: Ad position on screen
    • supportedApis: Supported API frameworks for this impression
    • minBitrate: Minimum bit rate in Kbps
    • maxBitrate: Maximum bit rate in Kbps

    Declaration

    Swift

    init(bidFloor: Float? = nil, companionAds: [NimbusBanner]? = nil, mimes: Set<String>? = nil, minDuration: Int? = nil, maxDuration: Int? = nil, protocols: Set<NimbusVideoProtocol>? = nil, width: Int, height: Int, startDelay: Int? = nil, placementType: NimbusVideoPlacementType? = nil, linearity: NimbusVideoLinearity? = nil, playbackMethods: Set<NimbusVideoPlaybackMethod>? = nil, canSkip: Bool? = nil, deliveryMethods: Set<NimbusContentDeliveryMethod>? = nil, position: NimbusPosition? = nil, supportedApis: Set<NimbusApi>? = nil, minBitrate: Int? = nil, maxBitrate: Int? = nil)
  • Check if video is for a rewarded unit

    Declaration

    Swift

    var isRewarded: Bool { get set }
  • Default configuration for a interstitial ad

    Declaration

    Swift

    static func interstitial() -> NimbusVideo
  • Undocumented

    Declaration

    Swift

    static func != (lhs: Self, rhs: Self) -> Bool