@whereby.com/media 2.0.0 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +1880 -1870
- package/dist/index.d.cts +110 -80
- package/dist/index.d.mts +110 -80
- package/dist/index.d.ts +110 -80
- package/dist/index.mjs +1880 -1870
- package/dist/legacy-esm.js +1880 -1870
- package/package.json +1 -1
package/dist/index.d.cts
CHANGED
|
@@ -2,6 +2,100 @@ import { Device } from 'mediasoup-client';
|
|
|
2
2
|
import EventEmitter, { EventEmitter as EventEmitter$1 } from 'events';
|
|
3
3
|
import { RtpCapabilities } from 'mediasoup-client/lib/RtpParameters';
|
|
4
4
|
|
|
5
|
+
interface MediaStreamTrackWithDenoiserContext extends MediaStreamTrack {
|
|
6
|
+
_denoiserCtx?: AudioContext;
|
|
7
|
+
}
|
|
8
|
+
interface StatsClient {
|
|
9
|
+
id: string;
|
|
10
|
+
clientId: string;
|
|
11
|
+
isLocalClient?: boolean;
|
|
12
|
+
isAudioOnlyModeEnabled?: boolean;
|
|
13
|
+
audio: {
|
|
14
|
+
enabled?: boolean;
|
|
15
|
+
track?: MediaStreamTrackWithDenoiserContext;
|
|
16
|
+
};
|
|
17
|
+
video: {
|
|
18
|
+
enabled?: boolean;
|
|
19
|
+
track?: MediaStreamTrack;
|
|
20
|
+
};
|
|
21
|
+
isPresentation?: boolean;
|
|
22
|
+
}
|
|
23
|
+
type PressureRecord = {
|
|
24
|
+
source: string;
|
|
25
|
+
state: string;
|
|
26
|
+
time: number;
|
|
27
|
+
};
|
|
28
|
+
interface TrackStats {
|
|
29
|
+
startTime: number;
|
|
30
|
+
updated: number;
|
|
31
|
+
ssrcs: Record<number, SsrcStats>;
|
|
32
|
+
}
|
|
33
|
+
interface ViewStats {
|
|
34
|
+
startTime?: number;
|
|
35
|
+
updated?: number;
|
|
36
|
+
pressure?: PressureRecord | null;
|
|
37
|
+
candidatePairs: Record<string, CandidatePairStats>;
|
|
38
|
+
tracks: Record<string, TrackStats>;
|
|
39
|
+
}
|
|
40
|
+
interface CandidatePairStats {
|
|
41
|
+
active?: boolean;
|
|
42
|
+
id: string;
|
|
43
|
+
inactiveFromTime?: number;
|
|
44
|
+
lastRtcStatsTime?: number;
|
|
45
|
+
startTime: number;
|
|
46
|
+
state?: string;
|
|
47
|
+
turnProtocol?: string;
|
|
48
|
+
usingTurn?: boolean;
|
|
49
|
+
}
|
|
50
|
+
interface SsrcStats {
|
|
51
|
+
startTime: number;
|
|
52
|
+
updated: number;
|
|
53
|
+
pcIndex: number;
|
|
54
|
+
direction?: string;
|
|
55
|
+
bitrate?: number;
|
|
56
|
+
fractionLost?: number;
|
|
57
|
+
height?: number;
|
|
58
|
+
lossRatio?: number;
|
|
59
|
+
pliRate?: number;
|
|
60
|
+
fps?: number;
|
|
61
|
+
audioLevel?: number;
|
|
62
|
+
audioConcealment?: number;
|
|
63
|
+
audioDeceleration?: number;
|
|
64
|
+
audioAcceleration?: number;
|
|
65
|
+
sourceHeight?: number;
|
|
66
|
+
jitter?: number;
|
|
67
|
+
roundTripTime?: number;
|
|
68
|
+
codec?: string;
|
|
69
|
+
byteCount?: number;
|
|
70
|
+
kind?: string;
|
|
71
|
+
ssrc?: number;
|
|
72
|
+
mid?: number;
|
|
73
|
+
rid?: string;
|
|
74
|
+
nackCount?: number;
|
|
75
|
+
nackRate?: number;
|
|
76
|
+
packetCount?: number;
|
|
77
|
+
packetRate?: number;
|
|
78
|
+
headerByteCount?: number;
|
|
79
|
+
mediaRatio?: number;
|
|
80
|
+
sendDelay?: number;
|
|
81
|
+
retransRatio?: number;
|
|
82
|
+
width?: number;
|
|
83
|
+
qualityLimitationReason?: string;
|
|
84
|
+
pliCount?: number;
|
|
85
|
+
firCount?: number;
|
|
86
|
+
firRate?: number;
|
|
87
|
+
kfCount?: number;
|
|
88
|
+
kfRate?: number;
|
|
89
|
+
frameCount?: number;
|
|
90
|
+
qpf?: number;
|
|
91
|
+
encodeTime?: number;
|
|
92
|
+
sourceWidth?: number;
|
|
93
|
+
sourceFps?: number;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
type IssueSubscription = {
|
|
97
|
+
onUpdatedIssues: (issuesAndMetricsByView: IssuesAndMetricsByView, statsByView: Record<string, ViewStats>, clients: StatsClient[]) => void;
|
|
98
|
+
};
|
|
5
99
|
interface MetricData {
|
|
6
100
|
ticks: number;
|
|
7
101
|
sum: number;
|
|
@@ -69,9 +163,7 @@ declare const getIssuesAndMetrics: () => {
|
|
|
69
163
|
[clientId: string]: IssuesAndMetrics | IssuesAndMetricsAggregated;
|
|
70
164
|
aggregated: IssuesAndMetricsAggregated;
|
|
71
165
|
};
|
|
72
|
-
declare function subscribeIssues(subscription: {
|
|
73
|
-
onUpdatedIssues: (issuesAndMetricsByView: IssuesAndMetricsByView, statsByView: any, clients: any) => void;
|
|
74
|
-
}): {
|
|
166
|
+
declare function subscribeIssues(subscription: IssueSubscription): {
|
|
75
167
|
stop: () => void;
|
|
76
168
|
};
|
|
77
169
|
|
|
@@ -85,6 +177,13 @@ declare function startPerformanceMonitor({ onMetricsUpdated, onTerminated, isHid
|
|
|
85
177
|
updateHidden: () => void;
|
|
86
178
|
};
|
|
87
179
|
|
|
180
|
+
interface PressureObserver {
|
|
181
|
+
observe: (source: string, options: {
|
|
182
|
+
sampleInterval: number;
|
|
183
|
+
}) => Promise<undefined>;
|
|
184
|
+
unobserve: (source: string) => undefined;
|
|
185
|
+
}
|
|
186
|
+
|
|
88
187
|
interface Debugger {
|
|
89
188
|
print: (...args: any[]) => void;
|
|
90
189
|
}
|
|
@@ -102,28 +201,16 @@ declare class Logger {
|
|
|
102
201
|
debug(...params: any[]): void;
|
|
103
202
|
}
|
|
104
203
|
|
|
105
|
-
interface PressureObserver {
|
|
106
|
-
observe: (source: string, options: {
|
|
107
|
-
sampleInterval: number;
|
|
108
|
-
}) => Promise<undefined>;
|
|
109
|
-
unobserve: (source: string) => undefined;
|
|
110
|
-
}
|
|
111
|
-
type PressureRecord = {
|
|
112
|
-
source: string;
|
|
113
|
-
state: string;
|
|
114
|
-
time: number;
|
|
115
|
-
};
|
|
116
|
-
|
|
117
204
|
interface StatsMonitor {
|
|
118
205
|
getUpdatedStats: () => Promise<Record<string, ViewStats> | undefined>;
|
|
119
206
|
stop: () => void;
|
|
120
207
|
}
|
|
121
208
|
interface StatsSubscription {
|
|
122
|
-
onUpdatedStats: (statsByView: Record<string, ViewStats>, clients:
|
|
209
|
+
onUpdatedStats: (statsByView: Record<string, ViewStats>, clients: StatsClient[]) => void;
|
|
123
210
|
}
|
|
124
211
|
interface StatsMonitorState {
|
|
125
212
|
currentMonitor: StatsMonitor | null;
|
|
126
|
-
getClients: () =>
|
|
213
|
+
getClients: () => StatsClient[];
|
|
127
214
|
lastPressureObserverRecord?: PressureRecord;
|
|
128
215
|
lastUpdateTime: number;
|
|
129
216
|
nextTimeout?: number;
|
|
@@ -136,63 +223,6 @@ interface StatsMonitorOptions {
|
|
|
136
223
|
interval: number;
|
|
137
224
|
logger: Pick<Logger, "debug" | "error" | "info" | "warn">;
|
|
138
225
|
}
|
|
139
|
-
interface TrackStats {
|
|
140
|
-
startTime: number;
|
|
141
|
-
updated: number;
|
|
142
|
-
ssrcs: Record<number, ssrcStats>;
|
|
143
|
-
}
|
|
144
|
-
interface ViewStats {
|
|
145
|
-
startTime?: number;
|
|
146
|
-
updated?: number;
|
|
147
|
-
pressure?: PressureRecord | null;
|
|
148
|
-
candidatePairs?: any;
|
|
149
|
-
tracks: Record<string, TrackStats>;
|
|
150
|
-
}
|
|
151
|
-
interface ssrcStats {
|
|
152
|
-
startTime: number;
|
|
153
|
-
updated: number;
|
|
154
|
-
pcIndex: number;
|
|
155
|
-
direction?: string;
|
|
156
|
-
bitrate?: number;
|
|
157
|
-
fractionLost?: number;
|
|
158
|
-
height?: number;
|
|
159
|
-
lossRatio?: number;
|
|
160
|
-
pliRate?: number;
|
|
161
|
-
fps?: number;
|
|
162
|
-
audioLevel?: number;
|
|
163
|
-
audioConcealment?: number;
|
|
164
|
-
audioDeceleration?: number;
|
|
165
|
-
audioAcceleration?: number;
|
|
166
|
-
sourceHeight?: number;
|
|
167
|
-
jitter?: number;
|
|
168
|
-
roundTripTime?: number;
|
|
169
|
-
codec?: string;
|
|
170
|
-
byteCount?: number;
|
|
171
|
-
kind?: string;
|
|
172
|
-
ssrc?: number;
|
|
173
|
-
mid?: number;
|
|
174
|
-
rid?: string;
|
|
175
|
-
nackCount?: number;
|
|
176
|
-
nackRate?: number;
|
|
177
|
-
packetCount?: number;
|
|
178
|
-
packetRate?: number;
|
|
179
|
-
headerByteCount?: number;
|
|
180
|
-
mediaRatio?: number;
|
|
181
|
-
sendDelay?: number;
|
|
182
|
-
retransRatio?: number;
|
|
183
|
-
width?: number;
|
|
184
|
-
qualityLimitationReason?: string;
|
|
185
|
-
pliCount?: number;
|
|
186
|
-
firCount?: number;
|
|
187
|
-
firRate?: number;
|
|
188
|
-
kfCount?: number;
|
|
189
|
-
kfRate?: number;
|
|
190
|
-
frameCount?: number;
|
|
191
|
-
qpf?: number;
|
|
192
|
-
encodeTime?: number;
|
|
193
|
-
sourceWidth?: number;
|
|
194
|
-
sourceFps?: number;
|
|
195
|
-
}
|
|
196
226
|
declare const getStats: () => {
|
|
197
227
|
[x: string]: ViewStats;
|
|
198
228
|
};
|
|
@@ -200,7 +230,7 @@ declare const getNumFailedStatsReports: () => number;
|
|
|
200
230
|
declare const getNumMissingTrackSsrcLookups: () => number;
|
|
201
231
|
declare const getNumFailedTrackSsrcLookups: () => number;
|
|
202
232
|
declare const getUpdatedStats: () => Promise<Record<string, ViewStats> | undefined> | undefined;
|
|
203
|
-
declare const setClientProvider: (provider:
|
|
233
|
+
declare const setClientProvider: (provider: () => StatsClient[]) => () => StatsClient[];
|
|
204
234
|
declare function subscribeStats(subscription: StatsSubscription, options?: StatsMonitorOptions, state?: StatsMonitorState): {
|
|
205
235
|
stop(): void;
|
|
206
236
|
};
|
|
@@ -211,10 +241,10 @@ declare function captureCommonSsrcMetrics(ssrcMetrics: any, currentSsrcStats: an
|
|
|
211
241
|
declare function captureAudioSsrcMetrics(ssrcMetrics: any, currentSsrcStats: any, prevSsrcStats: any, timeDiff: any, report: any): void;
|
|
212
242
|
declare function captureVideoSsrcMetrics(ssrcMetrics: any, currentSsrcStats: any, prevSsrcStats: any, timeDiff: any, report: any): void;
|
|
213
243
|
|
|
214
|
-
declare const removePeerConnection: (pc:
|
|
215
|
-
declare const getCurrentPeerConnections: () =>
|
|
216
|
-
declare const getPeerConnectionIndex: (pc:
|
|
217
|
-
declare const setPeerConnectionsForTests: (pcs:
|
|
244
|
+
declare const removePeerConnection: (pc: RTCPeerConnection) => void;
|
|
245
|
+
declare const getCurrentPeerConnections: () => RTCPeerConnection[];
|
|
246
|
+
declare const getPeerConnectionIndex: (pc: RTCPeerConnection) => number | undefined;
|
|
247
|
+
declare const setPeerConnectionsForTests: (pcs: RTCPeerConnection[]) => RTCPeerConnection[];
|
|
218
248
|
|
|
219
249
|
declare class BandwidthTester extends EventEmitter {
|
|
220
250
|
closed: boolean;
|
|
@@ -1768,4 +1798,4 @@ declare class RtcStream {
|
|
|
1768
1798
|
}
|
|
1769
1799
|
|
|
1770
1800
|
export { ADDITIONAL_SCREEN_SHARE_SETTINGS, AUDIO_SETTINGS, BandwidthTester, EVENTS, KNOCK_MESSAGES, KalmanFilter, Logger, MEDIA_JITTER_BUFFER_TARGET, NoDevicesError, P2pRtcManager, PROTOCOL_ERRORS, PROTOCOL_EVENTS, PROTOCOL_REQUESTS, PROTOCOL_RESPONSES, RELAY_MESSAGES, ReconnectManager, RtcEventNames, RtcManagerDispatcher, RtcStream, SCREEN_SHARE_SETTINGS, SCREEN_SHARE_SIMULCAST_SETTINGS, STREAM_TYPES, ServerSocket, Session, SfuV2Parser, TYPES, VIDEO_SETTINGS_HD, VIDEO_SETTINGS_SD, VIDEO_SETTINGS_VP9, VIDEO_SETTINGS_VP9_LOW_BANDWIDTH, VegaConnection, VegaMediaQualityMonitor, VegaRtcManager, addAbsCaptureTimeExtMap, addExtMap, assert, buildDeviceList, calculateStd, captureAudioSsrcMetrics, captureCandidatePairInfoMetrics, captureCommonSsrcMetrics, captureSsrcInfo, captureVideoSsrcMetrics, changeMediaDirection, cleanSdp, compareLocalDevices, createACFCalculator, createMicAnalyser, createWorker, deprioritizeH264, detectMicrophoneNotWorking, enumerate, external_stun_servers, filterMidExtension, filterMsidSemantic, fromLocation, generateByteString, getConstraints, getCurrentPeerConnections, getDeviceData, getDisplayMedia, getIssuesAndMetrics, getMediaConstraints, getMediaSettings, getMediasoupDeviceAsync, getNumFailedStatsReports, getNumFailedTrackSsrcLookups, getNumMissingTrackSsrcLookups, getPeerConnectionIndex, getStats, getStream, getUpdatedDevices, getUpdatedStats, getUserMedia, hasGetDisplayMedia, ipRegex, isMobile, maybeRejectNoH264, maybeTurnOnly, modifyMediaCapabilities, removePeerConnection, replaceSSRCs, replaceTracksInStream, _default as rtcManagerEvents, rtcStats, setClientProvider, setCodecPreferenceSDP, setPeerConnectionsForTests, setVideoBandwidthUsingSetParameters, sortCodecs, standardDeviation, startPerformanceMonitor, stopStreamTracks, subscribeIssues, subscribeStats, turnServerOverride, variance };
|
|
1771
|
-
export type { AddSpotlightRequest, AudioEnableRequest, AudioEnableRequestedEvent, AudioEnabledEvent, BreakoutConfig, BreakoutGroupJoinedEvent, BreakoutSessionUpdatedEvent, CannotJoinUnclaimedRoomError, ChatMessage, ClientKickedEvent, ClientLeftEvent, ClientMetadataPayload, ClientMetadataReceivedEvent, ClientRole, ClientUnableToJoinEvent, CloudRecordingStartedEvent, Codec, Credentials, CustomMediaStreamTrack, ForbiddenError, ForbiddenErrorNames, GetConstraintsOptions, GetDeviceDataResult, GetMediaConstraintsOptions, GetStreamOptions, GetStreamResult, GetUpdatedDevicesResult, HostPresenceControlsError, IdentifyDeviceRequest, InternalServerError, IssuesAndMetricsByView, JoinRoomRequest, KnockAcceptedEvent, KnockRejectedEvent, KnockRoomRequest, KnockerLeftEvent, LiveTranscriptionStartedEvent, LiveTranscriptionStoppedEvent, MaxViewerLimitReachedError, NewClientEvent, OrganizationPlanExhaustedError, RemoveSpotlightRequest, RoleName, RoomConcurrencyControlsError, RoomFullError, RoomJoinedErrors, RoomJoinedEvent, RoomJoinedSuccess, RoomKnockedEvent, RoomLockedError, RoomLockedEvent, RoomMeetingTimeExhaustedError, RoomMode, RoomSessionEndedEvent, RtcClientConnectionStatusChangedPayload, RtcEvents, RtcLocalStreamTrackAddedPayload, RtcLocalStreamTrackRemovedPayload, RtcManager, RtcManagerCreatedPayload, RtcStreamAddedPayload, ScreenshareStartedEvent, ScreenshareStoppedEvent, SendClientMetadataRequest, SignalClient, SignalEvents, SignalKnocker, SignalRequests, SocketConf, SocketManager, Spotlight, SpotlightAddedEvent, SpotlightRemovedEvent, StatsMonitorOptions, StatsMonitorState, StatsSubscription,
|
|
1801
|
+
export type { AddSpotlightRequest, AudioEnableRequest, AudioEnableRequestedEvent, AudioEnabledEvent, BreakoutConfig, BreakoutGroupJoinedEvent, BreakoutSessionUpdatedEvent, CannotJoinUnclaimedRoomError, ChatMessage, ClientKickedEvent, ClientLeftEvent, ClientMetadataPayload, ClientMetadataReceivedEvent, ClientRole, ClientUnableToJoinEvent, CloudRecordingStartedEvent, Codec, Credentials, CustomMediaStreamTrack, ForbiddenError, ForbiddenErrorNames, GetConstraintsOptions, GetDeviceDataResult, GetMediaConstraintsOptions, GetStreamOptions, GetStreamResult, GetUpdatedDevicesResult, HostPresenceControlsError, IdentifyDeviceRequest, InternalServerError, IssuesAndMetricsByView, JoinRoomRequest, KnockAcceptedEvent, KnockRejectedEvent, KnockRoomRequest, KnockerLeftEvent, LiveTranscriptionStartedEvent, LiveTranscriptionStoppedEvent, MaxViewerLimitReachedError, NewClientEvent, OrganizationPlanExhaustedError, RemoveSpotlightRequest, RoleName, RoomConcurrencyControlsError, RoomFullError, RoomJoinedErrors, RoomJoinedEvent, RoomJoinedSuccess, RoomKnockedEvent, RoomLockedError, RoomLockedEvent, RoomMeetingTimeExhaustedError, RoomMode, RoomSessionEndedEvent, RtcClientConnectionStatusChangedPayload, RtcEvents, RtcLocalStreamTrackAddedPayload, RtcLocalStreamTrackRemovedPayload, RtcManager, RtcManagerCreatedPayload, RtcStreamAddedPayload, ScreenshareStartedEvent, ScreenshareStoppedEvent, SendClientMetadataRequest, SignalClient, SignalEvents, SignalKnocker, SignalRequests, SocketConf, SocketManager, Spotlight, SpotlightAddedEvent, SpotlightRemovedEvent, StatsMonitorOptions, StatsMonitorState, StatsSubscription, TurnTransportProtocol, UpdatedDeviceInfo, UpdatedDevicesInfo, VideoEnableRequest, VideoEnableRequestedEvent, VideoEnabledEvent };
|
package/dist/index.d.mts
CHANGED
|
@@ -2,6 +2,100 @@ import { Device } from 'mediasoup-client';
|
|
|
2
2
|
import EventEmitter, { EventEmitter as EventEmitter$1 } from 'events';
|
|
3
3
|
import { RtpCapabilities } from 'mediasoup-client/lib/RtpParameters';
|
|
4
4
|
|
|
5
|
+
interface MediaStreamTrackWithDenoiserContext extends MediaStreamTrack {
|
|
6
|
+
_denoiserCtx?: AudioContext;
|
|
7
|
+
}
|
|
8
|
+
interface StatsClient {
|
|
9
|
+
id: string;
|
|
10
|
+
clientId: string;
|
|
11
|
+
isLocalClient?: boolean;
|
|
12
|
+
isAudioOnlyModeEnabled?: boolean;
|
|
13
|
+
audio: {
|
|
14
|
+
enabled?: boolean;
|
|
15
|
+
track?: MediaStreamTrackWithDenoiserContext;
|
|
16
|
+
};
|
|
17
|
+
video: {
|
|
18
|
+
enabled?: boolean;
|
|
19
|
+
track?: MediaStreamTrack;
|
|
20
|
+
};
|
|
21
|
+
isPresentation?: boolean;
|
|
22
|
+
}
|
|
23
|
+
type PressureRecord = {
|
|
24
|
+
source: string;
|
|
25
|
+
state: string;
|
|
26
|
+
time: number;
|
|
27
|
+
};
|
|
28
|
+
interface TrackStats {
|
|
29
|
+
startTime: number;
|
|
30
|
+
updated: number;
|
|
31
|
+
ssrcs: Record<number, SsrcStats>;
|
|
32
|
+
}
|
|
33
|
+
interface ViewStats {
|
|
34
|
+
startTime?: number;
|
|
35
|
+
updated?: number;
|
|
36
|
+
pressure?: PressureRecord | null;
|
|
37
|
+
candidatePairs: Record<string, CandidatePairStats>;
|
|
38
|
+
tracks: Record<string, TrackStats>;
|
|
39
|
+
}
|
|
40
|
+
interface CandidatePairStats {
|
|
41
|
+
active?: boolean;
|
|
42
|
+
id: string;
|
|
43
|
+
inactiveFromTime?: number;
|
|
44
|
+
lastRtcStatsTime?: number;
|
|
45
|
+
startTime: number;
|
|
46
|
+
state?: string;
|
|
47
|
+
turnProtocol?: string;
|
|
48
|
+
usingTurn?: boolean;
|
|
49
|
+
}
|
|
50
|
+
interface SsrcStats {
|
|
51
|
+
startTime: number;
|
|
52
|
+
updated: number;
|
|
53
|
+
pcIndex: number;
|
|
54
|
+
direction?: string;
|
|
55
|
+
bitrate?: number;
|
|
56
|
+
fractionLost?: number;
|
|
57
|
+
height?: number;
|
|
58
|
+
lossRatio?: number;
|
|
59
|
+
pliRate?: number;
|
|
60
|
+
fps?: number;
|
|
61
|
+
audioLevel?: number;
|
|
62
|
+
audioConcealment?: number;
|
|
63
|
+
audioDeceleration?: number;
|
|
64
|
+
audioAcceleration?: number;
|
|
65
|
+
sourceHeight?: number;
|
|
66
|
+
jitter?: number;
|
|
67
|
+
roundTripTime?: number;
|
|
68
|
+
codec?: string;
|
|
69
|
+
byteCount?: number;
|
|
70
|
+
kind?: string;
|
|
71
|
+
ssrc?: number;
|
|
72
|
+
mid?: number;
|
|
73
|
+
rid?: string;
|
|
74
|
+
nackCount?: number;
|
|
75
|
+
nackRate?: number;
|
|
76
|
+
packetCount?: number;
|
|
77
|
+
packetRate?: number;
|
|
78
|
+
headerByteCount?: number;
|
|
79
|
+
mediaRatio?: number;
|
|
80
|
+
sendDelay?: number;
|
|
81
|
+
retransRatio?: number;
|
|
82
|
+
width?: number;
|
|
83
|
+
qualityLimitationReason?: string;
|
|
84
|
+
pliCount?: number;
|
|
85
|
+
firCount?: number;
|
|
86
|
+
firRate?: number;
|
|
87
|
+
kfCount?: number;
|
|
88
|
+
kfRate?: number;
|
|
89
|
+
frameCount?: number;
|
|
90
|
+
qpf?: number;
|
|
91
|
+
encodeTime?: number;
|
|
92
|
+
sourceWidth?: number;
|
|
93
|
+
sourceFps?: number;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
type IssueSubscription = {
|
|
97
|
+
onUpdatedIssues: (issuesAndMetricsByView: IssuesAndMetricsByView, statsByView: Record<string, ViewStats>, clients: StatsClient[]) => void;
|
|
98
|
+
};
|
|
5
99
|
interface MetricData {
|
|
6
100
|
ticks: number;
|
|
7
101
|
sum: number;
|
|
@@ -69,9 +163,7 @@ declare const getIssuesAndMetrics: () => {
|
|
|
69
163
|
[clientId: string]: IssuesAndMetrics | IssuesAndMetricsAggregated;
|
|
70
164
|
aggregated: IssuesAndMetricsAggregated;
|
|
71
165
|
};
|
|
72
|
-
declare function subscribeIssues(subscription: {
|
|
73
|
-
onUpdatedIssues: (issuesAndMetricsByView: IssuesAndMetricsByView, statsByView: any, clients: any) => void;
|
|
74
|
-
}): {
|
|
166
|
+
declare function subscribeIssues(subscription: IssueSubscription): {
|
|
75
167
|
stop: () => void;
|
|
76
168
|
};
|
|
77
169
|
|
|
@@ -85,6 +177,13 @@ declare function startPerformanceMonitor({ onMetricsUpdated, onTerminated, isHid
|
|
|
85
177
|
updateHidden: () => void;
|
|
86
178
|
};
|
|
87
179
|
|
|
180
|
+
interface PressureObserver {
|
|
181
|
+
observe: (source: string, options: {
|
|
182
|
+
sampleInterval: number;
|
|
183
|
+
}) => Promise<undefined>;
|
|
184
|
+
unobserve: (source: string) => undefined;
|
|
185
|
+
}
|
|
186
|
+
|
|
88
187
|
interface Debugger {
|
|
89
188
|
print: (...args: any[]) => void;
|
|
90
189
|
}
|
|
@@ -102,28 +201,16 @@ declare class Logger {
|
|
|
102
201
|
debug(...params: any[]): void;
|
|
103
202
|
}
|
|
104
203
|
|
|
105
|
-
interface PressureObserver {
|
|
106
|
-
observe: (source: string, options: {
|
|
107
|
-
sampleInterval: number;
|
|
108
|
-
}) => Promise<undefined>;
|
|
109
|
-
unobserve: (source: string) => undefined;
|
|
110
|
-
}
|
|
111
|
-
type PressureRecord = {
|
|
112
|
-
source: string;
|
|
113
|
-
state: string;
|
|
114
|
-
time: number;
|
|
115
|
-
};
|
|
116
|
-
|
|
117
204
|
interface StatsMonitor {
|
|
118
205
|
getUpdatedStats: () => Promise<Record<string, ViewStats> | undefined>;
|
|
119
206
|
stop: () => void;
|
|
120
207
|
}
|
|
121
208
|
interface StatsSubscription {
|
|
122
|
-
onUpdatedStats: (statsByView: Record<string, ViewStats>, clients:
|
|
209
|
+
onUpdatedStats: (statsByView: Record<string, ViewStats>, clients: StatsClient[]) => void;
|
|
123
210
|
}
|
|
124
211
|
interface StatsMonitorState {
|
|
125
212
|
currentMonitor: StatsMonitor | null;
|
|
126
|
-
getClients: () =>
|
|
213
|
+
getClients: () => StatsClient[];
|
|
127
214
|
lastPressureObserverRecord?: PressureRecord;
|
|
128
215
|
lastUpdateTime: number;
|
|
129
216
|
nextTimeout?: number;
|
|
@@ -136,63 +223,6 @@ interface StatsMonitorOptions {
|
|
|
136
223
|
interval: number;
|
|
137
224
|
logger: Pick<Logger, "debug" | "error" | "info" | "warn">;
|
|
138
225
|
}
|
|
139
|
-
interface TrackStats {
|
|
140
|
-
startTime: number;
|
|
141
|
-
updated: number;
|
|
142
|
-
ssrcs: Record<number, ssrcStats>;
|
|
143
|
-
}
|
|
144
|
-
interface ViewStats {
|
|
145
|
-
startTime?: number;
|
|
146
|
-
updated?: number;
|
|
147
|
-
pressure?: PressureRecord | null;
|
|
148
|
-
candidatePairs?: any;
|
|
149
|
-
tracks: Record<string, TrackStats>;
|
|
150
|
-
}
|
|
151
|
-
interface ssrcStats {
|
|
152
|
-
startTime: number;
|
|
153
|
-
updated: number;
|
|
154
|
-
pcIndex: number;
|
|
155
|
-
direction?: string;
|
|
156
|
-
bitrate?: number;
|
|
157
|
-
fractionLost?: number;
|
|
158
|
-
height?: number;
|
|
159
|
-
lossRatio?: number;
|
|
160
|
-
pliRate?: number;
|
|
161
|
-
fps?: number;
|
|
162
|
-
audioLevel?: number;
|
|
163
|
-
audioConcealment?: number;
|
|
164
|
-
audioDeceleration?: number;
|
|
165
|
-
audioAcceleration?: number;
|
|
166
|
-
sourceHeight?: number;
|
|
167
|
-
jitter?: number;
|
|
168
|
-
roundTripTime?: number;
|
|
169
|
-
codec?: string;
|
|
170
|
-
byteCount?: number;
|
|
171
|
-
kind?: string;
|
|
172
|
-
ssrc?: number;
|
|
173
|
-
mid?: number;
|
|
174
|
-
rid?: string;
|
|
175
|
-
nackCount?: number;
|
|
176
|
-
nackRate?: number;
|
|
177
|
-
packetCount?: number;
|
|
178
|
-
packetRate?: number;
|
|
179
|
-
headerByteCount?: number;
|
|
180
|
-
mediaRatio?: number;
|
|
181
|
-
sendDelay?: number;
|
|
182
|
-
retransRatio?: number;
|
|
183
|
-
width?: number;
|
|
184
|
-
qualityLimitationReason?: string;
|
|
185
|
-
pliCount?: number;
|
|
186
|
-
firCount?: number;
|
|
187
|
-
firRate?: number;
|
|
188
|
-
kfCount?: number;
|
|
189
|
-
kfRate?: number;
|
|
190
|
-
frameCount?: number;
|
|
191
|
-
qpf?: number;
|
|
192
|
-
encodeTime?: number;
|
|
193
|
-
sourceWidth?: number;
|
|
194
|
-
sourceFps?: number;
|
|
195
|
-
}
|
|
196
226
|
declare const getStats: () => {
|
|
197
227
|
[x: string]: ViewStats;
|
|
198
228
|
};
|
|
@@ -200,7 +230,7 @@ declare const getNumFailedStatsReports: () => number;
|
|
|
200
230
|
declare const getNumMissingTrackSsrcLookups: () => number;
|
|
201
231
|
declare const getNumFailedTrackSsrcLookups: () => number;
|
|
202
232
|
declare const getUpdatedStats: () => Promise<Record<string, ViewStats> | undefined> | undefined;
|
|
203
|
-
declare const setClientProvider: (provider:
|
|
233
|
+
declare const setClientProvider: (provider: () => StatsClient[]) => () => StatsClient[];
|
|
204
234
|
declare function subscribeStats(subscription: StatsSubscription, options?: StatsMonitorOptions, state?: StatsMonitorState): {
|
|
205
235
|
stop(): void;
|
|
206
236
|
};
|
|
@@ -211,10 +241,10 @@ declare function captureCommonSsrcMetrics(ssrcMetrics: any, currentSsrcStats: an
|
|
|
211
241
|
declare function captureAudioSsrcMetrics(ssrcMetrics: any, currentSsrcStats: any, prevSsrcStats: any, timeDiff: any, report: any): void;
|
|
212
242
|
declare function captureVideoSsrcMetrics(ssrcMetrics: any, currentSsrcStats: any, prevSsrcStats: any, timeDiff: any, report: any): void;
|
|
213
243
|
|
|
214
|
-
declare const removePeerConnection: (pc:
|
|
215
|
-
declare const getCurrentPeerConnections: () =>
|
|
216
|
-
declare const getPeerConnectionIndex: (pc:
|
|
217
|
-
declare const setPeerConnectionsForTests: (pcs:
|
|
244
|
+
declare const removePeerConnection: (pc: RTCPeerConnection) => void;
|
|
245
|
+
declare const getCurrentPeerConnections: () => RTCPeerConnection[];
|
|
246
|
+
declare const getPeerConnectionIndex: (pc: RTCPeerConnection) => number | undefined;
|
|
247
|
+
declare const setPeerConnectionsForTests: (pcs: RTCPeerConnection[]) => RTCPeerConnection[];
|
|
218
248
|
|
|
219
249
|
declare class BandwidthTester extends EventEmitter {
|
|
220
250
|
closed: boolean;
|
|
@@ -1768,4 +1798,4 @@ declare class RtcStream {
|
|
|
1768
1798
|
}
|
|
1769
1799
|
|
|
1770
1800
|
export { ADDITIONAL_SCREEN_SHARE_SETTINGS, AUDIO_SETTINGS, BandwidthTester, EVENTS, KNOCK_MESSAGES, KalmanFilter, Logger, MEDIA_JITTER_BUFFER_TARGET, NoDevicesError, P2pRtcManager, PROTOCOL_ERRORS, PROTOCOL_EVENTS, PROTOCOL_REQUESTS, PROTOCOL_RESPONSES, RELAY_MESSAGES, ReconnectManager, RtcEventNames, RtcManagerDispatcher, RtcStream, SCREEN_SHARE_SETTINGS, SCREEN_SHARE_SIMULCAST_SETTINGS, STREAM_TYPES, ServerSocket, Session, SfuV2Parser, TYPES, VIDEO_SETTINGS_HD, VIDEO_SETTINGS_SD, VIDEO_SETTINGS_VP9, VIDEO_SETTINGS_VP9_LOW_BANDWIDTH, VegaConnection, VegaMediaQualityMonitor, VegaRtcManager, addAbsCaptureTimeExtMap, addExtMap, assert, buildDeviceList, calculateStd, captureAudioSsrcMetrics, captureCandidatePairInfoMetrics, captureCommonSsrcMetrics, captureSsrcInfo, captureVideoSsrcMetrics, changeMediaDirection, cleanSdp, compareLocalDevices, createACFCalculator, createMicAnalyser, createWorker, deprioritizeH264, detectMicrophoneNotWorking, enumerate, external_stun_servers, filterMidExtension, filterMsidSemantic, fromLocation, generateByteString, getConstraints, getCurrentPeerConnections, getDeviceData, getDisplayMedia, getIssuesAndMetrics, getMediaConstraints, getMediaSettings, getMediasoupDeviceAsync, getNumFailedStatsReports, getNumFailedTrackSsrcLookups, getNumMissingTrackSsrcLookups, getPeerConnectionIndex, getStats, getStream, getUpdatedDevices, getUpdatedStats, getUserMedia, hasGetDisplayMedia, ipRegex, isMobile, maybeRejectNoH264, maybeTurnOnly, modifyMediaCapabilities, removePeerConnection, replaceSSRCs, replaceTracksInStream, _default as rtcManagerEvents, rtcStats, setClientProvider, setCodecPreferenceSDP, setPeerConnectionsForTests, setVideoBandwidthUsingSetParameters, sortCodecs, standardDeviation, startPerformanceMonitor, stopStreamTracks, subscribeIssues, subscribeStats, turnServerOverride, variance };
|
|
1771
|
-
export type { AddSpotlightRequest, AudioEnableRequest, AudioEnableRequestedEvent, AudioEnabledEvent, BreakoutConfig, BreakoutGroupJoinedEvent, BreakoutSessionUpdatedEvent, CannotJoinUnclaimedRoomError, ChatMessage, ClientKickedEvent, ClientLeftEvent, ClientMetadataPayload, ClientMetadataReceivedEvent, ClientRole, ClientUnableToJoinEvent, CloudRecordingStartedEvent, Codec, Credentials, CustomMediaStreamTrack, ForbiddenError, ForbiddenErrorNames, GetConstraintsOptions, GetDeviceDataResult, GetMediaConstraintsOptions, GetStreamOptions, GetStreamResult, GetUpdatedDevicesResult, HostPresenceControlsError, IdentifyDeviceRequest, InternalServerError, IssuesAndMetricsByView, JoinRoomRequest, KnockAcceptedEvent, KnockRejectedEvent, KnockRoomRequest, KnockerLeftEvent, LiveTranscriptionStartedEvent, LiveTranscriptionStoppedEvent, MaxViewerLimitReachedError, NewClientEvent, OrganizationPlanExhaustedError, RemoveSpotlightRequest, RoleName, RoomConcurrencyControlsError, RoomFullError, RoomJoinedErrors, RoomJoinedEvent, RoomJoinedSuccess, RoomKnockedEvent, RoomLockedError, RoomLockedEvent, RoomMeetingTimeExhaustedError, RoomMode, RoomSessionEndedEvent, RtcClientConnectionStatusChangedPayload, RtcEvents, RtcLocalStreamTrackAddedPayload, RtcLocalStreamTrackRemovedPayload, RtcManager, RtcManagerCreatedPayload, RtcStreamAddedPayload, ScreenshareStartedEvent, ScreenshareStoppedEvent, SendClientMetadataRequest, SignalClient, SignalEvents, SignalKnocker, SignalRequests, SocketConf, SocketManager, Spotlight, SpotlightAddedEvent, SpotlightRemovedEvent, StatsMonitorOptions, StatsMonitorState, StatsSubscription,
|
|
1801
|
+
export type { AddSpotlightRequest, AudioEnableRequest, AudioEnableRequestedEvent, AudioEnabledEvent, BreakoutConfig, BreakoutGroupJoinedEvent, BreakoutSessionUpdatedEvent, CannotJoinUnclaimedRoomError, ChatMessage, ClientKickedEvent, ClientLeftEvent, ClientMetadataPayload, ClientMetadataReceivedEvent, ClientRole, ClientUnableToJoinEvent, CloudRecordingStartedEvent, Codec, Credentials, CustomMediaStreamTrack, ForbiddenError, ForbiddenErrorNames, GetConstraintsOptions, GetDeviceDataResult, GetMediaConstraintsOptions, GetStreamOptions, GetStreamResult, GetUpdatedDevicesResult, HostPresenceControlsError, IdentifyDeviceRequest, InternalServerError, IssuesAndMetricsByView, JoinRoomRequest, KnockAcceptedEvent, KnockRejectedEvent, KnockRoomRequest, KnockerLeftEvent, LiveTranscriptionStartedEvent, LiveTranscriptionStoppedEvent, MaxViewerLimitReachedError, NewClientEvent, OrganizationPlanExhaustedError, RemoveSpotlightRequest, RoleName, RoomConcurrencyControlsError, RoomFullError, RoomJoinedErrors, RoomJoinedEvent, RoomJoinedSuccess, RoomKnockedEvent, RoomLockedError, RoomLockedEvent, RoomMeetingTimeExhaustedError, RoomMode, RoomSessionEndedEvent, RtcClientConnectionStatusChangedPayload, RtcEvents, RtcLocalStreamTrackAddedPayload, RtcLocalStreamTrackRemovedPayload, RtcManager, RtcManagerCreatedPayload, RtcStreamAddedPayload, ScreenshareStartedEvent, ScreenshareStoppedEvent, SendClientMetadataRequest, SignalClient, SignalEvents, SignalKnocker, SignalRequests, SocketConf, SocketManager, Spotlight, SpotlightAddedEvent, SpotlightRemovedEvent, StatsMonitorOptions, StatsMonitorState, StatsSubscription, TurnTransportProtocol, UpdatedDeviceInfo, UpdatedDevicesInfo, VideoEnableRequest, VideoEnableRequestedEvent, VideoEnabledEvent };
|