@phenixrts/sdk
Version:
JavaScript SDK
36 lines (35 loc) • 1.24 kB
TypeScript
import { ChunkedStreamingStatistics } from './StreamTypes';
export interface IHlsPlayerType {
media: HTMLVideoElement;
streamController: {
state: 'STOPPED' | 'STARTING' | 'IDLE' | 'PAUSED' | 'KEY_LOADING' | 'FRAG_LOADING' | 'FRAG_LOADING_WAITING_RETRY' | 'WAITING_TRACK' | 'PARSING' | 'PARSED' | 'BUFFER_FLUSHING' | 'ENDED' | 'ERROR' | 'WAITING_INIT_PTS' | 'WAITING_LEVEL';
};
HlsPlayer(): void;
isSupported(): boolean;
destroy(): void;
loadSource: (url: string) => void;
attachMedia: (videoElement: HTMLVideoElement) => void;
Events: {
FRAG_BUFFERED: string;
VIDEO_TRACK_LOADED: string;
FRAG_LOADED: string;
};
}
export type HlsPlayerConfig = {
enableWorker: boolean;
maxBufferLength: number;
backBufferLength: number;
liveSyncDuration: number;
liveMaxLatencyDuration: number;
liveDurationInfinity: boolean;
highBufferWatchdogPeriod: number;
};
export type HlsPlayerType = {
new (config: HlsPlayerConfig): IHlsPlayerType;
isSupported(): boolean;
loadSource: (url: string) => void;
attachMedia: (videoElement: HTMLVideoElement) => void;
dispose(): void;
destroy(): void;
getStats(): ChunkedStreamingStatistics;
};