Skip to content

Releases: kaltura/playkit-android

v4.29.0

27 Jun 06:32
Compare
Choose a tag to compare

Changes from v4.29.0

Fixes:

  • FEC-13250 - expose new events for enable/disable videoTracks
    once video surface is available / removed event will be fired
    for example: if user uses API for enable or disable user track then the event will be fired
    videoTracksEnabled may be fired also if video is rendered first time

New Evens:

public static final PlayerEvent.Type videoTracksEnabled = Type.VIDEO_TRACKS_ENABLED;
public static final PlayerEvent.Type videoTracksDisabled = Type.VIDEO_TRACKS_DISABLED;

Example:

ON_VIDEO_TRACK_ENABLED
ON_VIDEO_TRACK_DISABLED

        player.addListener(this, PlayerEvent.videoTracksDisabled, event -> {
            log.d("videoTracksDisabled");
        });

        player.addListener(this, PlayerEvent.videoTracksEnabled, event -> {
            log.d("videoTracksEnabled");
        });

[AN][Core] - add events for enable/disable videoTracks

Plugin Playkit Support

v4.29.0

Plugin's Version

  • implementation 'com.kaltura.playkit:playkit:4.29.0'

  • implementation 'com.kaltura.playkit:playkitproviders:4.29.0'

  • implementation 'com.kaltura.playkit:youboraplugin:4.29.0'

  • implementation 'com.kaltura.playkit:imaplugin:4.29.0'

  • implementation 'com.kaltura.playkit:kavaplugin:4.29.0'

  • implementation 'com.kaltura.playkit:vrplugin:4.29.0'

  • implementation 'com.kaltura.playkit:googlecast:4.29.0'

Samples

v4.28.3

25 Apr 11:56
Compare
Choose a tag to compare

Changes from v4.28.3

Plugin Playkit Support

v4.28.3

Plugin's Version

  • implementation 'com.kaltura.playkit:playkit:4.28.3'

  • implementation 'com.kaltura.playkit:playkitproviders:4.28.3'

  • implementation 'com.kaltura.playkit:youboraplugin:4.28.3'

  • implementation 'com.kaltura.playkit:imaplugin:4.28.3'

  • implementation 'com.kaltura.playkit:kavaplugin:4.28.3'

  • implementation 'com.kaltura.playkit:vrplugin:4.28.3'

  • implementation 'com.kaltura.playkit:googlecast:4.28.3'

Samples

v4.28.2

13 Apr 17:14
Compare
Choose a tag to compare

Changes from v4.28.1

