livekit-client 0.15.0 → 0.15.4

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.
Files changed (136) hide show
  1. package/.gitmodules +3 -0
  2. package/README.md +21 -4
  3. package/dist/api/SignalClient.d.ts +11 -2
  4. package/dist/api/SignalClient.js +92 -25
  5. package/dist/api/SignalClient.js.map +1 -1
  6. package/dist/connect.js +3 -0
  7. package/dist/connect.js.map +1 -1
  8. package/dist/index.d.ts +5 -2
  9. package/dist/index.js +6 -3
  10. package/dist/index.js.map +1 -1
  11. package/dist/logger.js +1 -0
  12. package/dist/logger.js.map +1 -1
  13. package/dist/options.d.ts +28 -14
  14. package/dist/proto/livekit_models.d.ts +48 -0
  15. package/dist/proto/livekit_models.js +367 -5
  16. package/dist/proto/livekit_models.js.map +1 -1
  17. package/dist/proto/livekit_rtc.d.ts +100 -1
  18. package/dist/proto/livekit_rtc.js +745 -3
  19. package/dist/proto/livekit_rtc.js.map +1 -1
  20. package/dist/room/PCTransport.js +4 -0
  21. package/dist/room/PCTransport.js.map +1 -1
  22. package/dist/room/RTCEngine.d.ts +4 -0
  23. package/dist/room/RTCEngine.js +73 -34
  24. package/dist/room/RTCEngine.js.map +1 -1
  25. package/dist/room/Room.d.ts +15 -0
  26. package/dist/room/Room.js +172 -59
  27. package/dist/room/Room.js.map +1 -1
  28. package/dist/room/events.d.ts +60 -24
  29. package/dist/room/events.js +58 -22
  30. package/dist/room/events.js.map +1 -1
  31. package/dist/room/participant/LocalParticipant.d.ts +26 -2
  32. package/dist/room/participant/LocalParticipant.js +69 -21
  33. package/dist/room/participant/LocalParticipant.js.map +1 -1
  34. package/dist/room/participant/Participant.d.ts +3 -1
  35. package/dist/room/participant/Participant.js +1 -0
  36. package/dist/room/participant/Participant.js.map +1 -1
  37. package/dist/room/participant/ParticipantTrackPermission.d.ts +19 -0
  38. package/dist/room/participant/ParticipantTrackPermission.js +16 -0
  39. package/dist/room/participant/ParticipantTrackPermission.js.map +1 -0
  40. package/dist/room/participant/RemoteParticipant.d.ts +2 -2
  41. package/dist/room/participant/RemoteParticipant.js +9 -15
  42. package/dist/room/participant/RemoteParticipant.js.map +1 -1
  43. package/dist/room/participant/publishUtils.d.ts +1 -1
  44. package/dist/room/participant/publishUtils.js +4 -4
  45. package/dist/room/participant/publishUtils.js.map +1 -1
  46. package/dist/room/participant/publishUtils.test.js +10 -1
  47. package/dist/room/participant/publishUtils.test.js.map +1 -1
  48. package/dist/room/stats.d.ts +21 -6
  49. package/dist/room/stats.js +22 -1
  50. package/dist/room/stats.js.map +1 -1
  51. package/dist/room/track/LocalAudioTrack.d.ts +5 -1
  52. package/dist/room/track/LocalAudioTrack.js +45 -1
  53. package/dist/room/track/LocalAudioTrack.js.map +1 -1
  54. package/dist/room/track/LocalTrack.js +1 -1
  55. package/dist/room/track/LocalTrack.js.map +1 -1
  56. package/dist/room/track/LocalTrackPublication.d.ts +3 -1
  57. package/dist/room/track/LocalTrackPublication.js +15 -5
  58. package/dist/room/track/LocalTrackPublication.js.map +1 -1
  59. package/dist/room/track/LocalVideoTrack.d.ts +8 -1
  60. package/dist/room/track/LocalVideoTrack.js +117 -52
  61. package/dist/room/track/LocalVideoTrack.js.map +1 -1
  62. package/dist/room/track/RemoteAudioTrack.d.ts +6 -8
  63. package/dist/room/track/RemoteAudioTrack.js +55 -19
  64. package/dist/room/track/RemoteAudioTrack.js.map +1 -1
  65. package/dist/room/track/RemoteTrack.d.ts +14 -0
  66. package/dist/room/track/RemoteTrack.js +47 -0
  67. package/dist/room/track/RemoteTrack.js.map +1 -0
  68. package/dist/room/track/RemoteTrackPublication.d.ts +10 -2
  69. package/dist/room/track/RemoteTrackPublication.js +49 -16
  70. package/dist/room/track/RemoteTrackPublication.js.map +1 -1
  71. package/dist/room/track/RemoteVideoTrack.d.ts +7 -7
  72. package/dist/room/track/RemoteVideoTrack.js +66 -22
  73. package/dist/room/track/RemoteVideoTrack.js.map +1 -1
  74. package/dist/room/track/Track.d.ts +12 -0
  75. package/dist/room/track/Track.js +33 -0
  76. package/dist/room/track/Track.js.map +1 -1
  77. package/dist/room/track/TrackPublication.d.ts +14 -1
  78. package/dist/room/track/TrackPublication.js +24 -7
  79. package/dist/room/track/TrackPublication.js.map +1 -1
  80. package/dist/room/track/create.d.ts +23 -0
  81. package/dist/room/track/create.js +130 -0
  82. package/dist/room/track/create.js.map +1 -0
  83. package/dist/room/track/defaults.d.ts +4 -0
  84. package/dist/room/track/defaults.js +21 -0
  85. package/dist/room/track/defaults.js.map +1 -0
  86. package/dist/room/utils.d.ts +3 -1
  87. package/dist/room/utils.js +36 -6
  88. package/dist/room/utils.js.map +1 -1
  89. package/dist/version.d.ts +1 -1
  90. package/dist/version.js +1 -1
  91. package/package.json +5 -3
  92. package/src/api/SignalClient.ts +434 -0
  93. package/src/connect.ts +100 -0
  94. package/src/index.ts +47 -0
  95. package/src/logger.ts +22 -0
  96. package/src/options.ts +152 -0
  97. package/src/proto/livekit_models.ts +1863 -0
  98. package/src/proto/livekit_rtc.ts +3401 -0
  99. package/src/room/DeviceManager.ts +57 -0
  100. package/src/room/PCTransport.ts +86 -0
  101. package/src/room/RTCEngine.ts +484 -0
  102. package/src/room/Room.ts +785 -0
  103. package/src/room/errors.ts +65 -0
  104. package/src/room/events.ts +396 -0
  105. package/src/room/participant/LocalParticipant.ts +685 -0
  106. package/src/room/participant/Participant.ts +214 -0
  107. package/src/room/participant/ParticipantTrackPermission.ts +32 -0
  108. package/src/room/participant/RemoteParticipant.ts +238 -0
  109. package/src/room/participant/publishUtils.test.ts +105 -0
  110. package/src/room/participant/publishUtils.ts +180 -0
  111. package/src/room/stats.ts +130 -0
  112. package/src/room/track/LocalAudioTrack.ts +112 -0
  113. package/src/room/track/LocalTrack.ts +124 -0
  114. package/src/room/track/LocalTrackPublication.ts +63 -0
  115. package/src/room/track/LocalVideoTrack.test.ts +70 -0
  116. package/src/room/track/LocalVideoTrack.ts +416 -0
  117. package/src/room/track/RemoteAudioTrack.ts +58 -0
  118. package/src/room/track/RemoteTrack.ts +59 -0
  119. package/src/room/track/RemoteTrackPublication.ts +192 -0
  120. package/src/room/track/RemoteVideoTrack.ts +213 -0
  121. package/src/room/track/Track.ts +301 -0
  122. package/src/room/track/TrackPublication.ts +120 -0
  123. package/src/room/track/create.ts +120 -0
  124. package/src/room/track/defaults.ts +23 -0
  125. package/src/room/track/options.ts +229 -0
  126. package/src/room/track/types.ts +8 -0
  127. package/src/room/track/utils.test.ts +93 -0
  128. package/src/room/track/utils.ts +76 -0
  129. package/src/room/utils.ts +74 -0
  130. package/src/version.ts +2 -0
  131. package/.github/workflows/publish.yaml +0 -55
  132. package/.github/workflows/test.yaml +0 -36
  133. package/example/index.html +0 -237
  134. package/example/sample.ts +0 -575
  135. package/example/styles.css +0 -144
  136. package/example/webpack.config.js +0 -33
