Releases: kaltura/playkit-android
Releases · kaltura/playkit-android
v3.1.2
v3.1.1
Bug Fixes
- FEM-1592 - DRM dash offline playback does not play - player remains on a black screen on first play
- FEM-1567 - DRM dash offline playback does not play - Seek bar flickering
- FEM-1604 - Provider Blocks play request even if playback is permitted
- FEM-1609 - Add optional referrer to getPlaybackContext for ovp/phoenix providers
v3.1.0
Features
-Add API that enables now to override the default refferer that is assembled by the SDK, should be called after loading the player.
KalturaPlaybackRequestAdapter.install(player, "myApp");
- Add playkit version to device capabilities report
- Update user agent in playmanifest request
- Upgrade play services to 11.0.2
Bug Fixes
- TVPAPI Analytics add missing messageBud assignment
v3.0.3
v3.0.2
Bug Fix
Add extra validation for widevine modular support
Some devices will fail to open DRM session so playback will fail
now it is possible to validate this before trying to play DRM Widevine Modular on device which
does not support it.
MediaSupport.initialize(context);
isSupported = MediaSupport.widevineModular()
v3.0.1
Feature:
Add ability to configure the ExoPlayer view - surfaceView or textureView
After creating the player you may add
player.getSettings().useTextureView(true);
Note that this is available for non DRM streams only.
Bug Fix
WidevineClassic - entry does not play
v3.0.1.rc1
- Added device capabilities report.
- Added optional setting. Now application can decide if it want to use SurfaceView or TextureVIew to render the video. By default it will be always set to SurfaceView.
- Expose mediaProvider response to application.
v3.0.0
Features:
- Added more complex sessionId.
- Added error handling. More about this feature you can see here.
- Additional data added to PlaybackInfoUpdated event.
- Added new PlayerEvent -> SOURCE_SELECTED. Will be triggered when the player selected the most suitable source. This event holds PKMediaSource that was chosen.
- Analytics plugins: now you can use dedicated config objects, instead of passing json (we still support json structure), but for your convenience you can use more structured objects. see KalturaStatsConfig.java as example.
Breaking changes:
- Analytics plugins moved to separate packages. (In order to fix, just change the package names)
- Extra data from PlayerEvent can be obtained by direct call to their public final field, those instead of using getters. In order to fix, just change getter to field reference. For example: instead tracksAvailable.getTracksInfo() use tracksAvailable.tracksInfo
- AdErrors structure changed. From now on, AdErrors will be part of AdEvent. To obtain the specific AdError you should subscribe to AdEvent.ERROR. When ad error occurs, you will receive corresponding event with data object in it, called "error". This will hold the error message, Throwable and enum with errorType. The errorType is equivalent to the old AdError.Type
Bug fixes:
AndroidTV
- Add entry title in OVP to PkMediaEntery
- Replace the Parcelable implementation in PkMediaEntery
TrackSelection:
- Tracks will be restored after application is going background/foreground.
- Potential crash fix. If stream have multiple adaptive tracks, now they should play correct.
OVPProvider
- Master source flavorId will be filtered out from sources.
Release notes
Features:
- Added more complex sessionId.
- Added error handling. More about this feature you can see here.
- Additional data added to PlaybackInfoUpdated event.
- Added new PlayerEvent -> SOURCE_SELECTED. Will be triggered when the player selected the most suitable source. This event holds PKMediaSource that was chosen.
- Analytics plugins: now you can use dedicated config objects, instead of passing json (we still support json structure), but for your convenience you can use more structured objects. see KalturaStatsConfig.java as example.
Breaking changes:
- Analytics plugins moved to separate packages. (In order to fix, just change the package names)
- Extra data from PlayerEvent can be obtained by direct call to their public final field, those instead of using getters. In order to fix, just change getter to field reference. For example: instead tracksAvailable.getTracksInfo() use tracksAvailable.tracksInfo
- AdErrors structure changed. From now on, AdErrors will be part of AdEvent. To obtain the specific AdError you should subscribe to AdEvent.ERROR. When ad error occurs, you will receive corresponding event with data object in it, called "error". This will hold the error message, Throwable and enum with errorType. The errorType is equivalent to the old AdError.Type
Bug fixes:
AndroidTV
- Add entry title in OVP to PkMediaEntery
- Replace the Parcelable implementation in PkMediaEntery
TrackSelection:
- Tracks will be restored after application is going background/foreground.
- Potential crash fix. If stream have multiple adaptive tracks, now they should play correct.
OVPProvider
- Master source flavorId will be filtered out from sources.
Release notes
Bug fixes:
AndroidTV
- Add entry title in OVP to PkMediaEntery
- Replace the Parcelable implementation in PkMediaEntery
TrackSelection:
- Tracks will be restored after application is going background/foreground.
- Potential crash fix.
OVPProvider
- Master source flavorId will be filtered out from sources.