@phenixrts/sdk
Version:
JavaScript SDK
37 lines (36 loc) • 1.02 kB
TypeScript
import { ChunkedStreamingStatistics } from './StreamTypes';
export type ShakaOptions = {
abr: {
defaultBandwidthEstimate: number;
};
manifest: {
retryParameters: {
timeout: number;
};
};
streaming: {
liveSyncPanicThreshold: number;
bufferingGoal: number;
bufferBehind: number;
retryParameters: {
timeout: number;
maxAttempts: number;
backoffFactor: number;
};
};
};
export interface IShakaPlayer {
configure: (o: ShakaOptions) => void;
load: (uri: string) => Promise<void>;
getStats: () => ChunkedStreamingStatistics;
addEventListener: (key: string, callback: () => void) => void;
removeEventListener: (key: string, callback: () => void) => void;
destroy: () => void;
unload: () => void;
}
export interface IShakaConstructable<T> {
new (videoElement: HTMLVideoElement): T;
}
export type ShakaPlayerType = {
Player: IShakaConstructable<IShakaPlayer>;
};