Package-level declarations

Types

Link copied to clipboard
class Device(val type: DeviceTypes, val securityLevel: Int, val flags: Map<String, Any?>, val privateKeyDer: ByteArray, val clientId: ClientIdentification, val vmp: FileHashes?, val systemId: Int, val rawFlags: Int = 0)

Kotlin Multiplatform representation of a Widevine Device file (WVD). Supports the v2 structure used by pywidevine; v1 blobs can be brought forward with migrate.

Link copied to clipboard

Types of Widevine devices supported by this library.

Link copied to clipboard
class Key(val type: License.KeyContainer.KeyType, val kid: Uuid, val key: ByteArray, val permissions: List<String> = emptyList())

Decrypted content key from a Widevine License. Holds key type, KID (as UUID), raw key bytes, and optional permissions for OPERATOR_SESSION keys.

Link copied to clipboard
object Manifests

Pulls PSSH boxes out of DASH and HLS manifests.

Link copied to clipboard
class PSSH

Helper for parsing and building PSSH (Protection System Specific Header) boxes. Supports both Widevine and PlayReady headers and provides conversions.