logo

🚀 2020.4.1 (2020/11/24)

General

✨ Features

  • Addition of a new bufferLookbackWindow configuration property to control how much data should be maintained in the decode buffer.
  • Synchronize MPEG-DASH MPD updates with availability window changes in order to avoid stale MPDs.
  • Add support for configuring the license via the playerconfiguration

⚡ Improvements

  • Added support for retrieving PlayReady PSSH from <mspr:pro> element.

🐛 Issues

  • Fixed an issue where some HLS streams would not end properly.
  • Resolve issue where in stream subtitles are all loaded at once
  • Fix an issue where a replay would sometimes fail on short HLS streams.
  • Fixed a bug where streams did not send exit events for Id3 cues, when useNativePlayback or contentProtected was set to true in the player source setup

Web (2.78.0)

✨ Features

  • Add Network Estimator API for experimental LL-HLS pipeline.

🐛 Issues

  • Fix an issue where Widevine protected streams would not play on Hisense VIDAA U3 platforms.
  • Improve the ABR algorithm to switch to a higher quality faster on startup of HLS streams.
  • Fix an issue where the player would error on HLS streams with empty segments.
  • Fix an issue where configuring the JoinStrategy to disabled would crash the chromecast UI.

Android (2.78.0)

🐛 Issues

  • Fix an issue where setting a null source would crash the application.
  • Fix an issue where the app would sometimes crash on calling requestCurrentAdBreak.
  • Add cause for ErrorEvents when applicable.

iOS (2.78.0)

✨ Features

  • Add support for external license either by license or licenseUrl in the PlayerConfiguration or in the info.plist.

🐛 Issues

  • Fixed an issue where requesting the currentAdBreak would crash

tvOS (2.78.0)

✨ Features

  • Add support for external license either by license or licenseUrl in the PlayerConfiguration or in the info.plist.
  • Add Support for verizonMedia on tvOS.

🚀 2020.4.0 (2020/11/17)

Android (2.77.1)

🐛 Issues

  • Fix an issue where Chromecast did not auto-connect when CastStrategy is AUTO.

iOS (2.77.1)

🐛 Issues

  • Fixed a bug where switching audio tracks would fail after updating the label.
  • Fixes a bug that prevented a nativeIMA ad from playing when reinstantiating a THEOplayer instance.

tvOS (2.77.1)

🐛 Issues

  • Fixed a bug where switching audio tracks would fail after updating the label.

🚀 2020.4.0 (2020/10/26)

General

✨ Features

  • Support parallel download while caching.

🐛 Issues

  • Add jumping over segments which return a 4XX HTTP response code for DASH streams.
  • Fix an issue where the player autoplays IMA ads when preload is set
  • Fix an issue where for some HLS streams audio drifts away from video, resulting in visible lip sync issues.
  • Fix an issue where the player would sometimes stall indefinitely when seeking into a discontinuity on HLS streams.
  • Fix an issue where seeking to segment edges sometimes stalls the video for HLS streams.
  • Fix an issue where the timing of WebVTT subtitles on live DASH streams was incorrect.
  • Fixed an issue where the player could sometimes stall indefinitely in Chrome at the end of a DASH VOD stream.
  • Ignore DRM initialisation data other than 'cenc'
  • Fixed having only one audio frame in a segment can sometimes break duration calculation.

Web (2.77.0)

🐛 Issues

  • Fixed an issue where the fairplaySkdUrl was always undefined in LicenseRequest for FairPlay protected streams.
  • Fix an issue where for some HLS streams the ABR mechanism did not switch to a higher profile.
  • Fix an issue where for some HLS streams the ABR mechanism does not switch to higher profiles in case the variant streams in the master playlist do not have a value for the CODECS attribute.
  • Fix an issue where THEOplayer.players[0].source returns undefined for every stream in chromeless player.

Android (2.77.0)

✨ Features

  • Add THEOplayerException to ErrorEvent
  • Introduce ContentProtectionException and update ContentProtectionErrorEvent.
  • Added ContentProtectionIntegration API.

