@byomakase/omakase-player
Version:
## Omakase Player - Open source JavaScript framework for building frame accurate video experiences
24 lines (23 loc) • 1.25 kB
TypeScript
import { Observable } from 'rxjs';
import { Destroyable, OmakaseTextTrack, VideoFullscreenChangeEvent, VideoSafeZoneChangeEvent } from '../types';
import { VideoSafeZone } from './model';
import { VideoControllerApi } from './video-controller-api';
export interface VideoDomControllerApi extends Destroyable {
attachVideoController(videoController: VideoControllerApi): void;
onFullscreenChange$: Observable<VideoFullscreenChangeEvent>;
onVideoSafeZoneChange$: Observable<VideoSafeZoneChangeEvent>;
getVideoElement(): HTMLVideoElement;
getAudioUtilElement(): HTMLAudioElement;
isFullscreen(): boolean;
toggleFullscreen(): Observable<void>;
addSafeZone(videoSafeZone: VideoSafeZone): Observable<VideoSafeZone>;
removeSafeZone(id: string): Observable<void>;
clearSafeZones(): Observable<void>;
getSafeZones(): VideoSafeZone[];
setSafeZoneAspectRatio(aspectRatio: string): Observable<void>;
appendHTMLTrackElement(omakaseTextTrack: OmakaseTextTrack): Observable<HTMLTrackElement | undefined>;
getTextTrackList(): TextTrackList | undefined;
getTextTrackById(id: string): TextTrack | undefined;
removeTextTrackById(id: string): boolean;
loadThumbnailVtt(thumbnailVttUrl: string): void;
}