@phenixrts/sdk
Version:
JavaScript SDK
40 lines (39 loc) • 1.1 kB
TypeScript
import { ChunkedStreamingStatistics } from './StreamTypes';
import { ILogger } from '../../logger/LoggerInterface';
type WebPlayerEvent = {
code: number;
severity: number;
error: string;
};
type EventListenerForWebPlayer = (event: WebPlayerEvent) => void;
export interface IWebPlayerConstructable<T> {
new (logger: ILogger, videoElement: HTMLVideoElement, playerOptions: {
preferNative?: boolean;
originStartTime: number;
lag: number;
bandwidthToStartAt: number;
}): T;
}
export interface IWebPlayer {
WebPlayer: IWebPlayerConstructable<IWebPlayer>;
start: (url: string) => void;
addEventListener(name: string, listener: EventListenerForWebPlayer): void;
dispose(): void;
isSupported: boolean;
errors: {
severity: {
RECOVERABLE: number;
};
};
getStats(): ChunkedStreamingStatistics;
}
export type WebPlayerType = {
WebPlayer: IWebPlayerConstructable<IWebPlayer>;
isSupported: boolean;
errors: {
severity: {
RECOVERABLE: number;
};
};
};
export {};