@webex/web-client-media-engine 3.14.1 → 3.15.1
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 +49 -20
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/index.js +49 -20
- package/dist/esm/index.js.map +1 -1
- package/dist/types/index.d.ts +4 -1
- package/package.json +1 -1
package/dist/cjs/index.js
CHANGED
|
@@ -7149,6 +7149,7 @@ exports.WcmeErrorType = void 0;
|
|
|
7149
7149
|
WcmeErrorType["GET_MAX_BITRATE_FAILED"] = "GET_MAX_BITRATE_FAILED";
|
|
7150
7150
|
WcmeErrorType["GET_PAYLOAD_TYPE_FAILED"] = "GET_PAYLOAD_TYPE_FAILED";
|
|
7151
7151
|
WcmeErrorType["SET_NMG_FAILED"] = "SET_NMG_FAILED";
|
|
7152
|
+
WcmeErrorType["DATA_CHANNEL_SEND_FAILED"] = "DATA_CHANNEL_SEND_FAILED";
|
|
7152
7153
|
})(exports.WcmeErrorType || (exports.WcmeErrorType = {}));
|
|
7153
7154
|
class WcmeError {
|
|
7154
7155
|
constructor(type, message = '') {
|
|
@@ -14316,10 +14317,6 @@ class SendOnlyTransceiver extends Transceiver {
|
|
|
14316
14317
|
updateSendParameters(requestedIdEncodingParamsMap) {
|
|
14317
14318
|
return __awaiter$1(this, void 0, void 0, function* () {
|
|
14318
14319
|
return this.updateSendParametersQueue.push(() => __awaiter$1(this, void 0, void 0, function* () {
|
|
14319
|
-
const requested = requestedIdEncodingParamsMap.size > 0;
|
|
14320
|
-
if (this.requested !== requested) {
|
|
14321
|
-
yield this.replaceSenderSource(requested ? this.publishedStream : null);
|
|
14322
|
-
}
|
|
14323
14320
|
const sendParameters = this.sender.getParameters();
|
|
14324
14321
|
sendParameters.encodings.forEach((encoding, index) => {
|
|
14325
14322
|
var _a, _b;
|
|
@@ -14337,7 +14334,12 @@ class SendOnlyTransceiver extends Transceiver {
|
|
|
14337
14334
|
}
|
|
14338
14335
|
});
|
|
14339
14336
|
yield this.sender.setParameters(sendParameters);
|
|
14337
|
+
const oldRequested = this.requested;
|
|
14338
|
+
const newRequested = requestedIdEncodingParamsMap.size > 0;
|
|
14340
14339
|
this.requestedIdEncodingParamsMap = requestedIdEncodingParamsMap;
|
|
14340
|
+
if (oldRequested !== newRequested) {
|
|
14341
|
+
yield this.replaceSenderSource(newRequested ? this.publishedStream : null);
|
|
14342
|
+
}
|
|
14341
14343
|
}));
|
|
14342
14344
|
});
|
|
14343
14345
|
}
|
|
@@ -14692,8 +14694,21 @@ class MultistreamConnection extends EventEmitter$2 {
|
|
|
14692
14694
|
logger.error(`DataChannel not created or not connected. Unable to send JMP message.`);
|
|
14693
14695
|
return;
|
|
14694
14696
|
}
|
|
14695
|
-
|
|
14696
|
-
|
|
14697
|
+
try {
|
|
14698
|
+
logger.info(`Sending JMP message (size: ${msg.length}): ${msg}`);
|
|
14699
|
+
this.dataChannel.send(msg);
|
|
14700
|
+
}
|
|
14701
|
+
catch (err) {
|
|
14702
|
+
const { bufferedAmount, readyState } = this.dataChannel;
|
|
14703
|
+
const { sctp } = this.pc.getUnderlyingRTCPeerConnection();
|
|
14704
|
+
const { maxMessageSize, state } = sctp || {};
|
|
14705
|
+
logErrorAndThrow(exports.WcmeErrorType.DATA_CHANNEL_SEND_FAILED, `Sending JMP message failed with error: ${err},
|
|
14706
|
+
Message size: ${msg.length},
|
|
14707
|
+
Data Channel State: ${readyState},
|
|
14708
|
+
Data Channel Buffered amount: ${bufferedAmount},
|
|
14709
|
+
SCTP State: ${state},
|
|
14710
|
+
SCTP Max Message Size: ${maxMessageSize}`);
|
|
14711
|
+
}
|
|
14697
14712
|
});
|
|
14698
14713
|
let prevNumTotalSources = 0;
|
|
14699
14714
|
let prevNumLiveSources = 0;
|
|
@@ -14911,26 +14926,40 @@ class MultistreamConnection extends EventEmitter$2 {
|
|
|
14911
14926
|
return { id, state, csi: sendTransceiver.csi };
|
|
14912
14927
|
});
|
|
14913
14928
|
}
|
|
14929
|
+
createReceiveTransceiver(mediaType) {
|
|
14930
|
+
const rtcRtpTransceiver = this.pc.addTransceiver(toMediaStreamTrackKind(mediaType), {
|
|
14931
|
+
direction: 'recvonly',
|
|
14932
|
+
});
|
|
14933
|
+
const transceiverMid = this.midPredictor.getNextMid(mediaType);
|
|
14934
|
+
const munger = new IngressSdpMunger();
|
|
14935
|
+
const recvOnlyTransceiver = new ReceiveOnlyTransceiver(rtcRtpTransceiver, transceiverMid, munger);
|
|
14936
|
+
recvOnlyTransceiver.twccDisabled =
|
|
14937
|
+
getMediaFamily(mediaType) === exports.MediaFamily.Audio ? this.options.disableAudioTwcc : false;
|
|
14938
|
+
this.recvTransceivers.set(mediaType, [
|
|
14939
|
+
...(this.recvTransceivers.get(mediaType) || []),
|
|
14940
|
+
recvOnlyTransceiver,
|
|
14941
|
+
]);
|
|
14942
|
+
return recvOnlyTransceiver;
|
|
14943
|
+
}
|
|
14914
14944
|
createReceiveSlot(mediaType) {
|
|
14915
14945
|
return __awaiter$1(this, void 0, void 0, function* () {
|
|
14916
|
-
return
|
|
14946
|
+
return (yield this.createReceiveSlots(mediaType, 1))[0];
|
|
14947
|
+
});
|
|
14948
|
+
}
|
|
14949
|
+
createReceiveSlots(mediaType, count = 1) {
|
|
14950
|
+
return __awaiter$1(this, void 0, void 0, function* () {
|
|
14951
|
+
return new Promise((createReceiveSlotsResolve) => {
|
|
14917
14952
|
this.offerAnswerQueue.push(() => __awaiter$1(this, void 0, void 0, function* () {
|
|
14918
|
-
const
|
|
14919
|
-
|
|
14920
|
-
|
|
14921
|
-
|
|
14922
|
-
|
|
14923
|
-
const recvOnlyTransceiver = new ReceiveOnlyTransceiver(rtcRtpTransceiver, transceiverMid, munger);
|
|
14924
|
-
recvOnlyTransceiver.twccDisabled =
|
|
14925
|
-
getMediaFamily(mediaType) === exports.MediaFamily.Audio ? this.options.disableAudioTwcc : false;
|
|
14926
|
-
this.recvTransceivers.set(mediaType, [
|
|
14927
|
-
...(this.recvTransceivers.get(mediaType) || []),
|
|
14928
|
-
recvOnlyTransceiver,
|
|
14929
|
-
]);
|
|
14953
|
+
const createdReceiveOnlyTransceivers = [];
|
|
14954
|
+
for (let i = 0; i < count; i++) {
|
|
14955
|
+
const recvOnlyTransceiver = this.createReceiveTransceiver(mediaType);
|
|
14956
|
+
createdReceiveOnlyTransceivers.push(recvOnlyTransceiver);
|
|
14957
|
+
}
|
|
14930
14958
|
if (this.pc.getRemoteDescription()) {
|
|
14931
14959
|
yield this.doLocalOfferAnswer();
|
|
14932
14960
|
}
|
|
14933
|
-
|
|
14961
|
+
const receiveSlots = createdReceiveOnlyTransceivers.map((transceiver) => transceiver.receiveSlot);
|
|
14962
|
+
createReceiveSlotsResolve(receiveSlots);
|
|
14934
14963
|
}));
|
|
14935
14964
|
});
|
|
14936
14965
|
});
|