playable
Version:
Video player based on HTML5Video
51 lines (50 loc) • 1.85 kB
TypeScript
import { MediaStreamType, MediaStreamDeliveryPriority } from '../constants';
import { IPlaybackAdapter } from '../modules/playback-engine/output/native/adapters/types';
import { IEventEmitter } from '../modules/event-emitter/types';
import { IParsedPlayableSource } from '../modules/playback-engine/types';
export default class HlsAdapter implements IPlaybackAdapter {
static DEFAULT_HLS_CONFIG: any;
static isSupported(): boolean;
private eventEmitter;
private hls;
private videoElement;
private mediaStream;
private _mediaRecoverTimeout;
private _networkRecoverTimeout;
private _isDynamicContent;
private _isDynamicContentEnded;
private _isAttached;
constructor(eventEmitter: IEventEmitter);
private _bindCallbacks;
get currentUrl(): string;
get syncWithLiveTime(): number;
get isDynamicContent(): boolean;
get isDynamicContentEnded(): boolean;
get isSyncWithLive(): boolean;
get isSeekAvailable(): boolean;
get mediaStreamDeliveryPriority(): MediaStreamDeliveryPriority.ADAPTIVE_VIA_MSE | MediaStreamDeliveryPriority.FORCED;
get debugInfo(): {
bwEstimate: number;
deliveryPriority: MediaStreamDeliveryPriority;
bitrates: any;
currentBitrate: any;
overallBufferLength: number;
nearestBufferSegInfo: {
start: number;
end: number;
};
url: string;
type: MediaStreamType;
};
canPlay(mediaType: MediaStreamType): boolean;
setMediaStreams(mediaStreams: IParsedPlayableSource[]): void;
private _logError;
private _broadcastError;
private _tryRecoverMediaError;
private _tryRecoverNetworkError;
private _attachOnPlay;
private _onLevelUpdated;
private _onEndOfStream;
attach(videoElement: HTMLVideoElement): void;
detach(): void;
}