UNPKG

pssh-tools

Version:

Tools to generate PSSH Data and PSSH Box

52 lines (51 loc) 1.31 kB
/// <reference types="node" /> type Omit<K, KEY extends keyof K> = Pick<K, Exclude<keyof K, KEY>>; export interface WidevineEncodeConfig { contentId: string; dataOnly: boolean; keyIds?: string[]; provider?: string; protectionScheme?: string; trackType?: string; } export type WidevineDataEncodeConfig = Omit<WidevineEncodeConfig, 'dataOnly'>; export interface KeyPair { kid: string; key: string; } export interface PlayReadyEncodeConfig { keyPairs?: KeyPair[]; licenseUrl?: string; keySeed?: string; compatibilityMode: boolean; dataOnly: boolean; checksum?: boolean; } export type PlayReadyDataEncodeConfig = Omit<PlayReadyEncodeConfig, 'dataOnly'>; export interface HeaderConfig { systemId: string; keyIds?: string[]; data: string; } export interface PlayReadyData { recordSize: number; recordType: number; recordXml: string; } export interface WidevineData { widevineKeyCount?: number; keyId?: string[]; provider?: string; contentId?: string; } export type PsshData = PlayReadyData | WidevineData; export interface DecodeResult { keyIds?: string[]; dataObject?: PsshData; systemId?: Buffer; systemName?: string; version?: number; keyCount?: number; printPssh?: Function; } export {};