@webex/web-client-media-engine 3.28.2 → 3.29.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/esm/index.js CHANGED
@@ -10454,6 +10454,7 @@ class EventEmitter$2 extends events$1.exports.EventEmitter {
10454
10454
 
10455
10455
  class IngressSdpMunger {
10456
10456
  constructor() {
10457
+ this.customCodecParameters = new Map();
10457
10458
  this.customRtxCodecParameters = new Map();
10458
10459
  this.ssrc = generateSsrc();
10459
10460
  }
@@ -10466,6 +10467,7 @@ class IngressSdpMunger {
10466
10467
  logErrorAndThrow(WcmeErrorType.SDP_MUNGE_MISSING_CODECS, `No codecs present in m-line with MID ${mediaDescription.mid} after filtering.`);
10467
10468
  }
10468
10469
  removeMidRidExtensions(mediaDescription);
10470
+ applyFormatParameters(mediaDescription, ['H264', 'opus'], this.customCodecParameters);
10469
10471
  applyFormatParameters(mediaDescription, ['rtx'], this.customRtxCodecParameters);
10470
10472
  if (options.twccDisabled) {
10471
10473
  disableTwcc(mediaDescription);
@@ -10492,6 +10494,11 @@ class IngressSdpMunger {
10492
10494
  });
10493
10495
  applyFormatParameters(mediaDescription, ['rtx'], this.customRtxCodecParameters);
10494
10496
  }
10497
+ setCodecParameters(parameters) {
10498
+ Object.entries(parameters).forEach(([param, value]) => {
10499
+ this.customCodecParameters.set(param, value);
10500
+ });
10501
+ }
10495
10502
  setRtxCodecParameters(parameters) {
10496
10503
  Object.entries(parameters).forEach(([param, value]) => {
10497
10504
  this.customRtxCodecParameters.set(param, value);
@@ -10764,6 +10771,9 @@ class ReceiveOnlyTransceiver extends Transceiver {
10764
10771
  this.metadata.lastActiveSpeakerUpdateTimestamp = getCurrentTimestamp();
10765
10772
  }
10766
10773
  }
10774
+ setCodecParameters(parameters) {
10775
+ this.munger.setCodecParameters(parameters);
10776
+ }
10767
10777
  setRtxCodecParameters(parameters) {
10768
10778
  this.munger.setRtxCodecParameters(parameters);
10769
10779
  }
@@ -14600,7 +14610,7 @@ class SendOnlyTransceiver extends Transceiver {
14600
14610
  const statsMap = new Map();
14601
14611
  const statsReport = yield this.sender.getStats();
14602
14612
  statsReport.forEach((stats, key) => {
14603
- var _a, _b, _c, _d;
14613
+ var _a, _b, _c, _d, _e;
14604
14614
  if (stats.type === 'outbound-rtp') {
14605
14615
  stats.mid = this.mid;
14606
14616
  stats.csi = this.csi;
@@ -14642,6 +14652,7 @@ class SendOnlyTransceiver extends Transceiver {
14642
14652
  }
14643
14653
  else if (stats.type === 'media-source') {
14644
14654
  stats.calliopeMediaType = this.mediaType;
14655
+ stats.trackLabel = (_e = this.publishedStream) === null || _e === void 0 ? void 0 : _e.label;
14645
14656
  }
14646
14657
  statsMap.set(key, stats);
14647
14658
  });
@@ -15324,6 +15335,9 @@ SCTP Max Message Size: ${maxMessageSize}`);
15324
15335
  munger,
15325
15336
  });
15326
15337
  if (getMediaFamily(mediaType) === MediaFamily.Video) {
15338
+ recvOnlyTransceiver.setCodecParameters({
15339
+ 'sps-pps-idr-in-keyframe': '1',
15340
+ });
15327
15341
  recvOnlyTransceiver.setRtxCodecParameters({
15328
15342
  'rtx-time': mediaType === MediaType.VideoMain ? defaultVideoMainRtxTime : defaultVideoSlidesRtxTime,
15329
15343
  });