livekit-client 0.14.2 → 0.15.2

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 (108) hide show
  1. package/.github/workflows/{lint.yaml → test.yaml} +7 -4
  2. package/.gitmodules +3 -0
  3. package/README.md +46 -14
  4. package/dist/api/SignalClient.d.ts +7 -32
  5. package/dist/api/SignalClient.js +37 -8
  6. package/dist/api/SignalClient.js.map +1 -1
  7. package/dist/connect.d.ts +1 -1
  8. package/dist/connect.js +71 -73
  9. package/dist/connect.js.map +1 -1
  10. package/dist/index.d.ts +3 -3
  11. package/dist/index.js +4 -3
  12. package/dist/index.js.map +1 -1
  13. package/dist/logger.d.ts +10 -0
  14. package/dist/logger.js +15 -0
  15. package/dist/logger.js.map +1 -1
  16. package/dist/options.d.ts +83 -19
  17. package/dist/options.js +0 -10
  18. package/dist/options.js.map +1 -1
  19. package/dist/proto/livekit_models.d.ts +42 -1
  20. package/dist/proto/livekit_models.js +292 -4
  21. package/dist/proto/livekit_models.js.map +1 -1
  22. package/dist/proto/livekit_rtc.d.ts +115 -7
  23. package/dist/proto/livekit_rtc.js +810 -30
  24. package/dist/proto/livekit_rtc.js.map +1 -1
  25. package/dist/room/RTCEngine.d.ts +4 -2
  26. package/dist/room/RTCEngine.js +31 -35
  27. package/dist/room/RTCEngine.js.map +1 -1
  28. package/dist/room/Room.d.ts +16 -17
  29. package/dist/room/Room.js +125 -77
  30. package/dist/room/Room.js.map +1 -1
  31. package/dist/room/events.d.ts +115 -6
  32. package/dist/room/events.js +114 -5
  33. package/dist/room/events.js.map +1 -1
  34. package/dist/room/participant/LocalParticipant.d.ts +29 -11
  35. package/dist/room/participant/LocalParticipant.js +209 -160
  36. package/dist/room/participant/LocalParticipant.js.map +1 -1
  37. package/dist/room/participant/Participant.d.ts +2 -0
  38. package/dist/room/participant/Participant.js +3 -1
  39. package/dist/room/participant/Participant.js.map +1 -1
  40. package/dist/room/participant/RemoteParticipant.d.ts +1 -1
  41. package/dist/room/participant/RemoteParticipant.js +6 -5
  42. package/dist/room/participant/RemoteParticipant.js.map +1 -1
  43. package/dist/room/participant/publishUtils.d.ts +11 -0
  44. package/dist/room/participant/publishUtils.js +148 -0
  45. package/dist/room/participant/publishUtils.js.map +1 -0
  46. package/dist/room/participant/publishUtils.test.d.ts +1 -0
  47. package/dist/room/participant/publishUtils.test.js +79 -0
  48. package/dist/room/participant/publishUtils.test.js.map +1 -0
  49. package/dist/room/stats.d.ts +21 -6
  50. package/dist/room/stats.js +22 -1
  51. package/dist/room/stats.js.map +1 -1
  52. package/dist/room/track/LocalAudioTrack.d.ts +8 -3
  53. package/dist/room/track/LocalAudioTrack.js +49 -3
  54. package/dist/room/track/LocalAudioTrack.js.map +1 -1
  55. package/dist/room/track/LocalTrack.d.ts +4 -3
  56. package/dist/room/track/LocalTrack.js +6 -48
  57. package/dist/room/track/LocalTrack.js.map +1 -1
  58. package/dist/room/track/LocalVideoTrack.d.ts +14 -5
  59. package/dist/room/track/LocalVideoTrack.js +154 -62
  60. package/dist/room/track/LocalVideoTrack.js.map +1 -1
  61. package/dist/room/track/LocalVideoTrack.test.d.ts +1 -0
  62. package/dist/room/track/LocalVideoTrack.test.js +68 -0
  63. package/dist/room/track/LocalVideoTrack.test.js.map +1 -0
  64. package/dist/room/track/RemoteAudioTrack.d.ts +7 -0
  65. package/dist/room/track/RemoteAudioTrack.js +61 -0
  66. package/dist/room/track/RemoteAudioTrack.js.map +1 -1
  67. package/dist/room/track/RemoteTrackPublication.d.ts +2 -3
  68. package/dist/room/track/RemoteTrackPublication.js +12 -10
  69. package/dist/room/track/RemoteTrackPublication.js.map +1 -1
  70. package/dist/room/track/RemoteVideoTrack.d.ts +10 -6
  71. package/dist/room/track/RemoteVideoTrack.js +97 -44
  72. package/dist/room/track/RemoteVideoTrack.js.map +1 -1
  73. package/dist/room/track/Track.d.ts +10 -2
  74. package/dist/room/track/Track.js +29 -2
  75. package/dist/room/track/Track.js.map +1 -1
  76. package/dist/room/track/TrackPublication.d.ts +2 -0
  77. package/dist/room/track/TrackPublication.js +1 -0
  78. package/dist/room/track/TrackPublication.js.map +1 -1
  79. package/dist/room/track/create.d.ts +4 -6
  80. package/dist/room/track/create.js +10 -57
  81. package/dist/room/track/create.js.map +1 -1
  82. package/dist/room/track/defaults.d.ts +4 -0
  83. package/dist/room/track/defaults.js +21 -0
  84. package/dist/room/track/defaults.js.map +1 -0
  85. package/dist/room/track/options.d.ts +15 -65
  86. package/dist/room/track/options.js +14 -13
  87. package/dist/room/track/options.js.map +1 -1
  88. package/dist/room/track/utils.d.ts +3 -0
  89. package/dist/room/track/utils.js +68 -0
  90. package/dist/room/track/utils.js.map +1 -0
  91. package/dist/room/track/utils.test.d.ts +1 -0
  92. package/dist/room/track/utils.test.js +85 -0
  93. package/dist/room/track/utils.test.js.map +1 -0
  94. package/dist/room/utils.d.ts +7 -1
  95. package/dist/room/utils.js +29 -6
  96. package/dist/room/utils.js.map +1 -1
  97. package/dist/version.d.ts +1 -1
  98. package/dist/version.js +1 -1
  99. package/example/index.html +194 -178
  100. package/example/sample.ts +454 -325
  101. package/example/styles.css +144 -0
  102. package/example/webpack.config.js +1 -1
  103. package/jest.config.js +6 -0
  104. package/package.json +9 -6
  105. package/tsconfig.eslint.json +8 -1
  106. package/dist/room/defaults.d.ts +0 -5
  107. package/dist/room/defaults.js +0 -32
  108. package/dist/room/defaults.js.map +0 -1