🐛 Issues

  • Fix an issue where VerizonMediaResponseDrm returned null for license URLs

👎 Deprecations

  • The constructor of THEOplayerConfig is deprecated in favor of THEOplayerConfig.Builder.

iOS (2.77.0)

✨ Features

  • Add ContentProtectionIntegration API.

⚡ Improvements

  • Align TheoError with other SDKs

🐛 Issues

  • Fixes an issue where a caching task is not properly removed when its file is deleted.
  • Fixes a bug that caused player.source to return nil immediately after setting the source.

👎 Deprecations

  • Some of the constructors of the THEOplayerConfiguration has been deprecated.

tvOS (2.77.0)

✨ Features

  • Add ContentProtectionIntegration API.

⚡ Improvements

  • Align TheoError with other SDKs

🐛 Issues

  • Fixes a bug that caused player.source to return nil immediately after setting the source.

Chromecast (2.77.0)

🐛 Issues

  • Fix an issue where sometimes playback pauses after setting a new source.
  • Fix issue where receiver would stop playing upon destroying the player.

🚀 2020.3.3 (2020/10/01)

General

🐛 Issues

  • Fix an issue where for some HLS streams audio drifts away from video, resulting in visible lip sync issues.

Web (2.76.1)

🐛 Issues

  • Fix an issue where for some HLS streams the ABR mechanism did not switch to a higher profile.
  • Fix an issue where for some HLS streams the ABR mechanism does not switch to higher profiles in case the variant streams in the master playlist do not have a value for the CODECS attribute.
  • Fix an issue where switching from a single quality to automatic quality selection did not work for HLS streams.

🚀 2020.3.3 (2020/09/28)

General

⚡ Improvements

  • Improve gap marking and jumping for DASH streams

🐛 Issues

  • Fix an issue where an aderror event was not dispatched correctly if an ad failed to load and blockContentIfAdError = false.
  • Resolved issue where currentProgramDateTime was being offset by suggestedPresentationDelay.
  • Fixed an issue where the player would not use a custom ContentProtectionIntegrationFactory if registered with the same integrationId as an existing content protection pre-integration.

Web (2.76.0)

✨ Features

  • Added the ability to configure customData when using PlayReady DRM.
  • Add reporting of total bytes loaded, current bandwidth estimate and number of currently buffered segments for DASH streams to the player metrics API .
  • Update Conax Classic configuration properties to be optional.
  • Added bitrate property to GoogleImaAd.
  • Add error codes to all fatal player errors through ErrorEvent.errorObject.code.

🐛 Issues

  • Fix an issue where license request and response handlers were called instead of certificate request and response handlers for Widevine Certificate requests for DASH streams.

⚠ Known Limitations

  • PlayReady streams are currently not supported on WebOS.
  • 4k/8k stream playback is currently unavailable for Tizen.
  • Multi-period streams are not supported on WebOS and Tizen

Android (2.76.0)

✨ Features

  • Add reporting of total bytes loaded, current bandwidth estimate and number of currently buffered segments for DASH streams to the player metrics API.
  • Added bitrate property to GoogleImaAd.

🐛 Issues

  • Fix an issue where the ENDED event would not be triggered when seeking using the Native Pipeline.
  • Fix an issue where the percentage cached was not reported correctly.
  • Fix an issue where segments were not cleaned on player destroy
  • Fix an issue where deallocating native rendering player were not handled correctly.

iOS (2.76.0)

💥 Breaking Changes

  • Renamed and changed type of THEOErrorCode enum cases.
  • Removed unused THEOError.parameters property.

✨ Features

  • Added bitrate property to GoogleImaAd.

🐛 Issues

  • Fixed a bug that cause MainThread to freeze for while when dispatching a durationChange event.
  • Fix an issue where dragging out PictureInPicture window would fail to enter fullscreen mode.

tvOS (2.76.0)

