Skip to main content
Skip table of contents

Key-per-track content

A key-per-track content stream consists of multiple tracks, where some tracks use different keys than others. It can be played in one of two ways, depending on how the licence server is configured.

Licence server responds with all keys for the content

The licence server is configured so that when it receives a request for one key, it responds with all keys for the content. The player handles this without any special configuration.

Licence server responds with the requested key only

In this case, the licence server is configured to respond with only the key specified in the request. To play streams like this, multisession must be enabled (see Enabling multisession below).

Enabling multisession

When using custom DRM callbacks with theOTVMediaDrmCallbackinterface, this is done in the implementation of the isMultiSession() method.

JAVA
import nagra.otv.sdk.drm.OTVMediaDrmCallback;

public class CustomDrmCallback implements OTVMediaDrmCallback {
    …
    public boolean isMultisession() {
        return true;
    }
    …
}

If using the convenience callbacks that have OTVCommonMediaDrmCallback as a parent, it can be set with setMultiSession().

JAVA
import nagra.otv.sdk.drm.OTVCommonMediaDrmCallback;
import nagra.otv.sdk.drm.OTVHttpMediaDrmCallback;

public class MediaPlayer {
    …
    public MediaPlayer() {
        …
        OTVCommonMediaDrmCallback callback = new OTVHttpMediaDrmCallback();
        callback.setMultiSession(true);
        …
    }
    …
}

Offline playback

As only one licence is stored for offline playback, key-per-track content configured for the licence server responds with the requested key only is currently unsupported.

JavaScript errors detected

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

If this problem persists, please contact our support.