@webex/web-client-media-engine 3.29.4 → 3.30.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/cjs/index.js +17 -3
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/index.js +17 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/types/index.d.ts +2 -0
- package/package.json +1 -1
package/dist/cjs/index.js
CHANGED
|
@@ -14507,6 +14507,7 @@ class SendOnlyTransceiver extends Transceiver {
|
|
|
14507
14507
|
this.rtxEnabled = false;
|
|
14508
14508
|
this.streamMuteStateChange = new TypedEvent();
|
|
14509
14509
|
this.streamPublishStateChange = new TypedEvent();
|
|
14510
|
+
this.streamEnded = new TypedEvent();
|
|
14510
14511
|
this.negotiationNeeded = new TypedEvent();
|
|
14511
14512
|
this.namedMediaGroupsChange = new TypedEvent();
|
|
14512
14513
|
this.requestedIdEncodingParamsMap = new Map();
|
|
@@ -14519,6 +14520,7 @@ class SendOnlyTransceiver extends Transceiver {
|
|
|
14519
14520
|
this.handleTrackChange = this.handleTrackChange.bind(this);
|
|
14520
14521
|
this.handleStreamConstraintsChange = this.handleStreamConstraintsChange.bind(this);
|
|
14521
14522
|
this.handleStreamMuteStateChange = this.handleStreamMuteStateChange.bind(this);
|
|
14523
|
+
this.handleStreamEnded = this.handleStreamEnded.bind(this);
|
|
14522
14524
|
}
|
|
14523
14525
|
replaceSenderSource(stream) {
|
|
14524
14526
|
var _a, _b;
|
|
@@ -14550,6 +14552,9 @@ class SendOnlyTransceiver extends Transceiver {
|
|
|
14550
14552
|
handleStreamMuteStateChange() {
|
|
14551
14553
|
this.streamMuteStateChange.emit();
|
|
14552
14554
|
}
|
|
14555
|
+
handleStreamEnded() {
|
|
14556
|
+
this.streamEnded.emit();
|
|
14557
|
+
}
|
|
14553
14558
|
get requested() {
|
|
14554
14559
|
return this.requestedIdEncodingParamsMap.size > 0;
|
|
14555
14560
|
}
|
|
@@ -14572,6 +14577,7 @@ class SendOnlyTransceiver extends Transceiver {
|
|
|
14572
14577
|
oldStream === null || oldStream === void 0 ? void 0 : oldStream.off(exports.LocalStreamEventNames.ConstraintsChange, this.handleStreamConstraintsChange);
|
|
14573
14578
|
oldStream === null || oldStream === void 0 ? void 0 : oldStream.off(exports.LocalStreamEventNames.UserMuteStateChange, this.handleStreamMuteStateChange);
|
|
14574
14579
|
oldStream === null || oldStream === void 0 ? void 0 : oldStream.off(exports.LocalStreamEventNames.SystemMuteStateChange, this.handleStreamMuteStateChange);
|
|
14580
|
+
oldStream === null || oldStream === void 0 ? void 0 : oldStream.off(exports.StreamEventNames.Ended, this.handleStreamEnded);
|
|
14575
14581
|
if (this.requested) {
|
|
14576
14582
|
yield this.replaceSenderSource(newStream);
|
|
14577
14583
|
}
|
|
@@ -14580,6 +14586,7 @@ class SendOnlyTransceiver extends Transceiver {
|
|
|
14580
14586
|
newStream === null || newStream === void 0 ? void 0 : newStream.on(exports.LocalStreamEventNames.ConstraintsChange, this.handleStreamConstraintsChange);
|
|
14581
14587
|
newStream === null || newStream === void 0 ? void 0 : newStream.on(exports.LocalStreamEventNames.UserMuteStateChange, this.handleStreamMuteStateChange);
|
|
14582
14588
|
newStream === null || newStream === void 0 ? void 0 : newStream.on(exports.LocalStreamEventNames.SystemMuteStateChange, this.handleStreamMuteStateChange);
|
|
14589
|
+
newStream === null || newStream === void 0 ? void 0 : newStream.on(exports.StreamEventNames.Ended, this.handleStreamEnded);
|
|
14583
14590
|
if ((!oldStream && newStream && !newStream.muted) ||
|
|
14584
14591
|
(oldStream && !newStream && !oldStream.muted)) {
|
|
14585
14592
|
this.streamPublishStateChange.emit();
|
|
@@ -15061,6 +15068,10 @@ class MultistreamConnection extends EventEmitter$2 {
|
|
|
15061
15068
|
this.sendSourceAdvertisement(mediaType);
|
|
15062
15069
|
this.sendMediaRequestStatus(mediaType);
|
|
15063
15070
|
});
|
|
15071
|
+
transceiver.streamEnded.on(() => {
|
|
15072
|
+
this.sendSourceAdvertisement(mediaType);
|
|
15073
|
+
this.sendMediaRequestStatus(mediaType);
|
|
15074
|
+
});
|
|
15064
15075
|
transceiver.negotiationNeeded.on((offerAnswerType) => {
|
|
15065
15076
|
if (offerAnswerType === OfferAnswerType.Remote) {
|
|
15066
15077
|
this.emit(exports.MultistreamConnectionEventNames.NegotiationNeeded);
|
|
@@ -15290,9 +15301,12 @@ SCTP Max Message Size: ${maxMessageSize}`);
|
|
|
15290
15301
|
}
|
|
15291
15302
|
}
|
|
15292
15303
|
sendSourceAdvertisement(mediaType) {
|
|
15293
|
-
var _a, _b;
|
|
15304
|
+
var _a, _b, _c;
|
|
15294
15305
|
const transceiver = this.getSendTransceiverOrThrow(mediaType);
|
|
15295
|
-
const numLiveSources = ((_a = transceiver.publishedStream) === null || _a === void 0 ? void 0 : _a.muted) === false
|
|
15306
|
+
const numLiveSources = ((_a = transceiver.publishedStream) === null || _a === void 0 ? void 0 : _a.muted) === false &&
|
|
15307
|
+
((_b = transceiver.publishedStream) === null || _b === void 0 ? void 0 : _b.readyState) === 'live'
|
|
15308
|
+
? 1
|
|
15309
|
+
: 0;
|
|
15296
15310
|
let task;
|
|
15297
15311
|
if (getMediaFamily(mediaType) === exports.MediaFamily.Video) {
|
|
15298
15312
|
const sources = this.getVideoStreamStates(mediaType);
|
|
@@ -15316,7 +15330,7 @@ SCTP Max Message Size: ${maxMessageSize}`);
|
|
|
15316
15330
|
.get(mediaType)) === null || _a === void 0 ? void 0 : _a.sendSourceAdvertisement(1, numLiveSources, mediaType === exports.MediaType.AudioMain ? transceiver.namedMediaGroups : []);
|
|
15317
15331
|
};
|
|
15318
15332
|
}
|
|
15319
|
-
if (((
|
|
15333
|
+
if (((_c = this.dataChannel) === null || _c === void 0 ? void 0 : _c.readyState) === 'open') {
|
|
15320
15334
|
task();
|
|
15321
15335
|
}
|
|
15322
15336
|
else {
|