@tencentcloud/roomkit-web-vue3
Version:
<h1 align="center"> TUIRoomKit</h1> Conference (TUIRoomKit) is a product suitable for multi-person audio and video conversation scenarios such as business meetings, webinars, and online education. By integrating this product, you can add room management,
49 lines (47 loc) • 1.43 kB
TypeScript
import { TUIVideoStreamType } from '../../../../node_modules/@tencentcloud/tuiroom-engine-js';
import { IRoomService } from '../types';
interface ObserverData {
userId: string;
streamType: TUIVideoStreamType;
isIntersection?: boolean;
}
export declare enum StreamPlayMode {
PLAY = "play",
STOP = "stop",
PLAY_IN_VISIBLE = "playInVisible"
}
export declare enum StreamPlayQuality {
HIGH = "high",
LOW = "low",
Default = "default"
}
export declare class MediaManager {
private service;
intersectionObserver: IntersectionObserver | null;
observerDataMap: Map<HTMLElement | string, ObserverData>;
observerRoot: HTMLElement | null;
constructor(service: IRoomService);
startPlayVideo(options: {
userId: string;
streamType: TUIVideoStreamType;
view: HTMLElement;
observerViewInVisible: boolean;
}): Promise<void>;
stopPlayVideo(options: {
userId: string;
streamType: TUIVideoStreamType;
view: HTMLElement;
}): Promise<void>;
private initIntersectionObserver;
private intersectionObserverCallback;
private getPlayStreamType;
private doStartPlayVideo;
private setVideoRenderParams;
private doStopPlayVideo;
private onUserAudioStateChanged;
private onUserVideoStateChanged;
dispose(): void;
private bindRoomEngineEvents;
private unbindRoomEngineEvents;
}
export {};