@@ -1,4 +1,23 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
2
21
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
22
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
23
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -14,22 +33,21 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
14
33
  Object.defineProperty(exports, "__esModule", { value: true });
15
34
  const logger_1 = __importDefault(require("../../logger"));
16
35
  const livekit_rtc_1 = require("../../proto/livekit_rtc");
17
- const defaults_1 = require("../defaults");
18
36
  const errors_1 = require("../errors");
19
37
  const events_1 = require("../events");
20
- const create_1 = require("../track/create");
21
38
  const LocalAudioTrack_1 = __importDefault(require("../track/LocalAudioTrack"));
22
39
  const LocalTrackPublication_1 = __importDefault(require("../track/LocalTrackPublication"));
23
- const LocalVideoTrack_1 = __importDefault(require("../track/LocalVideoTrack"));
40
+ const LocalVideoTrack_1 = __importStar(require("../track/LocalVideoTrack"));
24
41
  const options_1 = require("../track/options");
25
42
  const Track_1 = require("../track/Track");
43
+ const utils_1 = require("../track/utils");
26
44
  const Participant_1 = __importDefault(require("./Participant"));
45
+ const publishUtils_1 = require("./publishUtils");
27
46
  const RemoteParticipant_1 = __importDefault(require("./RemoteParticipant"));
