SourceDescription

@objc(THEOplayerSourceDescription)
public class SourceDescription : NSObject, Codable

The SourceDescription object is used to describe a configuration of a source for a THEOplayer instance.

  • Represents the source of the media to be played.

    Declaration

    Swift

    @objc
    public var sources: [TypedSource] { get set }
  • The textTracks property can be used to add an array of side-loaded text tracks to the player.

    Remark

    • All valid tracks will be available for playback as long as the player’s source is not set again.
    • Each text track should be described as a TextTrackDescription.

    Declaration

    Swift

    @objc
    public var textTracks: [TextTrackDescription]? { get set }
  • The poster property can be used to specify a content poster per source.

    Remark

    The player’s content poster will be updated as soon as a new source with valid poster is set, or when the player’s own poster property is altered.

    Declaration

    Swift

    @objc
    public var poster: URL? { get set }
  • Metadata that can be used to describe content, e.g. when casting to chromecast.

    Declaration

    Swift

    @objc
    public var metadata: MetadataDescription? { get set }
  • Constructs a SourceDescription.

    Declaration

    Swift

    public init(sources: [TypedSource], textTracks: [TextTrackDescription]? = nil, ads: [AdDescription]? = nil, poster: String? = nil, metadata: MetadataDescription? = nil)

    Parameters

    sources

    An array of TypedSource which represent the media to be played.

    textTracks

    An array of side-loaded text tracks represented as a TextTrackDescription, defaults to nil.

    ads

    An array of ads represented as an AdDescription, defaults to nil.

    poster

    The player’s content poster, defaults to nil.

    metadata

    The metadata which can be used to describe the content, defaults to nil.

  • Constructs a SourceDescription.

    Declaration

    Swift

    public init(source: TypedSource, textTracks: [TextTrackDescription]? = nil, ads: [AdDescription]? = nil, poster: String? = nil, metadata: MetadataDescription? = nil)

    Parameters

    source

    An array of TypedSource which represent the media to be played.

    textTracks

    An array of side-loaded text tracks represented as a TextTrackDescription, defaults to nil.

    ads

    An array of ads represented as an AdDescription, defaults to nil.

    poster

    The player’s content poster, defaults to nil.

    metadata

    The metadata which can be used to describe the content, defaults to nil.

  • Constructs a SourceDescription.

    Declaration

    Swift

    @available(*, deprecated, message: "This initializer will be removed with the next major release.")
    convenience init(verizonMediaSources: [VerizonMediaSource], textTracks: [TextTrackDescription]? = nil, poster: String? = nil, metadata: MetadataDescription? = nil)

    Parameters

    verizonMediaSources

    A list of VerizonMediaSources.

    textTracks

    A list of TextTrackDescriptions, defaults to nil.

    poster

    The poster URL, defaults to nil.

    metadata

    The metadata that can be used to describe content, e.g. when casting to chromecast. Defaults to nil.

  • Constructs a SourceDescription.

    Declaration

    Swift

    @available(*, deprecated, message: "This initializer will be removed with the next major release.")
    convenience init(verizonMediaSource: VerizonMediaSource, textTracks: [TextTrackDescription]? = nil, poster: String? = nil, metadata: MetadataDescription? = nil)

    Parameters

    verizonMediaSource
    textTracks

    A list of TextTrackDescriptions, defaults to nil.

    poster

    The poster URL, defaults to nil.

    metadata

    The metadata that can be used to describe content, e.g. when casting to chromecast. Defaults to nil.

  • vr

    The VRConfiguration used to configure VR video playback.

    Declaration

    Swift

    @available(*, deprecated, message: "This property will be removed with the next major release.")
    @objc
    var vr: VRConfiguration? { get set }
  • Constructs a SourceDescription.

    Remark

    A known limitation is that only the first source will play.

    Declaration

    Swift

    @available(*, deprecated, message: "This initializer will be removed with the next major release.")
    convenience init(sources: [TypedSource], ads: [AdDescription]? = nil, textTracks: [TextTrackDescription]? = nil, poster: String? = nil, analytics: [AnalyticsDescription]? = [], metadata: MetadataDescription? = nil, vr: VRConfiguration? = nil)

    Parameters

    sources

    List of TypedSource which represent the media to be played. Only the first source will play.

    ads

    List of ads represented as an AdDescription, defaults to nil.

    textTracks

    List of side-loaded text tracks represented as a TextTrackDescription, defaults to nil.

    poster

    The url of the the poster image that will be visible the moment the source is set if autoplay is disabled, defaults to nil.

    analytics

    List of pre-integrated analytics services of the player, defaults to [].

    metadata

    The metadata which can be used to describe the content, defaults to nil.

    vr

    The VR configuration for this source, defaults to nil.

  • Constructs a SourceDescription.

    Declaration

    Swift

    @available(*, deprecated, message: "This initializer will be removed with the next major release.")
    convenience init(source: TypedSource, ads: [AdDescription]? = nil, textTracks: [TextTrackDescription]? = nil, poster: String? = nil, analytics: [AnalyticsDescription]? = [], metadata: MetadataDescription? = nil, vr: VRConfiguration? = nil)

    Parameters

    source

    A TypedSource which represents the media to be played.

    ads

    List of ads represented as an AdDescription, defaults to nil.

    textTracks

    List of side-loaded text tracks represented as a TextTrackDescription, defaults to nil.

    poster

    The url of the the poster image that will be visible the moment the source is set if autoplay is disabled, defaults to nil.

    analytics

    List of pre-integrated analytics services of the player, defaults to [].

    metadata

    The metadata which can be used to describe the content, defaults to nil.

    vr

    The VR configuration for this source, defaults to nil.

  • ads

    The ads property can be used to add an array of AdDescriptions to the player. All valid and supported advertisement files will be cued for playback in the player. Each ad in the array should be described as an AdDescription.

    Declaration

    Swift

    var ads: [AdDescription]? { get set }
  • The analytics property can be used to add an array of analytics integrations to the player.

    Declaration

    Swift

    @available(*, deprecated, message: "This property will be removed with the next major release. Analytics will be moved to separate modules in the form of connectors. For more info check: https://github.com/THEOplayer/iOS-Connector")
    @objc
    var analytics: [AnalyticsDescription]? { get set }
  • Constructs a SourceDescription.

    Declaration

    Swift

    @available(*, deprecated, message: "This initializer will be removed with the next major release.")
    convenience init(sources: [TypedSource], ads: [AdDescription]? = nil, textTracks: [TextTrackDescription]? = nil, poster: String? = nil, analytics: [AnalyticsDescription]? = [], metadata: MetadataDescription? = nil)

    Parameters

    sources

    List of TypedSource which represent the media to be played.

    ads

    List of ads represented as an AdDescription, defaults to nil.

    textTracks

    List of side-loaded text tracks represented as a TextTrackDescription, defaults to nil.

    poster

    The url of the the poster image that will be visible the moment the source is set if autoplay is disabled, defaults to nil.

    analytics

    List of pre-integrated analytics services of the player, defaults to [].

    metadata

    The metadata which can be used to describe the content, defaults to nil.

  • Constructs a SourceDescription.

    Declaration

    Swift

    @available(*, deprecated, message: "This initializer will be removed with the next major release.")
    convenience init(source: TypedSource, ads: [AdDescription]? = nil, textTracks: [TextTrackDescription]? = nil, poster: String? = nil, analytics: [AnalyticsDescription]? = [], metadata: MetadataDescription? = nil)

    Parameters

    source

    A TypedSource which represents the media to be played.

    ads

    List of ads represented as an AdDescription, defaults to nil.

    textTracks

    List of side-loaded text tracks represented as a TextTrackDescription, defaults to nil.

    poster

    The url of the the poster image that will be visible the moment the source is set if autoplay is disabled, defaults to nil.

    analytics

    List of pre-integrated analytics services of the player, defaults to [].

    metadata

    The metadata which can be used to describe the content, defaults to nil.