Bug Fixes

  • FEC-13090: fix casting validation position (#805)
  • FEC-13094: convert MS to US (#806), fix setTargetBufferBytes logic for default values incase of -1 is given (#807)

Plugin's Version

  • implementation 'com.kaltura.playkit:playkit:4.28.2'

  • implementation 'com.kaltura.playkit:playkitproviders:4.28.2'

  • implementation 'com.kaltura.playkit:youboraplugin:4.28.2'

  • implementation 'com.kaltura.playkit:imaplugin:4.28.2'

  • implementation 'com.kaltura.playkit:kavaplugin:4.28.2'

  • implementation 'com.kaltura.playkit:vrplugin:4.28.2'

  • implementation 'com.kaltura.playkit:googlecast:4.28.2'

Samples

v4.28.1

05 Apr 13:53
Compare
Choose a tag to compare

Changes from v4.28.0

Bug Fixes

Plugin's Version

  • implementation 'com.kaltura.playkit:playkit:4.28.1'

  • implementation 'com.kaltura.playkit:playkitproviders:4.28.1'

  • implementation 'com.kaltura.playkit:youboraplugin:4.28.1'

  • implementation 'com.kaltura.playkit:imaplugin:4.28.1'

  • implementation 'com.kaltura.playkit:kavaplugin:4.28.1'

  • implementation 'com.kaltura.playkit:vrplugin:4.28.1'

  • implementation 'com.kaltura.playkit:googlecast:4.28.1'

Samples

v4.28.0

29 Mar 20:13
Compare
Choose a tag to compare

Changes from v4.27.0

Upgrades

New Features

  • KUXRN-3639 | new public API updateLoadControlBuffers to give application ability to update LoadControlBuffers of the player between media playbacks only
   /** Update LoadControlBuffers
     * <br>
     * Updating LoadControlBuffers in between one media playback to another if required like in case of Vod -> multicast
     * <br>
     * @param loadControlBuffers new LoadControlBuffers
     */
    void updateLoadControlBuffers(LoadControlBuffers loadControlBuffers);

Example:

player.updateLoadControlBuffers(new LoadControlBuffers().setMaxPlayerBufferMs(20000));
  • FEC-12974 | new public API that gives ability to disable/enable video|audio|text tracks (#170)
    Note: This API call be used only after the media was loaded to the player
    /** Disable/Enable VideoTracks from being fetched from the network after player is loaded with the media
     * @param isDisabled if video tracks should be enabled or disabled
     */
    void disableVideoTracks(boolean isDisabled);

    /** Disalbe/Enable AudioTracks from being fetched from the network after player is loaded with the media
     * @param isDisabled if audio tracks should be enabled or disabled
     */
    void disableAudioTracks(boolean isDisabled);

    /** Disalbe/Enable TextTracks from being fetched from the network after player is loaded with the media
     * @param isDisabled if text tracks should be enabled or disabled
     */
    void disableTextTracks(boolean isDisabled);

Example disable all tracks:

player.addListener(this, PlayerEvent.loadedMetadata, event -> {
     player.disableVideoTracks(true);
     player.disableAudioTracks(true);
     player.disableTextTracks(true);
});

Plugin's Version

  • implementation 'com.kaltura.playkit:playkit:4.28.0'

  • implementation 'com.kaltura.playkit:playkitproviders:4.28.0'

  • implementation 'com.kaltura.playkit:youboraplugin:4.28.0'

  • implementation 'com.kaltura.playkit:imaplugin:4.28.0'

  • implementation 'com.kaltura.playkit:kavaplugin:4.28.0'

  • implementation 'com.kaltura.playkit:vrplugin:4.28.0'

  • implementation 'com.kaltura.playkit:googlecast:4.28.0'

Samples

v4.27.0

05 Mar 09:46
Compare
Choose a tag to compare

Changes from v4.26.0

Bug Fixes

  • FEC-12958: fix multicast change media not performing stop api on TrackSelectionHelper (#798)

New Features

Plugin's Version

  • implementation 'com.kaltura.playkit:playkit:4.27.0'

  • implementation 'com.kaltura.playkit:playkitproviders:4.27.0'

  • implementation 'com.kaltura.playkit:youboraplugin:4.27.0'

  • implementation 'com.kaltura.playkit:imaplugin:4.27.0'

  • implementation 'com.kaltura.playkit:kavaplugin:4.27.0'

  • implementation 'com.kaltura.playkit:vrplugin:4.27.0'

  • implementation 'com.kaltura.playkit:googlecast:4.27.0'

Samples

v4.26.0

31 Jan 06:20
Compare
Choose a tag to compare

Changes from v4.25.0

New Features

  • FEC-12859 | Exposed API to handle lens/glass size for VR Medias (#796)
  • FEC-12865 | Exposed ability to pass post params on DRM license (#797)

Plugin's Version

  • implementation 'com.kaltura.playkit:playkit:4.26.0'

  • implementation 'com.kaltura.playkit:playkitproviders:4.26.0'

  • implementation 'com.kaltura.playkit:youboraplugin:4.26.0'

  • implementation 'com.kaltura.playkit:imaplugin:4.26.0'

  • implementation 'com.kaltura.playkit:kavaplugin:4.26.0'

  • implementation 'com.kaltura.playkit:vrplugin:4.26.0'

  • implementation 'com.kaltura.playkit:googlecast:4.26.0'

Samples

v4.25.0

06 Jan 10:06
Compare
Choose a tag to compare

Changes from v4.24.1

New Features

  • FEC-12338 ExoPlayer upgrade to v2.18.2 (#794)

    • compileSdkVersion and targetSdkVersion to 33
  • FEC-12722 | Added getCurrentMediaManifest API which returns nullable media manifest of the window.
    Manifest depends on the type of media being prepared. Must be called once the media preparation is complete (Means tracks are loaded)

Example:

Object mediaManifest = player.getCurrentMediaManifest();

if (mediaManifest instanceOf DashManifest) {
  DashManifest manifest = (DashManifest)mediaManifest;
  String utcTimingValue = manifest.getCurrentManifest()).utcTiming.value;

} else if (mediaManifest instanceOf HlsManifest) {
  HlsManifest manifest = (HlsManifest)mediaManifest;
}

Plugin's Version

  • implementation 'com.kaltura.playkit:playkit:4.25.0'

  • implementation 'com.kaltura.playkit:playkitproviders:4.25.0'

  • implementation 'com.kaltura.playkit:youboraplugin:4.25.0'

  • implementation 'com.kaltura.playkit:imaplugin:4.25.0'

  • implementation 'com.kaltura.playkit:kavaplugin:4.25.0'

  • implementation 'com.kaltura.playkit:vrplugin:4.25.0'

  • implementation 'com.kaltura.playkit:googlecast:4.25.0'

ExoPlayer v2.18.2

Samples

v4.24.1

01 Nov 05:19
Compare
Choose a tag to compare

Changes from v4.24.0

Bug Fix

  • FEC-12698 | Incase of UDP(Multicast) PlayheadUpdated(Timeupdate) event is not fired (#793)

Plugin's Version

  • implementation 'com.kaltura.playkit:playkit:4.24.1'

  • implementation 'com.kaltura.playkit:playkitproviders:4.24.1'

  • implementation 'com.kaltura.playkit:youboraplugin:4.24.1'

  • implementation 'com.kaltura.playkit:imaplugin:4.24.1'

  • implementation 'com.kaltura.playkit:fbadsplugin:4.24.1'

  • implementation 'com.kaltura.playkit:kavaplugin:4.24.1'

  • implementation 'com.kaltura.playkit:vrplugin:4.24.1'

  • implementation 'com.kaltura.playkit:googlecast:4.24.1'

ExoPlayer v2.17.1

Samples

v4.24.0

13 Sep 14:41
Compare
Choose a tag to compare

Changes from v4.23.0

Features

  • FEC-12227 | Add ability to give surface aspect ratio for the Ads (#789)

    Example:

    To set the resize mode,

    player.getSettings().setSurfaceAspectRatioResizeMode(PKAspectRatioResizeMode.zoom);

    To update the resize mode,

    player.updateSurfaceAspectRatioResizeMode(PKAspectRatioResizeMode.fit);

    Note

    • Aspect ratio passed for the Content will be applied same for the Ad view. So If Ad has AspectRatio applied then the same will applied for the content playback.
    • Breaking Change: getExoPlayerAspectRatioResizeMode is moved out from ExoPlayerView. Now it is part of PKAspectRatioResizeMode.
  • FEC-12367 | Subtitle Features (#788)

    • Added subtitle font fraction 1.75f.
       new SubtitleStyleSettings("CustomStyle")
                 .setTextSizeFraction(SubtitleStyleSettings.SubtitleTextSizeFraction.SUBTITLE_FRACTION_175);
    • Added ttml mimeType support for subtitles.
       PKExternalSubtitle pkExternalSubtitle = new PKExternalSubtitle()
                 .setUrl("subtitle_url")
                 .setMimeType(PKSubtitleFormat.ttml)
                 .setLabel("label")
                 .setLanguage("lang");

Bug Fix

  • FEC-12477 | Image track URL is incorrect in case first playback URL is redirected (#790)
    Apps can listen to PlayerEvent.sourceRedirected event. This event contains the redirected URL.

    player?.addListener(this, PlayerEvent.sourceRedirected) { event ->
            log.d("sourceRedirected : ${event.redirectedUrl}")
    }
  • FEC-12321 | Offline: checkAssetStatus is not returning correct status for Clear media asset served with DRM license (#786)

  • FEC-12349 | Fixed the validation while updating low latency config (#787)

  • FEC-12367 | Fixed Subtitle Position's alignment issue (#788)

  • FEC-12535 | Trickplay video tracks are being ignored internally at the time of tracks' preparation (#791)

Plugin's Version

  • implementation 'com.kaltura.playkit:playkit:4.24.0'

  • implementation 'com.kaltura.playkit:playkitproviders:4.24.0'

  • implementation 'com.kaltura.playkit:youboraplugin:4.24.0'

  • implementation 'com.kaltura.playkit:imaplugin:4.24.0'

  • implementation 'com.kaltura.playkit:fbadsplugin:4.24.0'

  • implementation 'com.kaltura.playkit:kavaplugin:4.24.0'

  • implementation 'com.kaltura.playkit:vrplugin:4.24.0'

  • implementation 'com.kaltura.playkit:googlecast:4.24.0'

ExoPlayer v2.17.1

Samples