The CONNECT Player SDK 5 for Android enables you to embed the player within an existing or new native Java or Kotlin application. The SDK wraps and extends the media player API, providing a similar interface to the Android Video view.

Supported versions and formats

Supported OS VersionsAdaptive Streaming FormatDRMAudio/Video ContainerEncrypt MethodBlock/Cypher
Android 5.x (Lollipop) onwardsDASHWidevine
PlayReady
ISOBMFF/F-MP4CENCAES 128 CTR
HLSPRMMPEG2-TSAES 128AES 128 CBC

Supported audio and video codecs

Video codecAudio codecComments
H.264AAC-LC
HE-AAC

H.265AAC-LC
HE-AAC
Only where the hardware supports H.265 decoding

SDK file contents

NAGRA supplies two variants of the SDK library, one for Multi-DRM and another with additional support for NAGRA PRM.

Multi-DRM SDK

The Multi-DRM version of the Android SDK 5 package contains the following files:

NAGRA PRM SDK

If you have requested Playback of PRM encrypted content (Software PRM) support, PRM versions of the above files will be supplied:

  • opy-sdk-android-5.20.x.x-example-code-prm.zip
    This contains code examples to demonstrate the PRM features of the CONNECT Player; see the PRM Example Code Quick Start guide.
  • opy-sdk-android-5.20.x.x-sdk-prm-integration.aar
    This file is used for integration activities.
  • opy-sdk-android-5.20.x.x-sdk-prm-production.aar
    This file replaces the integration version when the application is ready to be deployed.

The PRM Operational Vault file opvault.json is provided separately.

Additional files

The following files are also typically provided:

  • opy-sdk-android-5.20.x.x-example-code-kotlin.zip
    This contains Kotlin code examples of the CONNECT Player; see the Kotlin Example Code Quick Start guide.
  • opy-sdk-android-5.20.x.x-example-code-upi.zip
    This contains code examples to demonstrate the features of the CONNECT Player using the Unified Player Interface (UPI).
  • opy-sdk-android-5.20.x.x-javadoc.zip
    This contains the API files; see Android SDK 5 APIs.
  • opy-sdk-android-5.20.x.x-insight-agent.aar
    This is an additional library for reporting statistics to an Insight server; see Insight analytics.

Dependencies

The table below lists the external library dependencies for integrating the SDK and its features. Dependencies for other features are listed under the relevant feature description.

DependencyVersionRequired for
androidx.appcompat:appcompat 1.2.0 Android X general support 
com.google.guava:guava 27.1-android Google Java Core Libraries 
androidx.room:room-runtime 2.2.5

Offline playback feature 

com.google.protobuf:protobuf-lite 3.0.1 Handling Widevine-encrypted content 
com.google.ads.interactivemedia.v3:interactivemedia 3.20.1 Playing Google IMA ads 
com.google.android.gms:play-services-ads-identifier 17.0.0Playing Google IMA ads 
insight-agent 1.2.2NAGRA Insight agent for collecting statistics

Build configuration and tool parameters

To build an application with this SDK, the following have to be configured in your Gradle file(s):

Configuration item Configuration value 
compileSdkVersion31 or higher
minSdkVersion21 or higher 

Recommended tools versions

ToolRecommended version
Java JDK11
Gradle7.3.2
Android Gradle Plugin7.0.4

Open-source usage

The following third-party software is used and embedded within the CONNECT Player SDK 5 for Android.

Open-sourceVersionLicenceWebsite
exo-player2.16.1Apache V2.0https://github.com/google/ExoPlayer/blob/release-v2/LICENSE
Java-side open-source libraries
protobuf-lite3.0.1MIThttps://github.com/elderapo/protobuf-lite/blob/master/LICENSE
guava27.1-androidApache V2.0https://github.com/google/guava/blob/master/COPYING