💥 Breaking Changes

  • Renamed and changed type of THEOErrorCode enum cases.
  • Removed unused THEOError.parameters property.

🐛 Issues

  • Fixes a bug where Siri remote loses focus when playing ads.

🚀 2020.3.2 (2020/09/18)

General

⚡ Improvements

  • Do not clear the buffer on a manual quality switch.

🚀 2020.3.2 (2020/09/03)

Web (2.75.1)

🐛 Issues

  • Fix an issue where adbreakend event was not dispatched when the last linear ad was an empty vast ad.
  • Fix THEOplayer.registerContentProtectionIntegration() not working.

🚀 2020.3.2 (2020/08/31)

General

🐛 Issues

  • Fix an issue where some HLS streams with CMAF segments containing implicit HE-AAC audio failed to play.
  • Fix an issue where switching from a single quality to automatic quality selection would cause an unnecessary rebuffer for DASH streams.

Web (2.75.0)

✨ Features

  • Add ContentProtectionIntegration API.

🐛 Issues

  • Fix an issue where sometimes the current time was not displayed correctly at the end of a stream.
  • Fix an issue where the player would report being paused, while it was playing a HLS FairPlay stream using AirPlay.
  • Fix an issue where the player would snap to the beginning of the current segment instead of the current playback position when stopping an AirPlay session for HLS FairPlay streams.
  • Fix an issue where the active quality is not yet set when a playing event is triggered.

Android (2.75.0)

✨ Features

  • Switch to a different representation when a DRM key restriction occurs for native rendering.
  • Add certificate to KeySystemConfiguration

🐛 Issues

  • Fix an issue regarding the order of events when using Native Rendering.
  • Expose CachingTask id property

iOS (2.75.0)

✨ Features

  • Fix a bug that caused THEOplayer to show a black screen after playing a SpotX ad.

🐛 Issues

  • Fix an issue where Picture-in-Picture window is misplaced after rotating the screen.
  • Expose CachingTask id property

tvOS (2.75.0)

✨ Features

  • Add Support for Native IMA.
  • Add support for SpotX ads.

🚀 2020.3.1 (2020/08/04)

General

✨ Features

  • Add currentProgramDateTime to TimeUpdateEvent.
  • Add support for DASH streams with a SegmentTemplate tag with an endnumber and a fixed segment duration.

⚡ Improvements

  • Use estimated segment availability for DASH streams where the actual segment availability is unrealistic.
  • Add retry functionality for initialization segments of DASH streams.

🐛 Issues

  • Fix an issue where seeking backwards in a HLS DVR stream would sometimes jump forwards again.
  • Fix an issue where suggestedPresentationDelay was not taken into account for the calculation of currentProgramDateTime for DASH streams.
  • Fix an issue where the ratio passed to the VisibilityObserverCallback did not match the ratio on the visibility API.
  • Fix an issue where some TTML subtitles with tts:extent on the Root Container Region were not rendered properly.
  • Fixed an issue where the player would get stuck buffering for HLS streams with key frames more than 30 seconds apart.
  • Fix an issue where the value of the totalAds property of the Google IMA API would sometimes be too low.

Web (2.74.0)

🐛 Issues

  • Fix an issue where the learn more button is appearing at the bottom of the player when playing a google dai ad.

Android (2.74.0)

✨ Features

  • Add ContentProtectionIntegration API.
  • Add Axinom content protection pre-integration for android with nativeRendering enabled.
  • Extend TimeUpdateEvent to include programDateTime.
  • Embed Exoplayer into THEOplayer SDK

⚡ Improvements

  • Ignore in-stream PSSHs if all the key IDs are contained in the active DRM session.

🐛 Issues

  • Fix an issue where PLAYING event was not dispatched after a SEEKED event
  • Fix an issue where incorrect buffer size triggered a WAITING event.
  • Fix an issue where offline caching would not work for DASH content.

iOS (2.74.0)

✨ Features

  • Add the possibility to prevent THEOplayer from managing the AVAudioSession.
  • Extend timeUpdate event to include programDateTime.
  • Add margin parameter to PictureInPicture configure API.