package/.gitmodules ADDED
@@ -0,0 +1,3 @@
1
+ [submodule "protocol"]
2
+ path = protocol
3
+ url = https://github.com/livekit/protocol
package/README.md CHANGED
@@ -47,8 +47,11 @@ import {
47
47
 
48
48
  // creates a new room with options
49
49
  const room = new Room({
50
- // automatically manage video quality
51
- autoManageVideo: true,
50
+ // automatically manage subscribed video quality
51
+ adaptiveStream: true,
52
+
53
+ // optimize publishing bandwidth and CPU for simulcasted tracks
54
+ dynacast: true,
52
55
 
53
56
  // default capture settings
54
57
  videoCaptureDefaults: {
@@ -152,7 +155,21 @@ if (p) {
152
155
  }
153
156
  ```
154
157
 
155
- ### Advanced track manipulation
158
+ ### Creating a track prior to creating a room
159
+
160
+ In some cases, it may be useful to create a track before creating a room. For
161
+ example, when building a staging area so the user may check their own camera.
162
+
163
+ You can use our global track creation functions for this:
164
+
165
+ ```typescript
166
+ const tracks = await createLocalTracks({
167
+ audio: true,
168
+ video: true,
169
+ });
170
+ ```
171
+
172
+ ### Publish tracks from any source
156
173
 
157
174
  LiveKit lets you publish any track as long as it can be represented by a MediaStreamTrack. You can specify a name on the track in order to identify it later.
158
175
 
@@ -212,7 +229,7 @@ You can use the helper `MediaDeviceFailure.getFailure(error)` to determine speci
212
229
 
213
230
  These distinctions enables you to provide more specific messaging to the user.
214
231
 
215
- You could also retrieve the last error with `getLastAudioCreateError` and `getLastVideoCreateError`.
232
+ You could also retrieve the last error with `LocalParticipant.lastCameraError` and `LocalParticipant.lastMicrophoneError`.
216
233
 
217
234
  ### Audio playback
218
235
 
@@ -1,6 +1,6 @@
1
1
  import 'webrtc-adapter';
2
2
  import { ParticipantInfo, Room, SpeakerInfo, VideoLayer } from '../proto/livekit_models';
3
- import { AddTrackRequest, ConnectionQualityUpdate, JoinResponse, SignalRequest, SignalTarget, TrackPublishedResponse, UpdateSubscription, UpdateTrackSettings } from '../proto/livekit_rtc';
3
+ import { AddTrackRequest, ConnectionQualityUpdate, JoinResponse, SessionDescription, SignalRequest, SignalTarget, SimulateScenario, StreamStateUpdate, SubscribedQualityUpdate, SubscriptionPermissionUpdate, SyncState, TrackPermission, TrackPublishedResponse, UpdateSubscription, UpdateTrackSettings } from '../proto/livekit_rtc';
4
4
  interface ConnectOpts {
5
5
  autoSubscribe?: boolean;
6
6
  /** internal */
@@ -13,6 +13,8 @@ export interface SignalOptions {
13
13
  export declare class SignalClient {
14
14
  isConnected: boolean;
15
15
  useJSON: boolean;
16
+ /** simulate signaling latency by delaying messages */
17
+ signalLatency?: number;
16
18
  onClose?: (reason: string) => void;
17
19
  onAnswer?: (sd: RTCSessionDescriptionInit) => void;
18
20
  onOffer?: (sd: RTCSessionDescriptionInit) => void;
@@ -24,6 +26,9 @@ export declare class SignalClient {
24
26
  onRemoteMuteChanged?: (trackSid: string, muted: boolean) => void;
25
27
  onRoomUpdate?: (room: Room) => void;
26
28
  onConnectionQuality?: (update: ConnectionQualityUpdate) => void;
29
+ onStreamStateUpdate?: (update: StreamStateUpdate) => void;
30
+ onSubscribedQualityUpdate?: (update: SubscribedQualityUpdate) => void;
31
+ onSubscriptionPermissionUpdate?: (update: SubscriptionPermissionUpdate) => void;
27
32
  onLeave?: () => void;
28
33
  ws?: WebSocket;
29
34
  constructor(useJSON?: boolean);
@@ -38,10 +43,14 @@ export declare class SignalClient {
38
43
  sendAddTrack(req: AddTrackRequest): void;
39
44
  sendUpdateTrackSettings(settings: UpdateTrackSettings): void;
40
45
  sendUpdateSubscription(sub: UpdateSubscription): void;
46
+ sendSyncState(sync: SyncState): void;
41
47
  sendUpdateVideoLayers(trackSid: string, layers: VideoLayer[]): void;
48
+ sendUpdateSubscriptionPermissions(allParticipants: boolean, trackPermissions: TrackPermission[]): void;
49
+ sendSimulateScenario(scenario: SimulateScenario): void;
42
50
  sendLeave(): void;
43
- sendRequest(req: SignalRequest): void;
51
+ sendRequest(req: SignalRequest): Promise<void>;
44
52
  private handleSignalResponse;
45
53
  private handleWSError;
46
54
  }
55
+ export declare function toProtoSessionDescription(rsd: RTCSessionDescription | RTCSessionDescriptionInit): SessionDescription;
47
56
  export {};
@@ -12,12 +12,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.SignalClient = void 0;
15
+ exports.toProtoSessionDescription = exports.SignalClient = void 0;
16
16
  require("webrtc-adapter");
17
17
  const logger_1 = __importDefault(require("../logger"));
18
18
  const livekit_rtc_1 = require("../proto/livekit_rtc");
19
19
  const errors_1 = require("../room/errors");
20
- const version_1 = require("../version");
20
+ const utils_1 = require("../room/utils");
21
21
  /** @internal */
22
22
  class SignalClient {
23
23
  constructor(useJSON = false) {
@@ -46,13 +46,8 @@ class SignalClient {
46
46
  // strip trailing slash
47
47
  url = url.replace(/\/$/, '');
48
48
  url += '/rtc';
49
- let params = `?access_token=${token}&protocol=${version_1.protocolVersion}&sdk=js&version=${version_1.version}`;
50
- if (opts.reconnect) {
51
- params += '&reconnect=1';
52
- }
53
- if (opts.autoSubscribe !== undefined) {
54
- params += `&auto_subscribe=${opts.autoSubscribe ? '1' : '0'}`;
55
- }
49
+ const clientInfo = utils_1.getClientInfo();
50
+ const params = createConnectionParams(token, clientInfo, opts);
56
51
  return new Promise((resolve, reject) => {
57
52
  logger_1.default.debug('connecting to', url + params);
58
53
  this.ws = undefined;
@@ -61,7 +56,7 @@ class SignalClient {
61
56
  ws.onerror = (ev) => __awaiter(this, void 0, void 0, function* () {
62
57
  if (!this.ws) {
63
58
  try {
64
- const resp = yield fetch(`http${url.substr(2)}/validate${params}`);
59
+ const resp = yield fetch(`http${url.substring(2)}/validate${params}`);
65
60
  if (!resp.ok) {
66
61
  const msg = yield resp.text();
67
62
  reject(new errors_1.ConnectionError(msg));
@@ -86,7 +81,7 @@ class SignalClient {
86
81
  resolve();
87
82
  }
88
83
  };
89
- ws.onmessage = (ev) => {
84
+ ws.onmessage = (ev) => __awaiter(this, void 0, void 0, function* () {
90
85
  // not considered connected until JoinResponse is received
91
86
  let msg;
92
87
  if (typeof ev.data === 'string') {
@@ -111,8 +106,11 @@ class SignalClient {
111
106
  }
112
107
  return;
113
108
  }
109
+ if (this.signalLatency) {
110
+ yield utils_1.sleep(this.signalLatency);
111
+ }
114
112
  this.handleSignalResponse(msg);
115
- };
113
+ });
116
114
  ws.onclose = (ev) => {
117
115
  if (!this.isConnected)
118
116
  return;
@@ -149,7 +147,7 @@ class SignalClient {
149
147
  });
150
148
  }
151
149
  sendIceCandidate(candidate, target) {
152
- logger_1.default.debug('sending ice candidate', candidate);
150
+ logger_1.default.trace('sending ice candidate', candidate);
153
151
  this.sendRequest({
154
152
  trickle: {
155
153
  candidateInit: JSON.stringify(candidate),
@@ -176,6 +174,9 @@ class SignalClient {
176
174
  sendUpdateSubscription(sub) {
177
175
  this.sendRequest({ subscription: sub });
178
176
  }
177
+ sendSyncState(sync) {
178
+ this.sendRequest({ syncState: sync });
179
+ }
179
180
  sendUpdateVideoLayers(trackSid, layers) {
180
181
  this.sendRequest({
181
182
  updateLayers: {
@@ -184,24 +185,43 @@ class SignalClient {
184
185
  },
185
186
  });
186
187
  }
188
+ sendUpdateSubscriptionPermissions(allParticipants, trackPermissions) {
189
+ this.sendRequest({
190
+ subscriptionPermissions: {
191
+ allParticipants,
192
+ trackPermissions,
193
+ },
194
+ });
195
+ }
196
+ sendSimulateScenario(scenario) {
197
+ this.sendRequest({
198
+ simulate: scenario,
199
+ });
200
+ }
187
201
  sendLeave() {
188
202
  this.sendRequest(livekit_rtc_1.SignalRequest.fromPartial({ leave: {} }));
189
203
  }
190
204
  sendRequest(req) {
191
- if (!this.ws) {
192
- throw new errors_1.ConnectionError('cannot send signal request before connected');
193
- }
194
- try {
195
- if (this.useJSON) {
196
- this.ws.send(JSON.stringify(livekit_rtc_1.SignalRequest.toJSON(req)));
205
+ return __awaiter(this, void 0, void 0, function* () {
206
+ if (this.signalLatency) {
207
+ yield utils_1.sleep(this.signalLatency);
197
208
  }
198
- else {
199
- this.ws.send(livekit_rtc_1.SignalRequest.encode(req).finish());
209
+ if (!this.ws) {
210
+ logger_1.default.error('cannot send signal request before connected');
211
+ return;
200
212
  }
201
- }
202
- catch (e) {
203
- logger_1.default.error('error sending signal message', e);
204
- }
213
+ try {
214
+ if (this.useJSON) {
215
+ this.ws.send(JSON.stringify(livekit_rtc_1.SignalRequest.toJSON(req)));
216
+ }
217
+ else {
218
+ this.ws.send(livekit_rtc_1.SignalRequest.encode(req).finish());
219
+ }
220
+ }
221
+ catch (e) {
222
+ logger_1.default.error('error sending signal message', e);
223
+ }
224
+ });
205
225
  }
206
226
  handleSignalResponse(msg) {
207
227
  if (msg.answer) {
@@ -257,6 +277,21 @@ class SignalClient {
257
277
  this.onConnectionQuality(msg.connectionQuality);
258
278
  }
259
279
  }
280
+ else if (msg.streamStateUpdate) {
281
+ if (this.onStreamStateUpdate) {
282
+ this.onStreamStateUpdate(msg.streamStateUpdate);
283
+ }
284
+ }
285
+ else if (msg.subscribedQualityUpdate) {
286
+ if (this.onSubscribedQualityUpdate) {
287
+ this.onSubscribedQualityUpdate(msg.subscribedQualityUpdate);
288
+ }
289
+ }
290
+ else if (msg.subscriptionPermissionUpdate) {
291
+ if (this.onSubscriptionPermissionUpdate) {
292
+ this.onSubscriptionPermissionUpdate(msg.subscriptionPermissionUpdate);
293
+ }
294
+ }
260
295
  else {
261
296
  logger_1.default.debug('unsupported message', msg);
262
297
  }
@@ -290,4 +325,36 @@ function toProtoSessionDescription(rsd) {
290
325
  };
291
326
  return sd;
292
327
  }
328
+ exports.toProtoSessionDescription = toProtoSessionDescription;
329
+ function createConnectionParams(token, info, opts) {
330
+ const params = new URLSearchParams();
331
+ params.set('access_token', token);
332
+ // opts
333
+ if (opts === null || opts === void 0 ? void 0 : opts.reconnect) {
334
+ params.set('reconnect', '1');
335
+ }
336
+ if ((opts === null || opts === void 0 ? void 0 : opts.autoSubscribe) !== undefined) {
337
+ params.set('auto_subscribe', opts.autoSubscribe ? '1' : '0');
338
+ }
339
+ // ClientInfo
340
+ params.set('sdk', 'js');
341
+ params.set('version', info.version);
342
+ params.set('protocol', info.protocol.toString());
343
+ if (info.deviceModel) {
344
+ params.set('device_model', info.deviceModel);
345
+ }
346
+ if (info.os) {
347
+ params.set('os', info.os);
348
+ }
349
+ if (info.osVersion) {
350
+ params.set('os_version', info.osVersion);
351
+ }
352
+ if (info.browser) {
353
+ params.set('browser', info.browser);
354
+ }
355
+ if (info.browserVersion) {
356
+ params.set('browser_version', info.browserVersion);
357
+ }
358
+ return `?${params.toString()}`;
359
+ }
293
360
  //# sourceMappingURL=SignalClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SignalClient.js","sourceRoot":"","sources":["../../src/api/SignalClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SignalClient.js","sourceRoot":"","sources":["../../src/api/SignalClient.ts"],"names":[],"mappings":"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"}
package/dist/connect.js CHANGED
@@ -59,6 +59,9 @@ function connect(url, token, options) {
59
59
  var _a, _b, _c, _d;
60
60
  return __awaiter(this, void 0, void 0, function* () {
61
61
  options !== null && options !== void 0 ? options : (options = {});
62
+ if (options.adaptiveStream === undefined) {
63
+ options.adaptiveStream = options.autoManageVideo;
64
+ }
62
65
  logger_1.setLogLevel((_a = options.logLevel) !== null && _a !== void 0 ? _a : logger_1.LogLevel.warn);
63
66
  const config = (_b = options.rtcConfig) !== null && _b !== void 0 ? _b : {};
64
67
  if (options.iceServers) {
@@ -1 +1 @@
1
- {"version":3,"file":"connect.js","sourceRoot":"","sources":["../src/connect.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mDAAsD;AAItD,0CAAmD;AACnD,0CAA0C;AAC1C,uDAA+B;AAE/B,qCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAEhB;;;;;;;;;;;;;;;;GAgBG;AACH,SAAsB,OAAO,CAC3B,GAAW,EACX,KAAa,EACb,OAAwB;;;QAExB,OAAO,aAAP,OAAO,cAAP,OAAO,IAAP,OAAO,GAAK,EAAE,EAAC;QACf,oBAAW,CAAC,MAAA,OAAO,CAAC,QAAQ,mCAAI,iBAAQ,CAAC,IAAI,CAAC,CAAC;QAE/C,MAAM,MAAM,GAAqB,MAAA,OAAO,CAAC,SAAS,mCAAI,EAAE,CAAC;QACzD,IAAI,OAAO,CAAC,UAAU,EAAE;YACtB,MAAM,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;SACxC;QAED,MAAM,IAAI,GAAG,IAAI,cAAI,CAAC,OAAO,CAAC,CAAC;QAE/B,kBAAkB;QAClB,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAExC,MAAM,YAAY,GAAY,MAAA,OAAO,CAAC,KAAK,mCAAI,KAAK,CAAC;QACrD,MAAM,YAAY,GAAY,MAAA,OAAO,CAAC,KAAK,mCAAI,KAAK,CAAC;QAErD,IAAI,YAAY,IAAI,YAAY,EAAE;YAChC,UAAU,CAAC,GAAS,EAAE;gBACpB,qBAAqB;gBACrB,IAAI,GAAQ,CAAC;gBACb,IAAI,YAAY,IAAI,YAAY,EAAE;oBAChC,IAAI;wBACF,MAAM,IAAI,CAAC,gBAAgB,CAAC,yBAAyB,EAAE,CAAC;qBACzD;oBAAC,OAAO,CAAC,EAAE;wBACV,MAAM,OAAO,GAAG,2BAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;wBACjD,gBAAG,CAAC,IAAI,CAAC,qCAAqC,EAAE,OAAO,CAAC,CAAC;wBACzD,IAAI,CAAC,YAAY,KAAK,EAAE;4BACtB,gBAAG,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;yBACrB;wBAED,0DAA0D;wBAC1D,IAAI,OAAO,KAAK,2BAAkB,CAAC,QAAQ;+BACrC,OAAO,KAAK,2BAAkB,CAAC,WAAW,EAAE;4BAChD,IAAI;gCACF,MAAM,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;6BACxD;4BAAC,OAAO,QAAQ,EAAE;gCACjB,GAAG,GAAG,QAAQ,CAAC;6BAChB;yBACF;6BAAM;4BACL,GAAG,GAAG,CAAC,CAAC;yBACT;qBACF;iBACF;qBAAM,IAAI,YAAY,EAAE;oBACvB,IAAI;wBACF,MAAM,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;qBACxD;oBAAC,OAAO,CAAC,EAAE;wBACV,GAAG,GAAG,CAAC,CAAC;qBACT;iBACF;qBAAM,IAAI,YAAY,EAAE;oBACvB,IAAI;wBACF,MAAM,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;qBACpD;oBAAC,OAAO,CAAC,EAAE;wBACV,GAAG,GAAG,CAAC,CAAC;qBACT;iBACF;gBAED,IAAI,GAAG,EAAE;oBACP,IAAI,CAAC,IAAI,CAAC,kBAAS,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;oBAC5C,gBAAG,CAAC,KAAK,CAAC,wBAAwB,EAAE,GAAG,CAAC,CAAC;iBAC1C;YACH,CAAC,CAAA,CAAC,CAAC;SACJ;QAED,OAAO,IAAI,CAAC;;CACb;AArED,0BAqEC"}
1
+ {"version":3,"file":"connect.js","sourceRoot":"","sources":["../src/connect.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -2,6 +2,7 @@ import { setLogLevel } from './logger';
2
2
  import { DataPacket_Kind, VideoQuality } from './proto/livekit_models';
3
3
  import LocalParticipant from './room/participant/LocalParticipant';
4
4
  import Participant, { ConnectionQuality } from './room/participant/Participant';
5
+ import { ParticipantTrackPermission } from './room/participant/ParticipantTrackPermission';
5
6
  import RemoteParticipant from './room/participant/RemoteParticipant';
6
7
  import Room, { RoomState } from './room/Room';
7
8
  import LocalAudioTrack from './room/track/LocalAudioTrack';
@@ -9,15 +10,17 @@ import LocalTrack from './room/track/LocalTrack';
9
10
  import LocalTrackPublication from './room/track/LocalTrackPublication';
10
11
  import LocalVideoTrack from './room/track/LocalVideoTrack';
11
12
  import RemoteAudioTrack from './room/track/RemoteAudioTrack';
13
+ import RemoteTrack from './room/track/RemoteTrack';
12
14
  import RemoteTrackPublication from './room/track/RemoteTrackPublication';
13
15
  import RemoteVideoTrack from './room/track/RemoteVideoTrack';
14
- import TrackPublication from './room/track/TrackPublication';
16
+ import { TrackPublication } from './room/track/TrackPublication';
15
17
  export * from './connect';
16
18
  export * from './options';
17
19
  export * from './room/errors';
18
20
  export * from './room/events';
21
+ export * from './room/track/create';
19
22
  export * from './room/track/options';
20
23
  export * from './room/track/Track';
21
24
  export * from './room/track/types';
22
25
  export * from './version';
23
- export { setLogLevel, Room, RoomState, DataPacket_Kind, ConnectionQuality, Participant, RemoteParticipant, LocalParticipant, LocalAudioTrack, LocalVideoTrack, LocalTrack, LocalTrackPublication, RemoteAudioTrack, RemoteVideoTrack, RemoteTrackPublication, TrackPublication, VideoQuality, };
26
+ export { setLogLevel, Room, RoomState, DataPacket_Kind, ConnectionQuality, Participant, RemoteParticipant, LocalParticipant, LocalAudioTrack, LocalVideoTrack, LocalTrack, LocalTrackPublication, RemoteTrack, RemoteAudioTrack, RemoteVideoTrack, RemoteTrackPublication, ParticipantTrackPermission, TrackPublication, VideoQuality, };
package/dist/index.js CHANGED
@@ -25,7 +25,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
25
25
  return (mod && mod.__esModule) ? mod : { "default": mod };
26
26
  };
27
27
  Object.defineProperty(exports, "__esModule", { value: true });
28
- exports.VideoQuality = exports.TrackPublication = exports.RemoteTrackPublication = exports.RemoteVideoTrack = exports.RemoteAudioTrack = exports.LocalTrackPublication = exports.LocalTrack = exports.LocalVideoTrack = exports.LocalAudioTrack = exports.LocalParticipant = exports.RemoteParticipant = exports.Participant = exports.ConnectionQuality = exports.DataPacket_Kind = exports.RoomState = exports.Room = exports.setLogLevel = void 0;
28
+ exports.VideoQuality = exports.TrackPublication = exports.RemoteTrackPublication = exports.RemoteVideoTrack = exports.RemoteAudioTrack = exports.RemoteTrack = exports.LocalTrackPublication = exports.LocalTrack = exports.LocalVideoTrack = exports.LocalAudioTrack = exports.LocalParticipant = exports.RemoteParticipant = exports.Participant = exports.ConnectionQuality = exports.DataPacket_Kind = exports.RoomState = exports.Room = exports.setLogLevel = void 0;
29
29
  const logger_1 = require("./logger");
30
30
  Object.defineProperty(exports, "setLogLevel", { enumerable: true, get: function () { return logger_1.setLogLevel; } });
31
31
  const livekit_models_1 = require("./proto/livekit_models");
@@ -51,16 +51,19 @@ const LocalVideoTrack_1 = __importDefault(require("./room/track/LocalVideoTrack"
51
51
  exports.LocalVideoTrack = LocalVideoTrack_1.default;
52
52
  const RemoteAudioTrack_1 = __importDefault(require("./room/track/RemoteAudioTrack"));
53
53
  exports.RemoteAudioTrack = RemoteAudioTrack_1.default;
54
+ const RemoteTrack_1 = __importDefault(require("./room/track/RemoteTrack"));
55
+ exports.RemoteTrack = RemoteTrack_1.default;
54
56
  const RemoteTrackPublication_1 = __importDefault(require("./room/track/RemoteTrackPublication"));
55
57
  exports.RemoteTrackPublication = RemoteTrackPublication_1.default;
56
58
  const RemoteVideoTrack_1 = __importDefault(require("./room/track/RemoteVideoTrack"));
57
59
  exports.RemoteVideoTrack = RemoteVideoTrack_1.default;
58
- const TrackPublication_1 = __importDefault(require("./room/track/TrackPublication"));
59
- exports.TrackPublication = TrackPublication_1.default;
60
+ const TrackPublication_1 = require("./room/track/TrackPublication");
61
+ Object.defineProperty(exports, "TrackPublication", { enumerable: true, get: function () { return TrackPublication_1.TrackPublication; } });
60
62
  __exportStar(require("./connect"), exports);
61
63
  __exportStar(require("./options"), exports);
62
64
  __exportStar(require("./room/errors"), exports);
63
65
  __exportStar(require("./room/events"), exports);
66
+ __exportStar(require("./room/track/create"), exports);
64
67
  __exportStar(require("./room/track/options"), exports);
65
68
  __exportStar(require("./room/track/Track"), exports);
66
69
  __exportStar(require("./room/track/types"), exports);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAuC;AAwBrC,4FAxBO,oBAAW,OAwBP;AAvBb,2DAAuE;AA0BrE,gGA1BO,gCAAe,OA0BP;AAaf,6FAvCwB,6BAAY,OAuCxB;AAtCd,2FAAmE;AA6BjE,2BA7BK,0BAAgB,CA6BL;AA5BlB,8EAAgF;AA0B9E,sBA1BK,qBAAW,CA0BL;AADX,kGAzBoB,+BAAiB,OAyBpB;AAxBnB,6FAAqE;AA0BnE,4BA1BK,2BAAiB,CA0BL;AAzBnB,oDAA8C;AAoB5C,eApBK,cAAI,CAoBL;AACJ,0FArBa,gBAAS,OAqBb;AApBX,mFAA2D;AA0BzD,0BA1BK,yBAAe,CA0BL;AAzBjB,yEAAiD;AA2B/C,qBA3BK,oBAAU,CA2BL;AA1BZ,+FAAuE;AA2BrE,gCA3BK,+BAAqB,CA2BL;AA1BvB,mFAA2D;AAwBzD,0BAxBK,yBAAe,CAwBL;AAvBjB,qFAA6D;AA0B3D,2BA1BK,0BAAgB,CA0BL;AAzBlB,iGAAyE;AA2BvE,iCA3BK,gCAAsB,CA2BL;AA1BxB,qFAA6D;AAyB3D,2BAzBK,0BAAgB,CAyBL;AAxBlB,qFAA6D;AA0B3D,2BA1BK,0BAAgB,CA0BL;AAxBlB,4CAA0B;AAC1B,4CAA0B;AAC1B,gDAA8B;AAC9B,gDAA8B;AAC9B,uDAAqC;AACrC,qDAAmC;AACnC,qDAAmC;AACnC,4CAA0B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAuC;AA2BrC,4FA3BO,oBAAW,OA2BP;AA1Bb,2DAAuE;AA6BrE,gGA7BO,gCAAe,OA6BP;AAef,6FA5CwB,6BAAY,OA4CxB;AA3Cd,2FAAmE;AAgCjE,2BAhCK,0BAAgB,CAgCL;AA/BlB,8EAAgF;AA6B9E,sBA7BK,qBAAW,CA6BL;AADX,kGA5BoB,+BAAiB,OA4BpB;AA1BnB,6FAAqE;AA4BnE,4BA5BK,2BAAiB,CA4BL;AA3BnB,oDAA8C;AAsB5C,eAtBK,cAAI,CAsBL;AACJ,0FAvBa,gBAAS,OAuBb;AAtBX,mFAA2D;AA4BzD,0BA5BK,yBAAe,CA4BL;AA3BjB,yEAAiD;AA6B/C,qBA7BK,oBAAU,CA6BL;AA5BZ,+FAAuE;AA6BrE,gCA7BK,+BAAqB,CA6BL;AA5BvB,mFAA2D;AA0BzD,0BA1BK,yBAAe,CA0BL;AAzBjB,qFAA6D;AA6B3D,2BA7BK,0BAAgB,CA6BL;AA5BlB,2EAAmD;AA2BjD,sBA3BK,qBAAW,CA2BL;AA1Bb,iGAAyE;AA6BvE,iCA7BK,gCAAsB,CA6BL;AA5BxB,qFAA6D;AA2B3D,2BA3BK,0BAAgB,CA2BL;AA1BlB,oEAAiE;AA6B/D,iGA7BO,mCAAgB,OA6BP;AA3BlB,4CAA0B;AAC1B,4CAA0B;AAC1B,gDAA8B;AAC9B,gDAA8B;AAC9B,sDAAoC;AACpC,uDAAqC;AACrC,qDAAmC;AACnC,qDAAmC;AACnC,4CAA0B"}
package/dist/logger.js CHANGED
@@ -15,6 +15,7 @@ var LogLevel;
15
15
  LogLevel["silent"] = "silent";
16
16
  })(LogLevel = exports.LogLevel || (exports.LogLevel = {}));
17
17
  const livekitLogger = loglevel_1.default.getLogger('livekit');
18
+ livekitLogger.setLevel(LogLevel.info);
18
19
  exports.default = livekitLogger;
19
20
  function setLogLevel(level) {
20
21
  livekitLogger.setLevel(level);
@@ -1 +1 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":";;;;;;AAAA,wDAA2B;AAI3B,IAAY,QAOX;AAPD,WAAY,QAAQ;IAClB,2BAAe,CAAA;IACf,2BAAe,CAAA;IACf,yBAAa,CAAA;IACb,yBAAa,CAAA;IACb,2BAAe,CAAA;IACf,6BAAiB,CAAA;AACnB,CAAC,EAPW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAOnB;AAED,MAAM,aAAa,GAAG,kBAAG,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;AAE/C,kBAAe,aAAa,CAAC;AAE7B,SAAgB,WAAW,CAAC,KAA8B;IACxD,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC;AAFD,kCAEC"}
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":";;;;;;AAAA,wDAA2B;AAI3B,IAAY,QAOX;AAPD,WAAY,QAAQ;IAClB,2BAAe,CAAA;IACf,2BAAe,CAAA;IACf,yBAAa,CAAA;IACb,yBAAa,CAAA;IACb,2BAAe,CAAA;IACf,6BAAiB,CAAA;AACnB,CAAC,EAPW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAOnB;AAED,MAAM,aAAa,GAAG,kBAAG,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;AAE/C,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAEtC,kBAAe,aAAa,CAAC;AAE7B,SAAgB,WAAW,CAAC,KAA8B;IACxD,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC;AAFD,kCAEC"}
package/dist/options.d.ts CHANGED
@@ -5,15 +5,21 @@ import { AudioCaptureOptions, CreateLocalTracksOptions, TrackPublishDefaults, Vi
5
5
  */
6
6
  export interface RoomOptions {
7
7
  /**
8
- * automatically manage quality of subscribed video tracks, subscribe to the
9
- * an appropriate resolution based on the size of the video elements that
10
- * tracks are attached to.
8
+ * AdaptiveStream lets LiveKit automatically manage quality of subscribed
9
+ * video tracks to optimize for bandwidth and CPU.
10
+ * When attached video elements are visible, it'll choose an appropriate
11
+ * resolution based on the size of largest video element it's attached to.
11
12
  *
12
- * also observes the visibility of attached tracks and pauses receiving data
13
- * if they are not visible. when an attached element becomes visible again,
14
- * the track resumes receiving data.
13
+ * When none of the video elements are visible, it'll temporarily pause
14
+ * the data flow until they are visible again.
15
15
  */
16
- autoManageVideo?: boolean;
16
+ adaptiveStream?: boolean;
17
+ /**
18
+ * enable Dynacast, off by default. With Dynacast dynamically pauses
19
+ * video layers that are not being consumed by any subscribers, significantly
20
+ * reducing publishing CPU and bandwidth usage.
21
+ */
22
+ dynacast?: boolean;
17
23
  /**
18
24
  * default options to use when capturing user's audio
19
25
  */
@@ -36,6 +42,11 @@ export interface RoomOptions {
36
42
  * experimental flag, disable client managed layer pause when publishing capability is limited
37
43
  */
38
44
  expDisableLayerPause?: boolean;
45
+ /**
46
+ * @internal
47
+ * experimental flag, introduce a delay before sending signaling messages
48
+ */
49
+ expSignalLatency?: number;
39
50
  }
40
51
  /**
41
52
  * Options for Room.connect()
@@ -56,15 +67,18 @@ export interface ConnectOptions extends CreateLocalTracksOptions {
56
67
  /** autosubscribe to room tracks upon connect, defaults to true */
57
68
  autoSubscribe?: boolean;
58
69
  /**
59
- * automatically manage quality of subscribed video tracks, subscribe to the
60
- * an appropriate resolution based on the size of the video elements that tracks
61
- * are attached to.
62
- *
63
- * also observes the visibility of attached tracks and pauses receiving data
64
- * if they are not visible.
65
- *
70
+ * see [[RoomOptions.adaptiveStream]]
71
+ */
72
+ adaptiveStream?: boolean;
73
+ /**
74
+ * alias for adaptiveStream
75
+ * @deprecated
66
76
  */
67
77
  autoManageVideo?: boolean;
78
+ /**
79
+ * see [[RoomOptions.dynacast]]
80
+ */
81
+ dynacast?: boolean;
68
82
  /** configures LiveKit internal log level */
69
83
  logLevel?: LogLevel | LogLevelDesc;
70
84
  /**
@@ -22,6 +22,7 @@ export declare enum VideoQuality {
22
22
  LOW = 0,
23
23
  MEDIUM = 1,
24
24
  HIGH = 2,
25
+ OFF = 3,
25
26
  UNRECOGNIZED = -1
26
27
  }
27
28
  export declare function videoQualityFromJSON(object: any): VideoQuality;
@@ -60,6 +61,7 @@ export interface ParticipantInfo {
60
61
  joinedAt: number;
61
62
  hidden: boolean;
62
63
  recorder: boolean;
64
+ name: string;
63
65
  }
64
66
  export declare enum ParticipantInfo_State {
65
67
  /** JOINING - websocket' connected, but not offered yet */
@@ -93,6 +95,9 @@ export interface TrackInfo {
93
95
  /** source of media */
94
96
  source: TrackSource;
95
97
  layers: VideoLayer[];
98
+ /** mime type of codec */
99
+ mimeType: string;
100
+ mid: string;
96
101
  }
97
102
  /** provide information about available spatial layers */
98
103
  export interface VideoLayer {
@@ -102,6 +107,7 @@ export interface VideoLayer {
102
107
  height: number;
103
108
  /** target bitrate, server will measure actual */
104
109
  bitrate: number;
110
+ ssrc: number;
105
111
  }
106
112
  /** new DataPacket API */
107
113
  export interface DataPacket {
@@ -134,6 +140,34 @@ export interface UserPacket {
134
140
  /** the ID of the participants who will receive the message (the message will be sent to all the people in the room if this variable is empty) */
135
141
  destinationSids: string[];
136
142
  }
143
+ export interface ParticipantTracks {
144
+ /** participant ID of participant to whom the tracks belong */
145
+ participantSid: string;
146
+ trackSids: string[];
147
+ }
148
+ /** details about the client */
149
+ export interface ClientInfo {
150
+ sdk: ClientInfo_SDK;
151
+ version: string;
152
+ protocol: number;
153
+ os: string;
154
+ osVersion: string;
155
+ deviceModel: string;
156
+ browser: string;
157
+ browserVersion: string;
158
+ }
159
+ export declare enum ClientInfo_SDK {
160
+ UNKNOWN = 0,
161
+ JS = 1,
162
+ SWIFT = 2,
163
+ ANDROID = 3,
164
+ FLUTTER = 4,
165
+ GO = 5,
166
+ UNITY = 6,
167
+ UNRECOGNIZED = -1
168
+ }
169
+ export declare function clientInfo_SDKFromJSON(object: any): ClientInfo_SDK;
170
+ export declare function clientInfo_SDKToJSON(object: ClientInfo_SDK): string;
137
171
  export declare const Room: {
138
172
  encode(message: Room, writer?: _m0.Writer): _m0.Writer;
139
173
  decode(input: _m0.Reader | Uint8Array, length?: number | undefined): Room;
@@ -197,6 +231,20 @@ export declare const UserPacket: {
197
231
  toJSON(message: UserPacket): unknown;
198
232
  fromPartial(object: DeepPartial<UserPacket>): UserPacket;
199
233
  };
234
+ export declare const ParticipantTracks: {
235
+ encode(message: ParticipantTracks, writer?: _m0.Writer): _m0.Writer;
236
+ decode(input: _m0.Reader | Uint8Array, length?: number | undefined): ParticipantTracks;
237
+ fromJSON(object: any): ParticipantTracks;
238
+ toJSON(message: ParticipantTracks): unknown;
239
+ fromPartial(object: DeepPartial<ParticipantTracks>): ParticipantTracks;
240
+ };
241
+ export declare const ClientInfo: {
242
+ encode(message: ClientInfo, writer?: _m0.Writer): _m0.Writer;
243
+ decode(input: _m0.Reader | Uint8Array, length?: number | undefined): ClientInfo;
244
+ fromJSON(object: any): ClientInfo;
245
+ toJSON(message: ClientInfo): unknown;
246
+ fromPartial(object: DeepPartial<ClientInfo>): ClientInfo;
247
+ };
200
248
  declare type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
201
249
  export declare type DeepPartial<T> = T extends Builtin ? T : T extends Array<infer U> ? Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? {
202
250
  [K in keyof T]?: DeepPartial<T[K]>;