UNPKG

media-stream-player

Version:

Player built on top of media-stream-library

59 lines (58 loc) 2.08 kB
import React, { Ref } from 'react'; import { Html5CanvasPipeline, Html5VideoPipeline, HttpMsePipeline, Rtcp, Sdp, TransformationMatrix } from 'media-stream-library'; import { MetadataHandler } from './metadata'; import { Format } from './types'; export type PlayerNativeElement = HTMLVideoElement | HTMLCanvasElement | HTMLImageElement; export type PlayerPipeline = Html5VideoPipeline | Html5CanvasPipeline | HttpMsePipeline; export declare enum AxisApi { AXIS_IMAGE_CGI = "AXIS_IMAGE_CGI", AXIS_MEDIA_AMP = "AXIS_MEDIA_AMP", AXIS_MEDIA_CGI = "AXIS_MEDIA_CGI", AXIS_MJPEG_CGI = "AXIS_MJPEG_CGI" } export declare enum Protocol { HTTP = "http:", HTTPS = "https:", WS = "ws:", WSS = "wss:" } export declare const FORMAT_API: Record<Format, AxisApi>; export interface VapixParameters { readonly [key: string]: string; } export type Range = readonly [number | undefined, number | undefined]; export interface VideoProperties { readonly el: PlayerNativeElement; readonly width: number; readonly height: number; readonly formatSupportsAudio: boolean; readonly pipeline?: PlayerPipeline; readonly media?: ReadonlyArray<{ readonly type: 'video' | 'audio' | 'data'; readonly mime: string; }>; readonly volume?: number; readonly range?: Range; readonly sensorTm?: TransformationMatrix; } interface PlaybackAreaProps { readonly forwardedRef?: Ref<PlayerNativeElement>; readonly host: string; readonly format: Format; readonly parameters?: VapixParameters; readonly play?: boolean; readonly offset?: number; readonly refresh: number; readonly onPlaying: (properties: VideoProperties) => void; readonly onEnded?: () => void; readonly onSdp?: (msg: Sdp) => void; readonly onRtcp?: (msg: Rtcp) => void; readonly metadataHandler?: MetadataHandler; readonly secure?: boolean; /** * Activate automatic retries on RTSP errors. */ readonly autoRetry?: boolean; } export declare const PlaybackArea: React.FC<PlaybackAreaProps>; export {};