🐛 Issues

  • Fix issue where setting targetBuffer did not work.
  • Fix an issue where seeking immediately after setting source would not work.

tvOS (2.74.0)

✨ Features

  • Add the possibility to prevent THEOplayer from managing the AVAudioSession.

🐛 Issues

  • THEOplayer no longer handles PLAY/PAUSE events from the SiriRemote when chromeless is true
  • Fix an issue where seeking immediately after setting source would not work.

🚀 2020.3.0 (2020/07/07)

General

⚡ Improvements

  • Remove THEOplayer support in error messages in favor of "your service provider".

🐛 Issues

  • Fix an issue where the player would sometimes throw an error event, even though it had already automatically recovered from it.
  • Fix an issue on HLS where an error would occur on a discontinuity when the stream has either no video or no audio.
  • Fix an issue where the player would fetch the wrong segment url for some DASH streams with SegmentTemplate tags.

Web (2.73.0)

🐛 Issues

  • Fix an issue where an ad that is adblocked does not result in the content being blocked although the blockContentIfAdError is set.
  • Fix an issue where the skip button for verizon media ads had no lateral padding.
  • Fix an issue where some Google DAI DASH streams wouldn't resume after a midroll ad.

Android (2.73.0)

✨ Features

  • Add Support for Native IMA

🐛 Issues

  • Fix an issue where THEOplayer crashed between Activity lifecycle transitions
  • Fixed an issue where using native rendering the quality change caused the player to lag
  • Fix an issue where the player sometimes stutters on ABR quality switches when playing H265 streams using native rendering.
  • Fix an issue where fullscreen would go into landscape even when FullScreenOrientationCouple is set to false

iOS (2.73.0)

✨ Features

  • Add Support for Native IMA

🐛 Issues

  • Fix an issue on iOS where returning from fullscreen mode would break the UI

🚀 2020.2.1 (2020/06/10)

General

🐛 Issues

  • Resolved issue where text track cues could remain active after a silent fast seek by the media pipeline
  • Fix an issue where playback would sometimes fail to start for DASH streams with subsegments whose timestamps are not aligned with their parent segment.
  • Fixed issue where MPEG-DASH streams with dynamic manifests where the last period's duration increases every update does not correctly update its duration.
  • Fix an issue where sometimes the player would seek to the wrong time for DASH streams.

Web (2.72.0)

✨ Features

  • Add playerSuiteVersion API.

⚡ Improvements

  • Fix an issue where the player reported buffer length in seconds instead of milliseconds for Conviva analytics.

🐛 Issues

  • Fix an edge case for some HLS streams where the player would sometimes download segments multiple times for specific target buffer values.

Android (2.72.0)

✨ Features

  • Add a THEOplayerView.getPlayerSuiteVersion() api.
  • Add timeServer flag for SourceDescription and TypedSource
  • Add lowLatency flag to SourceDescription

⚡ Improvements

  • Add support for playback of HEVC representations of a DASH stream when nativeRendering is enabled.

🐛 Issues

  • Fix an issue where Google DAI DASH streams would not play
  • Fix an issue where using Native Rendering the ended event was missing

iOS (2.72.0)

✨ Features

  • Add a THEOplayer.playerSuiteVersion api.
  • Add support for Comcast MPX Fairplay DRM
  • THEOplayer does not require anymore to be attached to a ViewController to switch to Picture-in-Picture mode

🐛 Issues

  • Fix bug where accessing audioTracks/videoTracks on track change event would return false states

Chromecast (2.72.0)

✨ Features

  • Add playerSuiteVersion API.

Chromecast CAF (2.72.0)

✨ Features

  • Add version and playerSuiteVersion API.
github
Make sure to follow us on GitHub!
THEO-logo-white
twitter
facebook
linkedin
Copyright © 2020. All Rights Reserved.
Leuven
New York
San Francisco
Singapore
Barcelona