androidx.media3.exoplayer.drm


Interfaces

DrmSession

A DRM session.

DrmSessionEventListener

Listener of DrmSessionManager events.

DrmSessionManager

Manages a DRM session.

DrmSessionManager.DrmSessionReference

Represents a single reference count of a DrmSession, while deliberately not giving access to the underlying session.

DrmSessionManagerProvider

A provider to obtain a DrmSessionManager suitable for playing the content described by a MediaItem.

ExoMediaDrm

Used to obtain keys for decrypting protected media streams.

ExoMediaDrm.OnEventListener

Called when a DRM event occurs.

ExoMediaDrm.OnExpirationUpdateListener

Called when a session expiration update occurs.

ExoMediaDrm.OnKeyStatusChangeListener

Called when the keys in a DRM session change state.

ExoMediaDrm.Provider

Provider for ExoMediaDrm instances.

MediaDrmCallback

Performs ExoMediaDrm key and provisioning requests.

Classes

DefaultDrmSessionManager

A DrmSessionManager that supports playbacks using ExoMediaDrm.

DefaultDrmSessionManager.Builder

Builder for DefaultDrmSessionManager instances.

DefaultDrmSessionManagerProvider

Default implementation of DrmSessionManagerProvider.

DrmSessionEventListener.EventDispatcher

Dispatches events to DrmSessionEventListeners.

DrmUtil

DRM-related utility methods.

DummyExoMediaDrm

An ExoMediaDrm that does not support any protection schemes.

ErrorStateDrmSession

A DrmSession that's in a terminal error state.

ExoMediaDrm.AppManagedProvider

Provides an ExoMediaDrm instance owned by the app.

ExoMediaDrm.KeyRequest

Contains data used to request keys from a license server.

ExoMediaDrm.KeyStatus

Defines the status of a key.

ExoMediaDrm.ProvisionRequest

Contains data to request a certificate from a provisioning server.

FrameworkCryptoConfig

A CryptoConfig for CRYPTO_TYPE_FRAMEWORK.

FrameworkMediaDrm

An ExoMediaDrm implementation that wraps the framework MediaDrm.

HttpMediaDrmCallback

A MediaDrmCallback that makes requests using DataSource instances.

LocalMediaDrmCallback

A MediaDrmCallback that provides a fixed response to key requests.

OfflineLicenseHelper

Helper class to download, renew and release offline licenses.

WidevineUtil

Utility methods for Widevine.

Exceptions

DefaultDrmSessionManager.MissingSchemeDataException

Signals that the drmInitData passed to acquireSession does not contain scheme data for the required UUID.

DrmSession.DrmSessionException

Wraps the throwable which is the cause of the error state.

KeysExpiredException

Thrown when the drm keys loaded into an open session expire.

MediaDrmCallbackException

Thrown when an error occurs while executing a DRM key or provisioning request.

UnsupportedDrmException

Thrown when the requested DRM scheme is not supported.

Annotations

DefaultDrmSessionManager.Mode

Determines the action to be done after a session acquired.

DrmSession.State

The state of the DRM session.

DrmUtil.ErrorSource

Identifies the operation which caused a DRM-related error.

ExoMediaDrm.KeyRequest.RequestType

Key request types.

UnsupportedDrmException.Reason

The reason for the exception.