livekit-client 2.0.6 → 2.0.7

Sign up to get free protection for your applications and to get access to all the features.
@@ -13473,7 +13473,7 @@ function getMatch(exp, ua) {
13473
13473
  return match && match.length >= id && match[id] || '';
13474
13474
  }
13475
13475
 
13476
- var version$1 = "2.0.6";
13476
+ var version$1 = "2.0.7";
13477
13477
 
13478
13478
  const version = version$1;
13479
13479
  const protocolVersion = 12;
@@ -14118,7 +14118,8 @@ function screenCaptureToDisplayMediaStreamOptions(options) {
14118
14118
  controller: options.controller,
14119
14119
  selfBrowserSurface: options.selfBrowserSurface,
14120
14120
  surfaceSwitching: options.surfaceSwitching,
14121
- systemAudio: options.systemAudio
14121
+ systemAudio: options.systemAudio,
14122
+ preferCurrentTab: options.preferCurrentTab
14122
14123
  };
14123
14124
  }
14124
14125
  function mimeTypeToVideoCodecString(mimeType) {
@@ -21522,7 +21523,17 @@ class LocalParticipant extends Participant {
21522
21523
  if (isSVCCodec(videoCodec)) {
21523
21524
  // vp9 svc with screenshare has problem to encode, always use L1T3 here
21524
21525
  if (track.source === Track.Source.ScreenShare && videoCodec === 'vp9') {
21525
- opts.scalabilityMode = 'L1T3';
21526
+ // Chrome does not allow more than 5 fps with L1T3, and it has encoding bugs with L3T3
21527
+ // It has a different path for screenshare handling and it seems to be untested/buggy
21528
+ // As a workaround, we are setting contentHint to force it to go through the same
21529
+ // path as regular camera video. While this is not optimal, it delivers the performance
21530
+ // that we need
21531
+ if ('contentHint' in track.mediaStreamTrack) {
21532
+ track.mediaStreamTrack.contentHint = 'motion';
21533
+ this.log.info('forcing contentHint to motion for screenshare with VP9', Object.assign(Object.assign({}, this.logContext), getLogContextFromTrack(track)));
21534
+ } else {
21535
+ opts.scalabilityMode = 'L1T3';
21536
+ }
21526
21537
  }
21527
21538
  // set scalabilityMode to 'L3T3_KEY' by default
21528
21539
  opts.scalabilityMode = (_e = opts.scalabilityMode) !== null && _e !== void 0 ? _e : 'L3T3_KEY';
@@ -22524,6 +22535,7 @@ class Room extends eventsExports.EventEmitter {
22524
22535
  }
22525
22536
  if (nextUrl) {
22526
22537
  this.log.info("Initial connection failed with ConnectionError: ".concat(e.message, ". Retrying with another region: ").concat(nextUrl), this.logContext);
22538
+ this.recreateEngine();
22527
22539
  yield connectFn(resolve, reject, nextUrl);
22528
22540
  } else {
22529
22541
  this.handleDisconnect(this.options.stopLocalTrackOnUnpublish);