[object Object] Icon

Encoding
Learn how to create, start, manage and modify Encodings

[object Object] Icon

Player
Learn how to create, start, manage and modify Players

[object Object] Icon

Analytics
Learn how to create, start, manage and modify Analyticss

Docs Home
User shortcuts for search
Focus by pressing f
Hide results by pressing Esc
Navigate via   keys

Player iOS / tvOS Releases

Latest Releases

Date

Version

Stable

11/22/2022

3.30.0

Changed

  • PlayerConfig from open to final to restrict subclassing

Removed

  • NSCopying conformance for Config
  • Config as super type from all configs

Fixed

  • Endless stalling after seeking on iOS 16.1 when TweaksConfig.unstallingBehaviour is set to .aggressive for HLS assets
  • Bad structure of TweaksConfig.isCustomHlsLoadingEnabled documentation

Stable

11/8/2022

3.29.0

Added

  • ImaSettings type to improve usability when Google IMA SDK is used
  • ImaAdsManager type to improve usability when Google IMA SDK is used
  • VideoPlaybackQualityChangedEvent which is emitted when the playback video quality changes

Changed

  • Improved documentation on AdBreak.ads to state limitations
  • AdvertisingConfig.beforeInitialization property now uses our own ImaSettings type instead of Google IMA SDK to improve usability
  • AdvertisingConfig.onAdsManagerAvailable property now uses our own ImaAdsManager type instead of Google IMA SDK to improve usability

Removed

  • autoPlayAdBreaks property when using IMASettings from AdvertisingConfig.beforeInitialization, as using this property has no effect on ad playback
  • playerType property when using IMASettings from AdvertisingConfig.beforeInitialization, as using this property has no effect on ad playback
  • enableDebugMode property when using IMASettings from AdvertisingConfig.beforeInitialization, as using this property has no effect on ad playback
  • delegate property when using IMAAdsManager from AdvertisingConfig.onAdsManagerAvailable, as using this caused undefined behavior, potentially breaking playback
  • adPlaybackInfo property when using IMAAdsManager from AdvertisingConfig.onAdsManagerAvailable, as all of this information is available via Player API during ad playback
  • volume property when using IMAAdsManager from AdvertisingConfig.onAdsManagerAvailable, as this is available via Player.volume API during ad playback
  • initialize(with:) when using IMAAdsManager from AdvertisingConfig.onAdsManagerAvailable, as this had no effect
  • start() method when using IMAAdsManager from AdvertisingConfig.onAdsManagerAvailable, as ads are starting automatically when scheduled if playing, or can be started using via Player.play()
  • pause() method when using IMAAdsManager from AdvertisingConfig.onAdsManagerAvailable, as this is available via Player.pause() API during ad playback
  • resume() method when using IMAAdsManager from AdvertisingConfig.onAdsManagerAvailable, as this is available via Player.play() API during ad playback
  • skip() method when using IMAAdsManager from AdvertisingConfig.onAdsManagerAvailable, as this is available via Player.skipAd() API during ad playback
  • clicked() when using IMAAdsManager from AdvertisingConfig.onAdsManagerAvailable, as this API had no effect when used
  • destroy() when using IMAAdsManager from AdvertisingConfig.onAdsManagerAvailable, as using this caused undefined behavior, potentially breaking playback

Fixed

  • Seek/TimeShift and Seeked/TimeShifted event emitting when multiple seek or timeShift operations are done after each other
  • Missing onVideoDownloadQualityChanged listener method in SourceListener

Stable

9/27/2022

3.28.0

Added

Deprecated

Stable

9/13/2022

3.27.0

Added

  • SystemUiApi.customInfoViewControllers which allows adding custom info view controllers that are presented as content tabs on tvOS 15 and above
  • Event emitting for Seek/TimeShift and Seeked/TimeShifted events during casting

Fixed

  • Playback on cast receiver not continuing when destroying the local player
  • Outdated and incomplete documentation for NetworkConfig
  • Performance issues when running on iOS or tvOS simulator
  • Horizontal positioning for cues in WebVTT subtitle tracks on iOS and tvOS 16

Stable

8/30/2022

3.26.0

Added

  • Possibility to remove faulty Sources from a SourceErrorEvent. See onSourceError for details.

Stable

8/16/2022

3.25.0

Changed

  • Change TimeMode to a @frozen enum
  • SourceConfig.metadata in Swift now uses [String: Any] type

Removed

  • Deprecated APIs from SourceConfig:
    • HlsSource
    • DashSource
    • ProgressiveSource
    • SourceConfig initializers:
      • init(adaptiveSource:)
      • init(HlsSource)
      • initWithDASHSource:
      • initWithProgressiveSource:
    • SourceConfig properties and methods:
      • urlForType:
      • hasSourceOfType:
      • addSource:error:
      • addAdaptiveSource:error:
      • addProgressiveSource:error:
  • AdaptiveSource, DASHSource, HLSSource, ProgressiveSource, MediaSource classes

Fixed

  • CueExitEvents firing continuously when external subtitles are added to SourceConfig
  • Incorrect playback position when using an UNIX timestamp for time-shifting using player.timeShift

Stable

8/2/2022

3.24.0

Added

  • SystemUiApi.infoViewActions which allows dynamically changing info view actions on tvOS 15 and above

Stable

7/19/2022

3.23.1

Fixed

  • Google IMA SDK overlay not respecting safe area layout of the PlayerView
  • Compilation error when Bitmovin Player is used within an Objective-C++ (.mm) file
  • Broken PlayerView subclassing for a custom view implementation

Stable

7/5/2022

3.23.0

Added

  • PlayerFactory.sdkVersion to retrieve the current version of the BitmovinPlayer SDK
  • SystemUserInterfaceConfig.transportBarCustomMenuItems to configure custom transport bar items on tvOS 15 and above
  • PlayerView.systemUi API namespace of type SystemUiApi for interactions regarding the system UI
  • SystemUiApi.transportBarCustomMenuItems which allows dynamically changing custom transport bar items on tvOS 15 and above
  • AdvertisingConfig.ima property and ImaAdvertisingConfig type to customize Google IMA SDK
  • ImaAdvertisingConfig.adAttributionUiMode to customize Ad attribution appearance when using Google IMA SDK

Fixed

  • Setting PlayerView.scalingMode having no effect when Subtitle UI is used

Stable

6/21/2022

3.22.0

Added

  • Picture In Picture support on tvOS 14 and above
  • AdBreakStartedEvent.adBreak.totalNumberOfAds and AdBreakFinishedEvent.adBreak.totalNumberOfAds properties to provide the number of ads in an ad break

Fixed

  • Incorrect handling when the application enters background on tvOS, resulting in restarted streams when the application enters foreground again
  • UserInterfaceType.subtitle not properly respected on tvOS resulting in displaying the system UI
  • AdStartedEvent.indexInQueue always returned 0 instead of the proper value

Latest Releases

Give us feedback