matrix-js-sdk
Version:
Matrix Client-Server SDK for Javascript
72 lines • 2.1 kB
TypeScript
import { TrackId } from "./mediaTrackHandler";
export interface PacketLoss {
packetsTotal: number;
packetsLost: number;
isDownloadStream: boolean;
}
export interface Bitrate {
/**
* bytes per second
*/
download: number;
/**
* bytes per second
*/
upload: number;
}
export interface Resolution {
width: number;
height: number;
}
export type TrackStatsType = "local" | "remote";
export declare class MediaTrackStats {
readonly trackId: TrackId;
readonly type: TrackStatsType;
readonly kind: "audio" | "video";
private loss;
private bitrate;
private resolution;
private framerate;
private jitter;
private codec;
private isAlive;
private isMuted;
private isEnabled;
constructor(trackId: TrackId, type: TrackStatsType, kind: "audio" | "video");
getType(): TrackStatsType;
setLoss(loos: PacketLoss): void;
getLoss(): PacketLoss;
setResolution(resolution: Resolution): void;
getResolution(): Resolution;
setFramerate(framerate: number): void;
getFramerate(): number;
setBitrate(bitrate: Bitrate): void;
getBitrate(): Bitrate;
setCodec(codecShortType: string): boolean;
getCodec(): string;
resetBitrate(): void;
set alive(isAlive: boolean);
/**
* A MediaTrackState is alive if the corresponding MediaStreamTrack track bound to a transceiver and the
* MediaStreamTrack is in state MediaStreamTrack.readyState === live
*/
get alive(): boolean;
set muted(isMuted: boolean);
/**
* A MediaTrackState.isMuted corresponding to MediaStreamTrack.muted.
* But these values only match if MediaTrackState.isAlive.
*/
get muted(): boolean;
set enabled(isEnabled: boolean);
/**
* A MediaTrackState.isEnabled corresponding to MediaStreamTrack.enabled.
* But these values only match if MediaTrackState.isAlive.
*/
get enabled(): boolean;
setJitter(jitter: number): void;
/**
* Jitter in milliseconds
*/
getJitter(): number;
}
//# sourceMappingURL=mediaTrackStats.d.ts.map