Classes

The following classes are available globally.

  • Used to provide a value that represents a price that can be used by real-time bidding (RTB) systems. Specified in Inline.Pricing in the VAST response.

    See more

    Declaration

    Objective-C

    
    @interface BMPAdPricing : NSObject <_BMPJsonEncodable>

    Swift

    class AdPricing : NSObject, _JsonEncodable
  • A string representation of a URI to any resource relating to an integrated survey. Specified in InLine.Survey in the VAST response.

    See more

    Declaration

    Objective-C

    
    @interface BMPAdSurvey : NSObject <_BMPJsonEncodable>

    Swift

    class AdSurvey : NSObject, _JsonEncodable
  • Describes the ad system that returned the ad. Specified in InLine.AdSystem in the VAST response.

    See more

    Declaration

    Objective-C

    
    @interface BMPAdSystem : NSObject <_BMPJsonEncodable>

    Swift

    class AdSystem : NSObject, _JsonEncodable
  • Defines the url and type of an ad manifest.

    See more

    Declaration

    Objective-C

    
    @interface BMPAdTag : NSObject <_BMPJsonEncodable>

    Swift

    class AdTag : NSObject, _JsonEncodable
  • Describes he advertiser as defined by the ad serving party. Specified in InLine.Advertiser in the VAST response.

    See more

    Declaration

    Objective-C

    
    @interface BMPAdvertiser : NSObject <_BMPJsonEncodable>

    Swift

    class Advertiser : NSObject, _JsonEncodable
  • IMPORTANT: Methods from BMPBitmovinCastManager need to be called from the main thread.

    Singleton providing access to GoogleCast related features. The BMPBitmovinCastManager needs to be initialized by calling BMPBitmovinCastManager#initializeCasting in the AppDelegate of the application which should support casting.

    See more

    Declaration

    Objective-C

    
    @interface BMPBitmovinCastManager : NSObject

    Swift

    class BitmovinCastManager : NSObject
  • Contains various data about the Creative. Specified in InLine.Creative or Wrapper.Creative in the VAST Response.

    See more

    Declaration

    Objective-C

    
    @interface BMPCreative : NSObject <_BMPJsonEncodable>

    Swift

    class Creative : NSObject, _JsonEncodable
  • A config object representing an HTTP request.

    See more

    Declaration

    Objective-C

    
    @interface BMPHttpRequest : NSObject <NSCopying>

    Swift

    class HttpRequest : NSObject, NSCopying
  • Represents ID3 metadata found in the stream.

    See more

    Declaration

    Objective-C

    
    @interface BMPId3Metadata : BMPMetadata

    Swift

    class Id3Metadata : Metadata
  • Undocumented

    See more

    Declaration

    Objective-C

    @interface BMPMetadata : NSObject
    @property (nonatomic, readonly, copy) NSArray<id<BMPMetadataEntry>> *entries;
    - (instancetype)init NS_UNAVAILABLE;
    + (instancetype)new NS_UNAVAILABLE;
    - (instancetype)initWithEntries:(NSArray<id<BMPMetadataEntry>> *)entries NS_DESIGNATED_INITIALIZER;
    @end

    Swift

    class Metadata : NSObject
  • Factory to create a BMPPlayer instance.

    See more

    Declaration

    Objective-C

    
    @interface BMPPlayerCoreFactory : NSObject
  • Factory to create a Player instance.

    See more

    Declaration

    Objective-C

    
    @interface BMPPlayerFactory : NSObject
  • Represents the SCTE-35 metadata from the media playlist.

    See more

    Declaration

    Objective-C

    
    @interface BMPScteMetadata : BMPMetadata

    Swift

    class ScteMetadata : Metadata
  • Undocumented

    See more

    Declaration

    Objective-C

    @interface BMPSourceOptions : NSObject <NSCopying, _BMPJsonEncodable>
    /**
     The position where the stream should be started. Number can be positive or negative depending on the used TimelineReferencePoint.
     Invalid numbers will be corrected according to the stream boundaries.
     For VOD this is applied at the time the stream is loaded, for LIVE when the playback starts.
    
     Default: NAN
     */
    @property (nonatomic) NSTimeInterval startOffset;
    /**
     Timeline reference point to calculate BMPSourceOptions.startOffset from.
    
     Default for live: BMPTimelineReferencePointEnd
     Default for VOD: BMPTimelineReferencePointStart
     */
    @property (nonatomic) BMPTimelineReferencePoint startOffsetTimelineReference;
    /**
     The identifier for the `SourceConfig` in a SharePlay session.
     This identifier is used:
     - to validate that received SharePlay commands are intended for the currently active `Source`'s `SourceConfig` when receiving them.
     - for caching the playback state within the SharePlay session
       If there is a stored playback state for the given identifier, it will be applied when a `SourceConfig` with the same identifier becomes active.
    
     @note The identifier must match for all participants in the SharePlay session.
     If no identifier is provided, the URL of the `SourceConfig` will be used.
     */
    @property (nonatomic, nullable, copy) NSString *sharePlayIdentifier;
    
    - (instancetype)initWithStartOffset:(NSTimeInterval)startOffset
      startOffsetTimelineReferencePoint:(BMPTimelineReferencePoint)startOffsetTimelineReference;
    - (instancetype)initWithStartOffset:(NSTimeInterval)startOffset
      startOffsetTimelineReferencePoint:(BMPTimelineReferencePoint)startOffsetTimelineReference
                    sharePlayIdentifier:(nullable NSString *)sharePlayIdentifier NS_DESIGNATED_INITIALIZER;
    @end

    Swift

    class SourceOptions : NSObject, NSCopying, _JsonEncodable
  • Represents a VTT thumbnail.

    See more

    Declaration

    Objective-C

    
    @interface BMPThumbnail : NSObject <_BMPJsonEncodable>

    Swift

    class Thumbnail : NSObject, _JsonEncodable
  • Describes a unique creative identifier that is maintained across systems. Specified in Creative.UniversalAdId in the VAST response.

    See more

    Declaration

    Objective-C

    
    @interface BMPUniversalAdId : NSObject <_BMPJsonEncodable>

    Swift

    class UniversalAdId : NSObject, _JsonEncodable
  • Configuration for the analytics data collection feature on the BMPPlayer.

    See more

    Declaration

    Objective-C

    
    @interface BMPAnalyticsPlayerConfig : NSObject
  • Factory to create a Player instance.

    See more

    Declaration

    Swift

    @available(iOS 14.0, tvOS 14.0, *)
    public class PlayerFactory
  • Factory to create Sources which can be loaded into a Player.

    See more

    Declaration

    Swift

    @available(iOS 14.0, tvOS 14.0, *)
    @objc(BMPSourceFactory)
    public class SourceFactory : NSObject
  • The Obj-C version of the SharePlay API. It is empty on purpose as SharePlay can only be used from Swift.

    See more

    Declaration

    Swift

    @objc(BMPSharePlayApi)
    public class SharePlayApi : NSObject
  • The Obj-C version of the player events API. It is empty on purpose as Combine-based event subscriptions can only be used from Swift.

    See more

    Declaration

    Swift

    @objc(BMPPlayerEventsApi)
    public class PlayerEventsApi : NSObject
  • The Obj-C version of the player view events API. It is empty on purpose as Combine-based event subscriptions can only be used from Swift.

    See more

    Declaration

    Swift

    @objc(BMPPlayerViewEventsApi)
    public class PlayerViewEventsApi : NSObject
  • The Obj-C version of the source events API. It is empty on purpose as Combine-based event subscriptions can only be used from Swift.

    See more

    Declaration

    Swift

    @objc(BMPSourceEventsApi)
    public class SourceEventsApi : NSObject
  • Base class for ad break related event classes.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPAdBreakEvent)
    open class AdBreakEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPAdBreakFinishedEvent)
    open class AdBreakFinishedEvent : AdBreakEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPAdBreakStartedEvent)
    open class AdBreakStartedEvent : AdBreakEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPAdClickedEvent)
    open class AdClickedEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPAdErrorEvent)
    open class AdErrorEvent : PlayerEvent
  • Base class for ad related event classes.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPAdEvent)
    open class AdEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPAdFinishedEvent)
    open class AdFinishedEvent : AdEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPAdManifestLoadEvent)
    open class AdManifestLoadEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPAdManifestLoadedEvent)
    open class AdManifestLoadedEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPAdQuartileEvent)
    @objcMembers
    open class AdQuartileEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPAdScheduledEvent)
    @objcMembers
    open class AdScheduledEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPAdSkippedEvent)
    open class AdSkippedEvent : AdEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPAdStartedEvent)
    open class AdStartedEvent : AdEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPAirPlayAvailableEvent)
    public class AirPlayAvailableEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPAirPlayChangedEvent)
    public class AirPlayChangedEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPAudioAddedEvent)
    @objcMembers
    public class AudioAddedEvent : NSObject, SourceEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPAudioChangedEvent)
    public class AudioChangedEvent : NSObject, SourceEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPAudioRemovedEvent)
    public class AudioRemovedEvent : NSObject, SourceEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPCastAvailableEvent)
    @objcMembers
    open class CastAvailableEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPCastPausedEvent)
    @objcMembers
    open class CastPausedEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPCastPlaybackFinishedEvent)
    @objcMembers
    open class CastPlaybackFinishedEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPCastPlayingEvent)
    @objcMembers
    open class CastPlayingEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPCastStartEvent)
    @objcMembers
    open class CastStartEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPCastStartedEvent)
    @objcMembers
    open class CastStartedEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPCastStoppedEvent)
    @objcMembers
    open class CastStoppedEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPCastTimeUpdatedEvent)
    @objcMembers
    open class CastTimeUpdatedEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @available(tvOS, unavailable)
    @objc(BMPCastWaitingForDeviceEvent)
    @objcMembers
    open class CastWaitingForDeviceEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPCueEnterEvent)
    open class CueEnterEvent : PlayerEvent, CueEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPCueExitEvent)
    open class CueExitEvent : PlayerEvent, CueEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPCueParsedEvent)
    open class CueParsedEvent : NSObject, CueEvent, SourceEvent
  • Provides additional data about a deficiency

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPDeficiencyData)
    public class DeficiencyData : NSObject
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPDestroyEvent)
    public class DestroyEvent : PlayerEvent
  • See SourceListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPDownloadFinishedEvent)
    @objcMembers
    public class DownloadFinishedEvent : NSObject, SourceEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPDrmDataParsedEvent)
    @objcMembers
    public class DrmDataParsedEvent : NSObject, SourceEvent
  • See SourceListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPDurationChangedEvent)
    @objcMembers
    public class DurationChangedEvent : NSObject, SourceEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPDvrWindowExceededEvent)
    @objcMembers
    open class DvrWindowExceededEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPLicenseValidatedEvent)
    @objcMembers
    open class LicenseValidatedEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPMetadataEvent)
    public class MetadataEvent : PlayerEvent
  • See SourceListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPMetadataParsedEvent)
    public class MetadataParsedEvent : NSObject, SourceEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPMutedEvent)
    public class MutedEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPOutputObscuredEvent)
    public class OutputObscuredEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPOutputUnobscuredEvent)
    public class OutputUnobscuredEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPPausedEvent)
    public class PausedEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPPlayEvent)
    @objcMembers
    public class PlayEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPPlaybackFinishedEvent)
    @objcMembers
    public class PlaybackFinishedEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPPlaybackSpeedChangedEvent)
    public class PlaybackSpeedChangedEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPPlayerActiveEvent)
    public class PlayerActiveEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPPlayerErrorEvent)
    public class PlayerErrorEvent : PlayerEvent
  • Base class for all PlayerEvent classes.

    See more

    Declaration

    Swift

    @objc(BMPPlayerEvent)
    @objcMembers
    open class PlayerEvent : NSObject, Event
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPPlayerInactiveEvent)
    public class PlayerInactiveEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @available(*, deprecated, message: "Warnings are now communicated through logs with level `.warning`. These logs are printed to the console by default. You can also access them by providing your own logger to `DebugConfig.logging.logger`\"")
    @objcMembers
    @objc(BMPPlayerWarningEvent)
    public class PlayerWarningEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPPlayingEvent)
    public class PlayingEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPPlaylistTransitionEvent)
    public class PlaylistTransitionEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPReadyEvent)
    public class ReadyEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPSeekEvent)
    public class SeekEvent : PlayerEvent
  • Class represent seeking position

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPSeekPosition)
    public class SeekPosition : NSObject
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPSeekedEvent)
    public class SeekedEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @available(iOS 15.0, tvOS 15.0, *)
    @objc(BMPSharePlayEndedEvent)
    @objcMembers
    public class SharePlayEndedEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @available(iOS 15.0, tvOS 15.0, *)
    @objc(BMPSharePlayStartedEvent)
    @objcMembers
    public class SharePlayStartedEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @available(iOS 15.0, tvOS 15.0, *)
    @objc(BMPSharePlaySuspensionEndedEvent)
    @objcMembers
    public class SharePlaySuspensionEndedEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @available(iOS 15.0, tvOS 15.0, *)
    @objc(BMPSharePlaySuspensionStartedEvent)
    @objcMembers
    public class SharePlaySuspensionStartedEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPSourceAddedEvent)
    @objcMembers
    public class SourceAddedEvent : PlayerEvent
  • See SourceListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPSourceErrorEvent)
    public class SourceErrorEvent : NSObject, SourceEvent
  • See SourceListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPSourceLoadedEvent)
    public class SourceLoadedEvent : NSObject, SourceEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPSourceRemovedEvent)
    @objcMembers
    public class SourceRemovedEvent : PlayerEvent
  • See SourceListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPSourceUnloadEvent)
    public class SourceUnloadEvent : NSObject, SourceEvent
  • See SourceListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPSourceUnloadedEvent)
    public class SourceUnloadedEvent : NSObject, SourceEvent
  • See SourceListener for more information on this event.

    See more

    Declaration

    Swift

    @available(*, deprecated, message: "Warnings are now communicated through logs with level `.warning`. These logs are printed to the console by default. You can also access them by providing your own logger to `DebugConfig.logging.logger`\"")
    @objcMembers
    @objc(BMPSourceWarningEvent)
    public class SourceWarningEvent : NSObject, SourceEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPStallEndedEvent)
    public class StallEndedEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPStallStartedEvent)
    public class StallStartedEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPSubtitleAddedEvent)
    @objcMembers
    open class SubtitleAddedEvent : NSObject, SourceEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPSubtitleChangedEvent)
    @objcMembers
    open class SubtitleChangedEvent : NSObject, SourceEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPSubtitleRemovedEvent)
    @objcMembers
    open class SubtitleRemovedEvent : NSObject, SourceEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPTimeChangedEvent)
    open class TimeChangedEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPTimeShiftEvent)
    public class TimeShiftEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPTimeShiftedEvent)
    public class TimeShiftedEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPUnmutedEvent)
    @objcMembers
    open class UnmutedEvent : PlayerEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPVideoDownloadQualityChangedEvent)
    @objcMembers
    public class VideoDownloadQualityChangedEvent : NSObject, SourceEvent
  • See SourceListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPVideoPlaybackQualityChangedEvent)
    @objcMembers
    public class VideoPlaybackQualityChangedEvent : NSObject, SourceEvent
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPVideoSizeChangedEvent)
    open class VideoSizeChangedEvent : PlayerEvent
  • See UserInterfaceListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPControlsHideEvent)
    @objcMembers
    open class ControlsHideEvent : NSObject, PlayerViewEvent
  • See UserInterfaceListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPControlsShowEvent)
    @objcMembers
    open class ControlsShowEvent : NSObject, PlayerViewEvent
  • See UserInterfaceListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPFullscreenDisabledEvent)
    public class FullscreenDisabledEvent : NSObject, PlayerViewEvent
  • See UserInterfaceListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPFullscreenEnabledEvent)
    public class FullscreenEnabledEvent : NSObject, PlayerViewEvent
  • See UserInterfaceListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPFullscreenEnterEvent)
    public class FullscreenEnterEvent : NSObject, PlayerViewEvent
  • See UserInterfaceListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPFullscreenExitEvent)
    public class FullscreenExitEvent : NSObject, PlayerViewEvent
  • See UserInterfaceListener for more information on this event.

    See more

    Declaration

    Swift

    public class PictureInPictureEnterEvent : NSObject, PlayerViewEvent
  • See UserInterfaceListener for more information on this event.

    See more

    Declaration

    Swift

    public class PictureInPictureEnteredEvent : NSObject, PlayerViewEvent
  • See UserInterfaceListener for more information on this event.

    See more

    Declaration

    Swift

    public class PictureInPictureExitEvent : NSObject, PlayerViewEvent
  • See UserInterfaceListener for more information on this event.

    See more

    Declaration

    Swift

    public class PictureInPictureExitedEvent : NSObject, PlayerViewEvent
  • See UserInterfaceListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPScalingModeChangedEvent)
    public class ScalingModeChangedEvent : NSObject, PlayerViewEvent
  • See UserInterfaceListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPTimelineMarkerEnterEvent)
    public class TimelineMarkerEnterEvent : NSObject, PlayerViewEvent
  • See UserInterfaceListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPTimelineMarkerExitEvent)
    public class TimelineMarkerExitEvent : NSObject, PlayerViewEvent
  • See SourceListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPFairplayLicenseAcquiredEvent)
    @objcMembers
    public class FairplayLicenseAcquiredEvent : NSObject, SourceEvent
  • See SourceListener for more information on this event.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPSourceLoadEvent)
    public class SourceLoadEvent : NSObject, SourceEvent
  • Represents one single log entry

    See more

    Declaration

    Swift

    @objc(BMPLogEntry)
    @objcMembers
    public final class LogEntry : NSObject
  • A class holding information for the CastWaitingForDeviceEvent.

    See more

    Declaration

    Swift

    @available(tvOS, unavailable)
    @objc(BMPCastPayload)
    @objcMembers
    public final class CastPayload : NSObject
  • The options to be used for initializing BitmovinCastManager

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPBitmovinCastManagerOptions)
    public final class BitmovinCastManagerOptions : NSObject
  • Contains config values to help debugging the SDK.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPDebugConfig)
    public final class DebugConfig : NSObject
  • This component enables configuration of logging globally in the SDK through assigning a logger.

    Logging can be configured through the assigned logger in multiple ways. By setting the logger to nil logging can be disabled. A minimum log level is also set in the assigned logger. The minimum log level is used to filter log output.

    The default value for the logger is an instance of ConsoleLogger. Instead of the ConsoleLogger, a custom logger can be assigned for receiving log entries. A custom logger would need to apply its own filtering based on level. This level-based filtering is applied by default in the ConsoleLogger.

    To configure logging, access this config via DebugConfig.logging. Refer to Logger, LogLevel, LogEntry, ConsoleLogger and DebugConfig for more details.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPLoggingConfig)
    public final class LoggingConfig : NSObject
  • Configures a new Player instance. Must not be modified after it was used to create a Player instance.

    See more

    Declaration

    Swift

    @objc(BMPPlayerConfig)
    @objcMembers
    public final class PlayerConfig : NSObject
  • Contains config values regarding the behaviour of the bitrate adaptation.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPAdaptationConfig)
    public class AdaptationConfig : NSObject
  • Represents an ad break which can be scheduled for playback.

    See more

    Declaration

    Swift

    @objc(BMPAdItem)
    @objcMembers
    public class AdItem : NSObject
  • Represents an ad source which can be assigned to an AdItem. An AdItem can have multiple AdSources as a waterfalling option.

    See more

    Declaration

    Swift

    @objc(BMPAdSource)
    @objcMembers
    public class AdSource : NSObject
    extension AdSource: NSCopying
  • Contains config values regarding the ads which should be played back by the player.

    See more

    Declaration

    Swift

    @objc(BMPAdvertisingConfig)
    @objcMembers
    public class AdvertisingConfig : NSObject
  • Configuration object for the LinearAd UI.

    In case Bitmovin Player UI is used, message placeholders such as: {remainingTime}, {adDuration} or {playedTime} are available to customize the ad messages. When using the System UI, only {remainingTime} is supported.

    Example:

    let linearAdUiConfig = LinearAdUiConfig()
    linearAdUiConfig.message = "This ad will end in {remainingTime}"
    linearAdUiConfig.untilSkippableMessage = "This ad is skippable in {remainingTime}"
    linearAdUiConfig.skippableMessage = "You can skip this ad now."
    
    // Create an `AdItem` with one `AdSource` of type `.bitmovin`
    let adItem = AdItem(
       adSources: [AdSource(tag: adTagUrl, ofType: .bitmovin)],
       // Configure the ad as a pre-roll ad
       atPosition: "pre",
       // Provide a LinearAdUiConfig instance to customize the ad UI messages
       linearAdUiConfig: linearAdUiConfig
    )
    
    See more

    Declaration

    Swift

    @objc(BMPLinearAdUiConfig)
    @objcMembers
    public class LinearAdUiConfig : NSObject
  • Contains configuration options to customize behavior for Bitmovin Advertising Module integration.

    See more

    Declaration

    Swift

    @objc(BMPBitmovinAdvertisingConfig)
    @objcMembers
    public class BitmovinAdvertisingConfig : NSObject
  • Represents a VAST macro for VastMacroValueProvider.

    See more

    Declaration

    Swift

    @objc(BMPVastMacro)
    public class VastMacro : NSObject
  • Contains configuration options for VAST macros.

    See more

    Declaration

    Swift

    @objc(BMPVastMacroConfig)
    @objcMembers
    public class VastMacroConfig : NSObject
  • Defines the IMA Ad attribution UI mode

    See more

    Declaration

    Swift

    @available(tvOS, unavailable)
    @objcMembers
    @objc(BMPImaAdAttributionUiMode)
    public class ImaAdAttributionUiMode : NSObject
  • Contains configuration options to customize behavior for Google IMA SDK.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPImaAdvertisingConfig)
    public class ImaAdvertisingConfig : NSObject
  • The ImaSettings class stores SDK wide settings.

    See more

    Declaration

    Swift

    @objc(BMPImaSettings)
    @objcMembers
    public class ImaSettings : NSObject, NSCopying
  • Player buffer config object to configure buffering behavior.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPBufferConfig)
    public class BufferConfig : NSObject
  • Configures buffer target levels for different MediaTypes.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPBufferMediaTypeConfig)
    public class BufferMediaTypeConfig : NSObject
  • Contains config values regarding the behaviour when playing live streams.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPLiveConfig)
    public final class LiveConfig : NSObject
  • Represents an HTTP request for DRM information.

    See more

    Declaration

    Swift

    @objc(BMPDrmRequest)
    @objcMembers
    public final class DrmRequest : HttpRequest
  • Represents an HTTP response.

    See more

    Declaration

    Swift

    @objc(BMPHttpResponse)
    @objcMembers
    public final class HttpResponse : NSObject
  • The network config gives the ability to influence network requests. At the moment only changing DRM and HLS Playlist requests are supported. Processing responses or influencing the retry behaviour is not supported.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPNetworkConfig)
    public class NetworkConfig : NSObject
  • Contains config values that can be used to alter the playback behaviour of the player.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPPlaybackConfig)
    public class PlaybackConfig : NSObject
  • Contains config values which can be used to alter the behaviour of the player when it comes to remote playback.

    See more

    Declaration

    Swift

    @available(visionOS, unavailable)
    @objcMembers
    @objc(BMPRemoteControlConfig)
    public class RemoteControlConfig : NSObject
  • Contains config values that can be used to alter the visual presentation and behaviour when the Bitmovin Player Web UI is used.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPBitmovinUserInterfaceConfig)
    public class BitmovinUserInterfaceConfig : UserInterfaceConfig
  • Contains config values which can be used to alter the visual presentation and behaviour of the player UI.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPStyleConfig)
    public final class StyleConfig : NSObject
  • Contains config values that can be used to alter the visual presentation and behaviour when the subtitle only UI is used.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPSubtitleUserInterfaceConfig)
    public class SubtitleUserInterfaceConfig : UserInterfaceConfig
  • Contains config values that can be used to alter the visual presentation and behaviour when the System UI is used.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPSystemUserInterfaceConfig)
    public class SystemUserInterfaceConfig : UserInterfaceConfig
  • Declaration

    Swift

    @objcMembers
    @objc(BMPUserInterfaceConfig)
    public class UserInterfaceConfig : NSObject
  • This configuration is used as an incubator for experimental features. Tweaks are not officially supported and are not guaranteed to be stable, i.e. their naming, functionality and API can change at any time within the tweaks or when being promoted to an official feature and moved into its final configuration namespace.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPTweaksConfig)
    public final class TweaksConfig : NSObject
  • Configures a new PlayerView instance.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPPlayerViewConfig)
    public class PlayerViewConfig : NSObject
  • Provides options to configure Picture in Picture playback.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPPictureInPictureConfig)
    public class PictureInPictureConfig : NSObject
  • Configures a playlist that can be loaded into a Player.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPPlaylistConfig)
    public final class PlaylistConfig : NSObject
  • Contains additional configuration options for setting up a playlist.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPPlaylistOptions)
    public final class PlaylistOptions : NSObject
  • Marks the time range of an interstitial for the asset when presented in the tvOS system UI. Only supported when StyleConfig.userInterfaceType = .system is used! An interstitial could be an advertisement, legal notice, or content warning. The time range defined by an InterstitialMarker is visually collapsed from the presentation, affecting rendered duration and playback time. The values returned by player.duration and player.currentTime remain unaffected.

    See more
  • Provides the possibility to overwrite the labels which are automatically assigned for different types of tracks.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPLabelingConfig)
    public class LabelingConfig : NSObject
  • Represents a source config which can be played back in a player instance.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPSourceConfig)
    open class SourceConfig : NSObject
  • Represents a ClearKey config.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPClearKeyConfig)
    public final class ClearKeyConfig : DrmConfig
  • Represents a decryption key for a ClearKey DRM config

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPDecryptionKey)
    public final class DecryptionKey : NSObject, NSCopying
  • Base class for all DRM configs.

    Note

    This class acts as an abstract class.
    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPDrmConfig)
    public class DrmConfig : NSObject
  • Provides access to DRM scheme UUIDs.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPDrmSystems)
    public final class DrmSystems : NSObject
  • Represents a FairPlay Streaming DRM config.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPFairplayConfig)
    public class FairplayConfig : DrmConfig
  • Represents a PlayReady DRM config.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPPlayReadyConfig)
    public final class PlayReadyConfig : DrmConfig
  • Represents a Widevine DRM config.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPWidevineConfig)
    public final class WidevineConfig : DrmConfig
  • Describes an audio track.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPAudioTrack)
    public class AudioTrack : Track
  • Cue

    Describes a subtitle cue.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPCue)
    public class Cue : NSObject, NSCopying
  • Positioning information for CEA captions

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPCuePosition)
    public class CuePosition : NSObject
  • Describes a subtitle track.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPSubtitleTrack)
    public class SubtitleTrack : Track
  • Describes a thumbnail track.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPThumbnailTrack)
    public class ThumbnailTrack : Track
  • Base class for all available tracks.

    Note

    This class acts as an abstract class.
    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPTrack)
    public class Track : NSObject
  • Prints a log entry to the console when logging is enabled in the SDK, and the log entry level equals or is above the minimum log level that is assigned to level below. See LogEntry and LoggingConfig for more details.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPConsoleLogger)
    public class ConsoleLogger : NSObject, Logger
  • Contains analytics specific data returned from the license server.

    See more

    Declaration

    Swift

    @objc(BMPAnalyticsLicenseData)
    @objcMembers
    public class AnalyticsLicenseData : NSObject
  • Represents in-playlist timed metadata.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPDaterangeMetadata)
    public class DaterangeMetadata : Metadata
  • Declaration

    Swift

    @objc(BMPDrmData)
    @objcMembers
    public final class DrmData : NSObject
  • Represents a FairPlay content key request. This object can be used for renewing expiring licenses via Source.drm.fairplay.renewExpiringLicense API

    See more

    Declaration

    Swift

    @objc(BMPFairplayContentKeyRequest)
    @objcMembers
    public class FairplayContentKeyRequest : NSObject
  • Contains additional license data returned from the license server.

    See more

    Declaration

    Swift

    @objc(BMPLicenseData)
    @objcMembers
    public class LicenseData : NSObject
  • Describes default properties of the custom SCTE35 tag from the playlist.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPScteMetadataEntry)
    public final class ScteMetadataEntry : NSObject, MetadataEntry
  • Holds different information about the buffer levels.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPBufferLevel)
    public class BufferLevel : NSObject
  • Provides the means to manage DRM on a Source. Accessible through Source.drm.

    See more

    Declaration

    Swift

    @objc(BMPSourceDrmApi)
    @objcMembers
    public class SourceDrmApi : NSObject
  • Provides the means to manage FairPlay DRM on a Source. Accessible through Source.drm.fairplay.

    See more

    Declaration

    Swift

    @objc(BMPSourceDrmFairplayApi)
    @objcMembers
    public class SourceDrmFairplayApi : NSObject
  • Quality definition of a media representation.

    Note: This class acts as an abstract class.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPQuality)
    public class Quality : NSObject
  • Quality definition of a video representation.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPVideoQuality)
    public class VideoQuality : Quality
  • Declaration

    Swift

    @objc(BMPVttLine)
    @objcMembers
    public final class VttLine : NSObject
  • Declaration

    Swift

    @objc(BMPVttPosition)
    @objcMembers
    public final class VttPosition : NSObject
  • Declaration

    Swift

    @objc(BMPVttProperties)
    @objcMembers
    public final class VttProperties : NSObject
  • Contains config options which can be used to alter the default behaviour of content downloads.

    See more

    Declaration

    Swift

    @objc(BMPDownloadConfig)
    @objcMembers
    public final class DownloadConfig : NSObject
  • This config is used as an incubator for experimental features. Tweaks are not officially supported and are not guaranteed to be stable, i.e. their naming, functionality and API can change at any time within the tweaks or when being promoted to an official feature and moved into its final config namespace.

    See more

    Declaration

    Swift

    @objc(BMPDownloadTweaksConfig)
    @objcMembers
    public final class DownloadTweaksConfig : NSObject
  • Declaration

    Swift

    @objcMembers
    @objc(BMPOfflineManager)
    public class OfflineManager : NSObject
  • Holds DRM licence information

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPDrmLicenseInformation)
    public class DrmLicenseInformation : NSObject
  • Configures the offline functionality

    See more

    Declaration

    Swift

    @objc(BMPOfflineConfig)
    @objcMembers
    public final class OfflineConfig : NSObject
  • Represents a SourceConfig which references already downloaded or currently downloading offline content. It can passed to a Player instance for playback. Do not create instances of this class on your own, instead use OfflineContentManager.createOfflineSourceConfig(restrictedToAssetCache:).

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPOfflineSourceConfig)
    public class OfflineSourceConfig : SourceConfig
  • Declaration

    Swift

    @objc(BMPOfflineAudioTrack)
    @objcMembers
    public final class OfflineAudioTrack : OfflineTrack
  • Represents a text track which can be selected to download for offline playback

    See more

    Declaration

    Swift

    @objc(BMPOfflineTextTrack)
    @objcMembers
    public final class OfflineTextTrack : OfflineTrack
  • Superclass of tracks which can be selected to download for offline playback

    See more

    Declaration

    Swift

    @objc(BMPOfflineTrack)
    @objcMembers
    public class OfflineTrack : NSObject
  • Represents the information which tracks to download for offline playback

    See more

    Declaration

    Swift

    @objc(BMPOfflineTrackSelection)
    @objcMembers
    public final class OfflineTrackSelection : NSObject
  • See PlayerListener for more information on this event.

    See more

    Declaration

    Swift

    @objc(BMPSourceMetadataChangedEvent)
    @objcMembers
    public class SourceMetadataChangedEvent : NSObject, SourceEvent
  • A view that provides the Bitmovin Player UI and default UI handling to an attached Player instance. This view needs a Player instance to work properly. This Player can be passed to the initializer.

    If a custom UI is preferred, an AVPlayerLayer or an AVPlayerViewController can be registered via registerPlayerLayer / registerPlayerViewController. See PlayerView for more details.

    // Create a subclass of UIView
    class CustomView: UIView {
        init(player: Player, frame: CGRect) {
            super.init(frame: frame)
    
            // register the AVPlayerLayer of this view to the Player
            player.register(playerLayer)
        }
    
        var playerLayer: AVPlayerLayer {
            layer as! AVPlayerLayer
        }
    
        override class var layerClass: AnyClass {
            AVPlayerLayer.self
        }
    }
    
    See more

    Declaration

    Swift

    @available(iOS 14.0, tvOS 14.0, *)
    @objcMembers
    @objc(BMPPlayerView)
    open class PlayerView : UIView
    extension PlayerView: UIScrollViewDelegate
    extension PlayerView: UserInterfaceApi
    extension PlayerView: UserInterfaceEventHandler
    extension PlayerView: _PlayerListenerInternal
  • This class handles all communication between the native environment and the Bitmovin Web UI environment in one place.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BMPCustomMessageHandler)
    public class CustomMessageHandler : NSObject
  • Context for VAST macro replacement.

    See more

    Declaration

    Swift

    @objc(BMPVastMacroContext)
    @objcMembers
    public class VastMacroContext : NSObject
  • The options to be used for initializing BitmovinCastManager

    See more
  • Contains config values that can be used to alter the visual presentation and behaviour when the Bitmovin Player Web UI is used.

    See more
  • Marks the time range of an interstitial for the asset when presented in the tvOS system UI. Only supported when StyleConfig.userInterfaceType = .system is used! An interstitial could be an advertisement, legal notice, or content warning. The time range defined by an InterstitialMarker is visually collapsed from the presentation, affecting rendered duration and playback time. The values returned by player.duration and player.currentTime remain unaffected.

    See more

    Declaration

    Swift

    public class InterstitialMarker : TimelineMarker
  • Contains config options which can be used to alter the default behaviour of content downloads.

    See more
  • This config is used as an incubator for experimental features. Tweaks are not officially supported and are not guaranteed to be stable, i.e. their naming, functionality and API can change at any time within the tweaks or when being promoted to an official feature and moved into its final config namespace.

    See more
  • Configures the offline functionality

    See more
  • Represents a SourceConfig which references already downloaded or currently downloading offline content. It can passed to a Player instance for playback. Do not create instances of this class on your own, instead use OfflineContentManager.createOfflineSourceConfig(restrictedToAssetCache:).

    See more
  • Represents a text track which can be selected to download for offline playback

    See more
  • Superclass of tracks which can be selected to download for offline playback

    See more
  • Represents the information which tracks to download for offline playback

    See more
  • This class handles all communication between the native environment and the Bitmovin Web UI environment in one place.

    See more
  • Provides an ObjC way of accessing the Analytics namespace for a given Player instance.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BPAPlayerAnalyticsApiAccessor)
    public class PlayerAnalyticsApiAccessor : NSObject
  • Provides an ObjC way of accessing the Analytics namespace for a given Source instance.

    See more

    Declaration

    Swift

    @objcMembers
    @objc(BPASourceAnalyticsApiAccessor)
    public class SourceAnalyticsApiAccessor : NSObject