infobip-rtc
Version:
Infobip RTC JavaScript SDK - Infobip WebRTC API Implementation
52 lines (51 loc) • 2.28 kB
TypeScript
import "webrtc-adapter";
import { CameraOrientation } from "../call/options/CameraOrientation";
import { Device } from "./Device";
import { Logger } from "../log/Logger";
import { DisplayOptions } from "../call/options/DisplayOptions";
declare global {
interface MediaDevices {
getDisplayMedia(constraints?: MediaStreamConstraints): Promise<MediaStream>;
}
interface MediaTrackConstraintSet {
cursor?: "always" | "motion" | "never";
displaySurface?: "browser" | "monitor" | "window";
logicalSurface?: ConstrainBoolean;
}
}
export declare class DefaultDevice implements Device {
private logger;
private deviceKindNames;
private audioInputDevice;
private videoInputDevice;
private cameraOrientation;
private static CAMERA_VIDEO_FPS_DEFAULT;
private static SCREEN_SHARE_FPS_DEFAULT;
constructor(logger: Logger);
getAudioInputDevices(): Promise<MediaDeviceInfo[]>;
getAudioOutputDevices(): Promise<MediaDeviceInfo[]>;
getVideoInputDevices(): Promise<MediaDeviceInfo[]>;
setAudioInputDevice(id: string): void;
unsetAudioInputDevice(): void;
getAudioInputDevice(): string;
audioInputDeviceShouldChange(): Promise<boolean>;
setVideoInputDevice(id: string): void;
unsetVideoInputDevice(): void;
getVideoInputDevice(): string;
getCameraOrientation(): CameraOrientation;
getLocalStream(audio?: boolean, video?: boolean, cameraOrientation?: CameraOrientation, hdResolution?: boolean, useExactDevice?: boolean, cameraVideoFrameRate?: number): Promise<MediaStream>;
getDisplayMedia(displayOptions?: DisplayOptions, screenShareFrameRate?: number): Promise<MediaStream>;
protected getMicrophoneDefaults: () => MediaTrackConstraintSet;
protected getCameraDefaults: (hdResolution?: boolean, cameraVideoFrameRate?: number) => MediaTrackConstraintSet;
protected getScreenShareDefaults: (screenShareFrameRate?: number) => MediaTrackConstraintSet;
private getAudioConstraints;
private getVideoConstraints;
private getDeviceConstraint;
private getDevices;
private filterDevices;
private getUserMediaDevices;
private enumerateDevices;
private stopTracks;
private updateDevices;
private generateCustomMediaDeviceInfo;
}