agora-meeting-sdk
Version:
For publishing npm package agora-metting-sdk (Web). Get more information from https://docs.agora.io
78 lines (77 loc) • 2.56 kB
TypeScript
import { VideoPlayerConfig, IRemoteVideoTrack, ILocalVideoTrack, ILocalAudioTrack, IRemoteAudioTrack } from 'agora-rtc-sdk-ng';
import { AgoraElectronRTCWrapper } from '../electron';
import { MediaService } from '../index';
import { AgoraWebRtcWrapper } from '../web';
declare type SourceType = 'default' | 'screen';
export declare enum RemoteVideoRenderState {
Init = 0,
Playing = 1,
Failed = 2
}
export declare enum LocalVideoRenderState {
Init = 0,
Playing = 1,
Failed = 2
}
export interface IMediaRenderer {
context: MediaService;
_playing: boolean;
local: boolean;
sourceType: SourceType;
uid: any;
channel: any;
videoTrack?: IRemoteVideoTrack | ILocalVideoTrack;
audioTrack?: ILocalAudioTrack | IRemoteAudioTrack;
play(dom: HTMLElement, config?: VideoPlayerConfig): void;
stop(isPreview?: boolean): void;
}
export interface UserRendererInit {
context: MediaService;
uid: any;
channel: any;
videoTrack?: IRemoteVideoTrack | ILocalVideoTrack;
audioTrack?: ILocalAudioTrack | IRemoteAudioTrack;
sourceType: SourceType;
}
export declare abstract class UserRenderer implements IMediaRenderer {
el: HTMLElement | HTMLCanvasElement | undefined;
context: MediaService;
_playing: boolean;
local: boolean;
sourceType: SourceType;
uid: any;
channel: any;
videoTrack?: IRemoteVideoTrack | ILocalVideoTrack;
audioTrack?: ILocalAudioTrack | IRemoteAudioTrack;
uuid: string;
constructor(config: UserRendererInit);
play(dom: HTMLElement, config?: VideoPlayerConfig): void;
stop(): void;
get isWeb(): boolean;
get isElectron(): boolean;
get web(): AgoraWebRtcWrapper;
get electron(): AgoraElectronRTCWrapper;
}
export declare class LocalUserRenderer extends UserRenderer {
el: HTMLElement | HTMLCanvasElement | undefined;
renderFrameRate: number;
freezeCount: number;
renderState: LocalVideoRenderState;
constructor(config: UserRendererInit);
setFPS(fps: number): void;
play(dom: HTMLElement, config?: VideoPlayerConfig): void;
stop(isPreview?: boolean): void;
getUuid(): string;
}
export declare class RemoteUserRenderer extends UserRenderer {
el: HTMLElement | HTMLCanvasElement | undefined;
renderFrameRate: number;
freezeCount: number;
renderState: RemoteVideoRenderState;
constructor(config: UserRendererInit);
setFPS(fps: number): void;
play(dom: HTMLElement, config?: VideoPlayerConfig): void;
stop(): void;
getUuid(): string;
}
export {};