Skip to main content
Skip table of contents

NAGRA PRM Extension for Media3

The NAGRA PRM extension for Media3 enables you to play NAGRA PRM encrypted HLS streams within an existing or new native Java or Kotlin application. The extension extends the Media3 MediaSource APIs to provide smooth integration.

Supported versions and formats

Supported OS Versions

Adaptive Streaming

DRM

Audio/Video Container

Encrypt Method

Block/Cypher

Android 5.x (Lollipop) onwards

HLS

PRM*

MPEG2-TS

AES 128

AES 128 CBC

* For PRM support, a PRM version of the Extension library is required.

Supported audio and video codecs

Video codec

Audio codec

Comments

H.264

AAC-LC
HE-AAC

H.265

AAC-LC
HE-AAC

Only where the hardware supports H.265 decoding

SDK file contents

NAGRA supplies two variants of the SDK library, one including a PRM decryption module (coming soon, software decryption) and one without (hardware decryption).

If the device has built-in hardware decryption capabilities, the non-PRM version of the library should be used.

If you have requested software NAGRA PRM support, the following PRM versions of the above files will be supplied:

  • media3-prm-extension-<version>-example-code-prm.zip

  • media3-prm-extension-<version>-sdk-prm-integration.zip

  • media3-prm-extension-<version>-sdk-prm-production.zip

In addition, the PRM Operational Vault file opvault.json is also provided.

Open-source usage

The following third-party software is used and embedded within Nagra PRM extension for Media3.

  • media3:lib-exoplayer-hls: classes are modified, renamed, and repackaged from 'androidx.media3.exoplayer.hls' to 'com.nagra.prm.hls'.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.