UNPKG

bitmovin-player-react-native

Version:

Official React Native bindings for Bitmovin's mobile Player SDKs.

58 lines 2.16 kB
/** * Represents a Widevine Streaming DRM config. * @remarks Platform: Android, iOS (only for casting). */ export interface WidevineConfig { /** * The DRM license acquisition URL. */ licenseUrl: string; /** * A map containing the HTTP request headers, or null. */ httpHeaders?: Record<string, string>; /** * A block to prepare the data which is sent as the body of the POST license request. * As many DRM providers expect different, vendor-specific messages, this can be done using * this user-defined block. * * Note that both the passed `message` data and this block return value should be a Base64 string. * So use whatever solution suits you best to handle Base64 in React Native. * * @remarks Platform: Android * * @param message - Base64 encoded message data. * @returns The processed Base64 encoded message. */ prepareMessage?: (message: string) => string; /** * A block to prepare the loaded CKC Data before passing it to the system. This is needed if the * server responds with anything else than the license, e.g. if the license is wrapped into a JSON * object. * * Note that both the passed `license` data and this block return value should be a Base64 string. * So use whatever solution suits you best to handle Base64 in React Native. * * @remarks Platform: Android * * @param license - Base64 encoded license data. * @returns The processed Base64 encoded license. */ prepareLicense?: (license: string) => string; /** * Set widevine's preferred security level. * * @remarks Platform: Android */ preferredSecurityLevel?: string; /** * Indicates if the DRM sessions should be kept alive after a source is unloaded. * This allows DRM sessions to be reused over several different source items with the same DRM configuration as well * as the same DRM scheme information. * Default: `false` * * @remarks Platform: Android */ shouldKeepDrmSessionsAlive?: boolean; } //# sourceMappingURL=widevineConfig.d.ts.map