28
47
  class LocalParticipant extends Participant_1.default {
29
48
  /** @internal */
30
- constructor(sid, identity, engine) {
49
+ constructor(sid, identity, engine, options) {
31
50
  super(sid, identity);
32
- /** @internal */
33
51
  this.pendingPublishing = new Set();
34
52
  /** @internal */
35
53
  this.onTrackUnmuted = (track) => {
@@ -47,32 +65,27 @@ class LocalParticipant extends Participant_1.default {
47
65
  }
48
66
  this.engine.updateMuteStatus(track.sid, muted);
49
67
  };
50
- this.presets169 = [
51
- options_1.VideoPresets.qvga,
52
- options_1.VideoPresets.vga,
53
- options_1.VideoPresets.qhd,
54
- options_1.VideoPresets.hd,
55
- options_1.VideoPresets.fhd,
56
- ];
57
- this.presets43 = [
58
- options_1.VideoPresets43.qvga,
59
- options_1.VideoPresets43.vga,
60
- options_1.VideoPresets43.qhd,
61
- options_1.VideoPresets43.hd,
62
- options_1.VideoPresets43.fhd,
63
- ];
64
- this.presetsScreenShare = [
65
- options_1.ScreenSharePresets.vga,
66
- options_1.ScreenSharePresets.hd_8,
67
- options_1.ScreenSharePresets.hd_15,
68
- options_1.ScreenSharePresets.fhd_15,
69
- options_1.ScreenSharePresets.fhd_30,
70
- ];
68
+ this.handleSubscribedQualityUpdate = (update) => {
69
+ var _a, _b;
70
+ if (!((_a = this.roomOptions) === null || _a === void 0 ? void 0 : _a.dynacast)) {
71
+ return;
72
+ }
73
+ const pub = this.videoTracks.get(update.trackSid);
74
+ if (!pub) {
75
+ logger_1.default.warn('handleSubscribedQualityUpdate', 'received subscribed quality update for unknown track', update.trackSid);
76
+ return;
77
+ }
78
+ (_b = pub.videoTrack) === null || _b === void 0 ? void 0 : _b.setPublishingLayers(update.subscribedQualities);
79
+ };
80
+ this.onTrackUnpublish = (track) => {
81
+ this.unpublishTrack(track);
82
+ };
71
83
  this.audioTracks = new Map();
72
84
  this.videoTracks = new Map();
73
85
  this.tracks = new Map();
74
86
  this.engine = engine;
75
- this.engine.on(events_1.EngineEvent.RemoteMuteChanged, (trackSid, muted) => {
87
+ this.roomOptions = options;
88
+ this.engine.client.onRemoteMuteChanged = (trackSid, muted) => {
76
89
  const pub = this.tracks.get(trackSid);
77
90
  if (!pub || !pub.track) {
78
91
  return;
@@ -83,7 +96,14 @@ class LocalParticipant extends Participant_1.default {
83
96
  else {
84
97
  pub.unmute();
85
98
  }
86
- });
99
+ };
100
+ this.engine.client.onSubscribedQualityUpdate = this.handleSubscribedQualityUpdate;
101
+ }
102
+ get lastCameraError() {
103
+ return this.cameraError;
104
+ }
105
+ get lastMicrophoneError() {
106
+ return this.microphoneError;
87
107
  }
88
108
  getTrack(source) {
89
109
  const track = super.getTrack(source);
@@ -141,13 +161,17 @@ class LocalParticipant extends Participant_1.default {
141
161
  try {
142
162
  switch (source) {
143
163
  case Track_1.Track.Source.Camera:
144
- localTrack = yield create_1.createLocalVideoTrack();
164
+ [localTrack] = yield this.createTracks({
165
+ video: true,
166
+ });
145
167
  break;
146
168
  case Track_1.Track.Source.Microphone:
147
- localTrack = yield create_1.createLocalAudioTrack();
169
+ [localTrack] = yield this.createTracks({
170
+ audio: true,
171
+ });
148
172
  break;
149
173
  case Track_1.Track.Source.ScreenShare:
150
- [localTrack] = yield create_1.createLocalScreenTracks({ audio: false });
174
+ [localTrack] = yield this.createScreenTracks({ audio: false });
151
175
  break;
152
176
  default:
153
177
  throw new errors_1.TrackInvalidError(source);
@@ -176,24 +200,145 @@ class LocalParticipant extends Participant_1.default {
176
200
  }
177
201
  });
178
202
  }
203
+ /**
204
+ * Publish both camera and microphone at the same time. This is useful for
205
+ * displaying a single Permission Dialog box to the end user.
206
+ */
207
+ enableCameraAndMicrophone() {
208
+ return __awaiter(this, void 0, void 0, function* () {
209
+ if (this.pendingPublishing.has(Track_1.Track.Source.Camera)
210
+ || this.pendingPublishing.has(Track_1.Track.Source.Microphone)) {
211
+ // no-op it's already been requested
212
+ return;
213
+ }
214
+ this.pendingPublishing.add(Track_1.Track.Source.Camera);
215
+ this.pendingPublishing.add(Track_1.Track.Source.Microphone);
216
+ try {
217
+ const tracks = yield this.createTracks({
218
+ audio: true,
219
+ video: true,
220
+ });
221
+ yield Promise.all(tracks.map((track) => this.publishTrack(track)));
222
+ }
223
+ finally {
224
+ this.pendingPublishing.delete(Track_1.Track.Source.Camera);
225
+ this.pendingPublishing.delete(Track_1.Track.Source.Microphone);
226
+ }
227
+ });
228
+ }
229
+ /**
230
+ * Create local camera and/or microphone tracks
231
+ * @param options
232
+ * @returns
233
+ */
234
+ createTracks(options) {
235
+ var _a, _b;
236
+ return __awaiter(this, void 0, void 0, function* () {
237
+ const opts = utils_1.mergeDefaultOptions(options, (_a = this.roomOptions) === null || _a === void 0 ? void 0 : _a.audioCaptureDefaults, (_b = this.roomOptions) === null || _b === void 0 ? void 0 : _b.videoCaptureDefaults);
238
+ const constraints = utils_1.constraintsForOptions(opts);
239
+ let stream;
240
+ try {
241
+ stream = yield navigator.mediaDevices.getUserMedia(constraints);
242
+ }
243
+ catch (err) {
244
+ if (err instanceof Error) {
245
+ if (constraints.audio) {
246
+ this.microphoneError = err;
247
+ }
248
+ if (constraints.video) {
249
+ this.cameraError = err;
250
+ }
251
+ }
252
+ throw err;
253
+ }
254
+ if (constraints.audio) {
255
+ this.microphoneError = undefined;
256
+ }
257
+ if (constraints.video) {
258
+ this.cameraError = undefined;
259
+ }
260
+ return stream.getTracks().map((mediaStreamTrack) => {
261
+ const isAudio = mediaStreamTrack.kind === 'audio';
262
+ let trackOptions = isAudio ? options.audio : options.video;
263
+ if (typeof trackOptions === 'boolean' || !trackOptions) {
264
+ trackOptions = {};
265
+ }
266
+ let trackConstraints;
267
+ const conOrBool = isAudio ? constraints.audio : constraints.video;
268
+ if (typeof conOrBool !== 'boolean') {
269
+ trackConstraints = conOrBool;
270
+ }
271
+ const track = publishUtils_1.mediaTrackToLocalTrack(mediaStreamTrack, trackConstraints);
272
+ if (track.kind === Track_1.Track.Kind.Video) {
273
+ track.source = Track_1.Track.Source.Camera;
274
+ }
275
+ else if (track.kind === Track_1.Track.Kind.Audio) {
276
+ track.source = Track_1.Track.Source.Microphone;
277
+ }
278
+ return track;
279
+ });
280
+ });
281
+ }
282
+ /**
283
+ * Creates a screen capture tracks with getDisplayMedia().
284
+ * A LocalVideoTrack is always created and returned.
285
+ * If { audio: true }, and the browser supports audio capture, a LocalAudioTrack is also created.
286
+ */
287
+ createScreenTracks(options) {
288
+ var _a;
289
+ return __awaiter(this, void 0, void 0, function* () {
290
+ if (options === undefined) {
291
+ options = {};
292
+ }
293
+ if (options.resolution === undefined) {
294
+ options.resolution = options_1.VideoPresets.fhd.resolution;
295
+ }
296
+ let videoConstraints = true;
297
+ if (options.resolution) {
298
+ videoConstraints = {
299
+ width: options.resolution.width,
300
+ height: options.resolution.height,
301
+ frameRate: options.resolution.frameRate,
302
+ };
303
+ }
304
+ // typescript definition is missing getDisplayMedia: https://github.com/microsoft/TypeScript/issues/33232
305
+ // @ts-ignore
306
+ const stream = yield navigator.mediaDevices.getDisplayMedia({
307
+ audio: (_a = options.audio) !== null && _a !== void 0 ? _a : false,
308
+ video: videoConstraints,
309
+ });
310
+ const tracks = stream.getVideoTracks();
311
+ if (tracks.length === 0) {
312
+ throw new errors_1.TrackInvalidError('no video track found');
313
+ }
314
+ const screenVideo = new LocalVideoTrack_1.default(tracks[0]);
315
+ screenVideo.source = Track_1.Track.Source.ScreenShare;
316
+ const localTracks = [screenVideo];
317
+ if (stream.getAudioTracks().length > 0) {
318
+ const screenAudio = new LocalAudioTrack_1.default(stream.getAudioTracks()[0]);
319
+ screenAudio.source = Track_1.Track.Source.ScreenShareAudio;
320
+ localTracks.push(screenAudio);
321
+ }
322
+ return localTracks;
323
+ });
324
+ }
179
325
  /**
180
326
  * Publish a new track to the room
181
327
  * @param track
182
328
  * @param options
183
329
  */
184
330
  publishTrack(track, options) {
185
- var _a, _b, _c, _d, _e;
331
+ var _a, _b, _c, _d, _e, _f, _g, _h;
186
332
  return __awaiter(this, void 0, void 0, function* () {
187
- const opts = {};
188
- Object.assign(opts, defaults_1.getTrackPublishDefaults(), options);
333
+ const opts = Object.assign(Object.assign({}, (_a = this.roomOptions) === null || _a === void 0 ? void 0 : _a.publishDefaults), options);
189
334
  // convert raw media track into audio or video track
190
335
  if (track instanceof MediaStreamTrack) {
191
336
  switch (track.kind) {
192
337
  case 'audio':
193
- track = new LocalAudioTrack_1.default(track, options === null || options === void 0 ? void 0 : options.name);
338
+ track = new LocalAudioTrack_1.default(track);
194
339
  break;
195
340
  case 'video':
196
- track = new LocalVideoTrack_1.default(track, options === null || options === void 0 ? void 0 : options.name);
341
+ track = new LocalVideoTrack_1.default(track);
197
342
  break;
198
343
  default:
199
344
  throw new errors_1.TrackInvalidError(`unsupported MediaStreamTrack kind ${track.kind}`);
@@ -214,44 +359,35 @@ class LocalParticipant extends Participant_1.default {
214
359
  if (opts.source) {
215
360
  track.source = opts.source;
216
361
  }
217
- if (opts.name) {
218
- track.name = opts.name;
219
- }
220
362
  if (opts.stopMicTrackOnMute && track instanceof LocalAudioTrack_1.default) {
221
363
  track.stopOnMute = true;
222
364
  }
223
365
  // handle track actions
224
366
  track.on(events_1.TrackEvent.Muted, this.onTrackMuted);
225
367
  track.on(events_1.TrackEvent.Unmuted, this.onTrackUnmuted);
226
- track.on(events_1.TrackEvent.Ended, () => {
227
- this.unpublishTrack(track);
228
- });
229
- // get local track id for use during publishing
230
- const cid = track.mediaStreamTrack.id;
368
+ track.on(events_1.TrackEvent.Ended, this.onTrackUnpublish);
231
369
  // create track publication from track
232
370
  const req = livekit_rtc_1.AddTrackRequest.fromPartial({
233
- cid,
234
- name: track.name,
371
+ // get local track id for use during publishing
372
+ cid: track.mediaStreamTrack.id,
373
+ name: options === null || options === void 0 ? void 0 : options.name,
235
374
  type: Track_1.Track.kindToProto(track.kind),
236
375
  muted: track.isMuted,
237
376
  source: Track_1.Track.sourceToProto(track.source),
238
- disableDtx: !((_a = opts === null || opts === void 0 ? void 0 : opts.dtx) !== null && _a !== void 0 ? _a : true),
377
+ disableDtx: !((_b = opts === null || opts === void 0 ? void 0 : opts.dtx) !== null && _b !== void 0 ? _b : true),
239
378
  });
240
- if (track.dimensions) {
241
- req.width = track.dimensions.width;
242
- req.height = track.dimensions.height;
243
- }
244
- const ti = yield this.engine.addTrack(req);
245
- const publication = new LocalTrackPublication_1.default(track.kind, ti, track);
246
- track.sid = ti.sid;
379
+ // compute encodings and layers for video
247
380
  let encodings;
248
- // for video
249
381
  if (track.kind === Track_1.Track.Kind.Video) {
250
382
  // TODO: support react native, which doesn't expose getSettings
251
383
  const settings = track.mediaStreamTrack.getSettings();
252
- const width = (_b = settings.width) !== null && _b !== void 0 ? _b : (_c = track.dimensions) === null || _c === void 0 ? void 0 : _c.width;
253
- const height = (_d = settings.height) !== null && _d !== void 0 ? _d : (_e = track.dimensions) === null || _e === void 0 ? void 0 : _e.height;
254
- encodings = this.computeVideoEncodings(track.source === Track_1.Track.Source.ScreenShare, width, height, opts);
384
+ const width = (_c = settings.width) !== null && _c !== void 0 ? _c : (_d = track.dimensions) === null || _d === void 0 ? void 0 : _d.width;
385
+ const height = (_e = settings.height) !== null && _e !== void 0 ? _e : (_f = track.dimensions) === null || _f === void 0 ? void 0 : _f.height;
386
+ // width and height should be defined for video
387
+ req.width = width !== null && width !== void 0 ? width : 0;
388
+ req.height = height !== null && height !== void 0 ? height : 0;
389
+ encodings = publishUtils_1.computeVideoEncodings(track.source === Track_1.Track.Source.ScreenShare, width, height, opts);
390
+ req.layers = LocalVideoTrack_1.videoLayersFromEncodings(req.width, req.height, encodings);
255
391
  }
256
392
  else if (track.kind === Track_1.Track.Kind.Audio && opts.audioBitrate) {
257
393
  encodings = [
@@ -260,6 +396,9 @@ class LocalParticipant extends Participant_1.default {
260
396
  },
261
397
  ];
262
398
  }
399
+ const ti = yield this.engine.addTrack(req);
400
+ const publication = new LocalTrackPublication_1.default(track.kind, ti, track);
401
+ track.sid = ti.sid;
263
402
  if (!this.engine.publisher) {
264
403
  throw new errors_1.UnexpectedConnectionState('publisher is closed');
265
404
  }
@@ -273,7 +412,11 @@ class LocalParticipant extends Participant_1.default {
273
412
  // store RTPSender
274
413
  track.sender = transceiver.sender;
275
414
  if (track instanceof LocalVideoTrack_1.default) {
276
- track.startMonitor(this.engine.client);
415
+ const disableLayerPause = (_h = (_g = this.roomOptions) === null || _g === void 0 ? void 0 : _g.expDisableLayerPause) !== null && _h !== void 0 ? _h : false;
416
+ track.startMonitor(this.engine.client, disableLayerPause);
417
+ }
418
+ else if (track instanceof LocalAudioTrack_1.default) {
419
+ track.startMonitor();
277
420
  }
278
421
  if (opts.videoCodec) {
279
422
  this.setPreferredCodec(transceiver, track.kind, opts.videoCodec);
@@ -285,6 +428,7 @@ class LocalParticipant extends Participant_1.default {
285
428
  });
286
429
  }
287
430
  unpublishTrack(track) {
431
+ var _a, _b;
288
432
  // look through all published tracks to find the right ones
289
433
  const publication = this.getPublicationForTrack(track);
290
434
  logger_1.default.debug('unpublishTrack', 'unpublishing track', track);
@@ -296,13 +440,18 @@ class LocalParticipant extends Participant_1.default {
296
440
  track.removeListener(events_1.TrackEvent.Muted, this.onTrackMuted);
297
441
  track.removeListener(events_1.TrackEvent.Unmuted, this.onTrackUnmuted);
298
442
  }
299
- track.stop();
443
+ if ((_b = (_a = this.roomOptions) === null || _a === void 0 ? void 0 : _a.stopLocalTrackOnUnpublish) !== null && _b !== void 0 ? _b : true) {
444
+ track.stop();
445
+ }
300
446
  let mediaStreamTrack;
301
447
  if (track instanceof MediaStreamTrack) {
302
448
  mediaStreamTrack = track;
303
449
  }
304
450
  else {
305
451
  mediaStreamTrack = track.mediaStreamTrack;
452
+ track.off(events_1.TrackEvent.Muted, this.onTrackMuted);
453
+ track.off(events_1.TrackEvent.Unmuted, this.onTrackUnmuted);
454
+ track.off(events_1.TrackEvent.Ended, this.onTrackUnpublish);
306
455
  }
307
456
  if (this.engine.publisher) {
308
457
  const senders = this.engine.publisher.pc.getSenders();
@@ -426,106 +575,6 @@ class LocalParticipant extends Participant_1.default {
426
575
  transceiver.setCodecPreferences([selected]);
427
576
  }
428
577
  }
429
- computeVideoEncodings(isScreenShare, width, height, options) {
430
- let encodings;
431
- let videoEncoding = options === null || options === void 0 ? void 0 : options.videoEncoding;
432
- if (isScreenShare) {
433
- videoEncoding = options === null || options === void 0 ? void 0 : options.screenShareEncoding;
434
- }
435
- const useSimulcast = !isScreenShare && (options === null || options === void 0 ? void 0 : options.simulcast);
436
- if ((!videoEncoding && !useSimulcast) || !width || !height) {
437
- // don't set encoding when we are not simulcasting and user isn't restricting
438
- // encoding parameters
439
- return undefined;
440
- }
441
- if (!videoEncoding) {
442
- // find the right encoding based on width/height
443
- videoEncoding = this.determineAppropriateEncoding(isScreenShare, width, height);
444
- logger_1.default.debug('using video encoding', videoEncoding);
445
- }
446
- if (useSimulcast) {
447
- const presets = this.presetsForResolution(isScreenShare, width, height);
448
- const midPreset = presets[1];
449
- const lowPreset = presets[0];
450
- // if resolution is high enough, we would send [q, h, f] res..
451
- // otherwise only send [q, h]
452
- // NOTE:
453
- // 1. Ordering of these encodings is important. Chrome seems
454
- // to use the index into encodings to decide which layer
455
- // to disable when constrained (bandwidth or CPU). So,
456
- // encodings should be ordered in increasing spatial
457
- // resolution order.
458
- // 2. ion-sfu translates rids into layers. So, all encodings
459
- // should have the base layer `q` and then more added
460
- // based on other conditions.
461
- if (width >= 960) {
462
- encodings = [
463
- {
464
- rid: 'q',
465
- scaleResolutionDownBy: height / lowPreset.height,
466
- maxBitrate: lowPreset.encoding.maxBitrate,
467
- /* @ts-ignore */
468
- maxFramerate: lowPreset.encoding.maxFramerate,
469
- },
470
- {
471
- rid: 'h',
472
- scaleResolutionDownBy: height / midPreset.height,
473
- maxBitrate: midPreset.encoding.maxBitrate,
474
- /* @ts-ignore */
475
- maxFramerate: midPreset.encoding.maxFramerate,
476
- },
477
- {
478
- rid: 'f',
479
- maxBitrate: videoEncoding.maxBitrate,
480
- /* @ts-ignore */
481
- maxFramerate: videoEncoding.maxFramerate,
482
- },
483
- ];
484
- }
485
- else {
486
- encodings = [
487
- {
488
- rid: 'q',
489
- scaleResolutionDownBy: height / lowPreset.height,
490
- maxBitrate: lowPreset.encoding.maxBitrate,
491
- /* @ts-ignore */
492
- maxFramerate: lowPreset.encoding.maxFramerate,
493
- },
494
- {
495
- rid: 'h',
496
- maxBitrate: videoEncoding.maxBitrate,
497
- /* @ts-ignore */
498
- maxFramerate: videoEncoding.maxFramerate,
499
- },
500
- ];
501
- }
502
- }
503
- else {
504
- encodings = [videoEncoding];
505
- }
506
- return encodings;
507
- }
508
- determineAppropriateEncoding(isScreenShare, width, height) {
509
- const presets = this.presetsForResolution(isScreenShare, width, height);
510
- let { encoding } = presets[0];
511
- for (let i = 0; i < presets.length; i += 1) {
512
- const preset = presets[i];
513
- if (width >= preset.width && height >= preset.height) {
514
- encoding = preset.encoding;
515
- }
516
- }
517
- return encoding;
518
- }
519
- presetsForResolution(isScreenShare, width, height) {
520
- if (isScreenShare) {
521
- return this.presetsScreenShare;
522
- }
523
- const aspect = width / height;
524
- if (Math.abs(aspect - 16.0 / 9) < Math.abs(aspect - 4.0 / 3)) {
525
- return this.presets169;
526
- }
527
- return this.presets43;
528
- }
529
578
  }
530
579
  exports.default = LocalParticipant;
531
580
  //# sourceMappingURL=LocalParticipant.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LocalParticipant.js","sourceRoot":"","sources":["../../../src/room/participant/LocalParticipant.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LocalParticipant.js","sourceRoot":"","sources":["../../../src/room/participant/LocalParticipant.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,8 @@ export default class Participant extends EventEmitter {
23
23
  sid: string;
24
24
  /** client assigned identity, encoded in JWT token */
25
25
  identity: string;
26
+ /** client assigned display name, encoded in JWT token */
27
+ name?: string;
26
28
  /** client metadata, opaque to livekit */
27
29
  metadata?: string;
28
30
  lastSpokeAt?: Date | undefined;
@@ -112,6 +112,7 @@ class Participant extends events_1.EventEmitter {
112
112
  updateInfo(info) {
113
113
  this.identity = info.identity;
114
114
  this.sid = info.sid;
115
+ this.name = info.name;
115
116
  this.setMetadata(info.metadata);
116
117
  // set this last so setMetadata can detect changes
117
118
  this.participantInfo = info;
@@ -122,7 +123,8 @@ class Participant extends events_1.EventEmitter {
122
123
  const prevMetadata = this.metadata;
123
124
  this.metadata = md;
124
125
  if (changed) {
125
- this.emit(events_2.ParticipantEvent.MetadataChanged, prevMetadata);
126
+ this.emit(events_2.ParticipantEvent.MetadataChanged, prevMetadata, this);
127
+ this.emit(events_2.ParticipantEvent.ParticipantMetadataChanged, prevMetadata, this);
126
128
  }
127
129
  }
128
130
  /** @internal */
@@ -1 +1 @@
1
- {"version":3,"file":"Participant.js","sourceRoot":"","sources":["../../../src/room/participant/Participant.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Participant.js","sourceRoot":"","sources":["../../../src/room/participant/Participant.ts"],"names":[],"mappings":"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"}
@@ -17,7 +17,7 @@ export default class RemoteParticipant extends Participant {
17
17
  getTrack(source: Track.Source): RemoteTrackPublication | undefined;
18
18
  getTrackByName(name: string): RemoteTrackPublication | undefined;
19
19
  /** @internal */
20
- addSubscribedMediaTrack(mediaTrack: MediaStreamTrack, sid: Track.SID, receiver?: RTCRtpReceiver, autoManageVideo?: boolean, triesLeft?: number): RemoteTrackPublication | undefined;
20
+ addSubscribedMediaTrack(mediaTrack: MediaStreamTrack, sid: Track.SID, receiver?: RTCRtpReceiver, adaptiveStream?: boolean, triesLeft?: number): RemoteTrackPublication | undefined;
21
21
  /** @internal */
22
22
  get hasMetadata(): boolean;
23
23
  getTrackPublication(sid: Track.SID): RemoteTrackPublication | undefined;