mediasoup-client 3.17.1 → 3.18.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/lib/Consumer.d.ts +3 -3
- package/lib/Consumer.d.ts.map +1 -1
- package/lib/DataConsumer.d.ts +2 -2
- package/lib/DataConsumer.d.ts.map +1 -1
- package/lib/Producer.d.ts +1 -0
- package/lib/Producer.d.ts.map +1 -1
- package/lib/Producer.js +2 -2
- package/lib/RtpParameters.d.ts +6 -0
- package/lib/RtpParameters.d.ts.map +1 -1
- package/lib/Transport.d.ts +1 -1
- package/lib/Transport.d.ts.map +1 -1
- package/lib/Transport.js +4 -3
- package/lib/handlers/Chrome111.d.ts +1 -1
- package/lib/handlers/Chrome111.d.ts.map +1 -1
- package/lib/handlers/Chrome111.js +10 -5
- package/lib/handlers/Chrome74.d.ts +1 -1
- package/lib/handlers/Chrome74.d.ts.map +1 -1
- package/lib/handlers/Chrome74.js +10 -5
- package/lib/handlers/FakeHandler.d.ts +2 -1
- package/lib/handlers/FakeHandler.d.ts.map +1 -1
- package/lib/handlers/FakeHandler.js +6 -1
- package/lib/handlers/Firefox120.d.ts +1 -1
- package/lib/handlers/Firefox120.d.ts.map +1 -1
- package/lib/handlers/Firefox120.js +11 -5
- package/lib/handlers/HandlerInterface.d.ts +10 -2
- package/lib/handlers/HandlerInterface.d.ts.map +1 -1
- package/lib/handlers/ReactNative106.d.ts +1 -1
- package/lib/handlers/ReactNative106.d.ts.map +1 -1
- package/lib/handlers/ReactNative106.js +9 -4
- package/lib/handlers/Safari12.d.ts +1 -1
- package/lib/handlers/Safari12.d.ts.map +1 -1
- package/lib/handlers/Safari12.js +9 -4
- package/lib/handlers/ortc/utils.d.ts +4 -0
- package/lib/handlers/ortc/utils.d.ts.map +1 -1
- package/lib/handlers/ortc/utils.js +15 -0
- package/lib/handlers/sdp/MediaSection.d.ts.map +1 -1
- package/lib/handlers/sdp/MediaSection.js +3 -1
- package/lib/handlers/sdp/RemoteSdp.d.ts +4 -5
- package/lib/handlers/sdp/RemoteSdp.d.ts.map +1 -1
- package/lib/handlers/sdp/RemoteSdp.js +23 -21
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/npm-scripts.mjs +2 -2
- package/package.json +8 -8
package/lib/Consumer.d.ts
CHANGED
|
@@ -2,9 +2,9 @@ import { EnhancedEventEmitter } from './enhancedEvents';
|
|
|
2
2
|
import type { MediaKind, RtpParameters } from './RtpParameters';
|
|
3
3
|
import type { AppData } from './types';
|
|
4
4
|
export type ConsumerOptions<ConsumerAppData extends AppData = AppData> = {
|
|
5
|
-
id
|
|
6
|
-
producerId
|
|
7
|
-
kind
|
|
5
|
+
id: string;
|
|
6
|
+
producerId: string;
|
|
7
|
+
kind: 'audio' | 'video';
|
|
8
8
|
rtpParameters: RtpParameters;
|
|
9
9
|
streamId?: string;
|
|
10
10
|
onRtpReceiver?: OnRtpReceiverCallback;
|
package/lib/Consumer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Consumer.d.ts","sourceRoot":"","sources":["../src/Consumer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAExD,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAIvC,MAAM,MAAM,eAAe,CAAC,eAAe,SAAS,OAAO,GAAG,OAAO,IAAI;IACxE,EAAE,
|
|
1
|
+
{"version":3,"file":"Consumer.d.ts","sourceRoot":"","sources":["../src/Consumer.ts"],"names":[],"mappings":"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"}
|
package/lib/DataConsumer.d.ts
CHANGED
|
@@ -2,8 +2,8 @@ import { EnhancedEventEmitter } from './enhancedEvents';
|
|
|
2
2
|
import type { SctpStreamParameters } from './SctpParameters';
|
|
3
3
|
import type { AppData } from './types';
|
|
4
4
|
export type DataConsumerOptions<DataConsumerAppData extends AppData = AppData> = {
|
|
5
|
-
id
|
|
6
|
-
dataProducerId
|
|
5
|
+
id: string;
|
|
6
|
+
dataProducerId: string;
|
|
7
7
|
sctpStreamParameters: SctpStreamParameters;
|
|
8
8
|
label?: string;
|
|
9
9
|
protocol?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataConsumer.d.ts","sourceRoot":"","sources":["../src/DataConsumer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAIvC,MAAM,MAAM,mBAAmB,CAAC,mBAAmB,SAAS,OAAO,GAAG,OAAO,IAC5E;IACC,EAAE,
|
|
1
|
+
{"version":3,"file":"DataConsumer.d.ts","sourceRoot":"","sources":["../src/DataConsumer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAIvC,MAAM,MAAM,mBAAmB,CAAC,mBAAmB,SAAS,OAAO,GAAG,OAAO,IAC5E;IACC,EAAE,EAAE,MAAM,CAAC;IACX,cAAc,EAAE,MAAM,CAAC;IACvB,oBAAoB,EAAE,oBAAoB,CAAC;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,mBAAmB,CAAC;CAC9B,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAC/B,oBAAoB,CAAC,0BAA0B,CAAC,CAAC;AAElD,MAAM,MAAM,kBAAkB,GAAG;IAChC,cAAc,EAAE,EAAE,CAAC;IACnB,IAAI,EAAE,EAAE,CAAC;IACT,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC;IACf,KAAK,EAAE,EAAE,CAAC;IAEV,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC;IAEf,QAAQ,EAAE,EAAE,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACxC,KAAK,EAAE,EAAE,CAAC;CACV,CAAC;AAEF,qBAAa,YAAY,CACxB,mBAAmB,SAAS,OAAO,GAAG,OAAO,CAC5C,SAAQ,oBAAoB,CAAC,kBAAkB,CAAC;IAEjD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAE7B,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IAEzC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAiB;IAE9C,OAAO,CAAC,OAAO,CAAS;IAExB,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAuB;IAE7D,OAAO,CAAC,QAAQ,CAAsB;IAEtC,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,oBAAoB,CACM;gBAE5C,EACX,EAAE,EACF,cAAc,EACd,WAAW,EACX,oBAAoB,EACpB,OAAO,GACP,EAAE;QACF,EAAE,EAAE,MAAM,CAAC;QACX,cAAc,EAAE,MAAM,CAAC;QACvB,WAAW,EAAE,cAAc,CAAC;QAC5B,oBAAoB,EAAE,oBAAoB,CAAC;QAC3C,OAAO,CAAC,EAAE,mBAAmB,CAAC;KAC9B;IAcD;;OAEG;IACH,IAAI,EAAE,IAAI,MAAM,CAEf;IAED;;OAEG;IACH,IAAI,cAAc,IAAI,MAAM,CAE3B;IAED;;OAEG;IACH,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED;;OAEG;IACH,IAAI,oBAAoB,IAAI,oBAAoB,CAE/C;IAED;;OAEG;IACH,IAAI,UAAU,IAAI,mBAAmB,CAEpC;IAED;;OAEG;IACH,IAAI,KAAK,IAAI,MAAM,CAElB;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED;;OAEG;IACH,IAAI,UAAU,IAAI,UAAU,CAE3B;IAED;;OAEG;IACH,IAAI,UAAU,CAAC,UAAU,EAAE,UAAU,EAEpC;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,mBAAmB,CAEjC;IAED;;OAEG;IACH,IAAI,OAAO,CAAC,OAAO,EAAE,mBAAmB,EAEvC;IAED,IAAI,QAAQ,IAAI,oBAAoB,CAEnC;IAED;;OAEG;IACM,KAAK,IAAI,IAAI;IAqBtB;;OAEG;IACH,eAAe,IAAI,IAAI;IAiBvB,OAAO,CAAC,iBAAiB;CAwDzB"}
|
package/lib/Producer.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ import type { MediaKind, RtpCodecCapability, RtpParameters, RtpEncodingParameter
|
|
|
3
3
|
import type { AppData } from './types';
|
|
4
4
|
export type ProducerOptions<ProducerAppData extends AppData = AppData> = {
|
|
5
5
|
track?: MediaStreamTrack;
|
|
6
|
+
streamId?: string;
|
|
6
7
|
encodings?: RtpEncodingParameters[];
|
|
7
8
|
codecOptions?: ProducerCodecOptions;
|
|
8
9
|
headerExtensionOptions?: ProducerHeaderExtensionOptions;
|
package/lib/Producer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Producer.d.ts","sourceRoot":"","sources":["../src/Producer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Producer.d.ts","sourceRoot":"","sources":["../src/Producer.ts"],"names":[],"mappings":"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"}
|
package/lib/Producer.js
CHANGED
|
@@ -28,7 +28,7 @@ class Producer extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
28
28
|
_stopTracks;
|
|
29
29
|
// Whether the Producer should set track.enabled = false when paused.
|
|
30
30
|
_disableTrackOnPause;
|
|
31
|
-
// Whether we should
|
|
31
|
+
// Whether we should mark the transceiver as inactive when paused.
|
|
32
32
|
_zeroRtpOnPause;
|
|
33
33
|
// App custom data.
|
|
34
34
|
_appData;
|
|
@@ -51,7 +51,7 @@ class Producer extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
51
51
|
this._appData = appData ?? {};
|
|
52
52
|
this.onTrackEnded = this.onTrackEnded.bind(this);
|
|
53
53
|
// NOTE: Minor issue. If zeroRtpOnPause is true, we cannot emit the
|
|
54
|
-
// '@replacetrack' event here
|
|
54
|
+
// '@replacetrack' event here.
|
|
55
55
|
this.handleTrack();
|
|
56
56
|
}
|
|
57
57
|
/**
|
package/lib/RtpParameters.d.ts
CHANGED
|
@@ -151,6 +151,12 @@ export type RtpParameters = {
|
|
|
151
151
|
* Parameters used for RTCP.
|
|
152
152
|
*/
|
|
153
153
|
rtcp?: RtcpParameters;
|
|
154
|
+
/**
|
|
155
|
+
* MSID (WebRTC MediaStream Identification).
|
|
156
|
+
*
|
|
157
|
+
* @see https://datatracker.ietf.org/doc/html/rfc8830
|
|
158
|
+
*/
|
|
159
|
+
msid?: string;
|
|
154
160
|
};
|
|
155
161
|
/**
|
|
156
162
|
* Provides information on codec settings within the RTP parameters. The list
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RtpParameters.d.ts","sourceRoot":"","sources":["../src/RtpParameters.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,MAAM,eAAe,GAAG;IAC7B;;OAEG;IACH,MAAM,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAC9B;;OAEG;IACH,gBAAgB,CAAC,EAAE,kBAAkB,EAAE,CAAC;CACxC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC;AAE1C;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAChC;;OAEG;IACH,IAAI,EAAE,SAAS,CAAC;IAChB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,oBAAoB,EAAE,MAAM,CAAC;IAC7B;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC;;OAEG;IACH,YAAY,CAAC,EAAE,YAAY,EAAE,CAAC;CAC9B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,2BAA2B,GACpC,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,CAAC;AAEd;;;;;;;;;GASG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAChC;;OAEG;IACH,IAAI,EAAE,SAAS,CAAC;IAIhB,GAAG,EAAE,qBAAqB,CAAC;IAC3B;;;OAGG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;OAIG;IACH,SAAS,CAAC,EAAE,2BAA2B,CAAC;CACxC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,MAAM,aAAa,GAAG;IAC3B;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAC7B;;OAEG;IACH,gBAAgB,CAAC,EAAE,4BAA4B,EAAE,CAAC;IAClD;;OAEG;IACH,SAAS,CAAC,EAAE,qBAAqB,EAAE,CAAC;IACpC;;OAEG;IACH,IAAI,CAAC,EAAE,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"RtpParameters.d.ts","sourceRoot":"","sources":["../src/RtpParameters.ts"],"names":[],"mappings":"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"}
|
package/lib/Transport.d.ts
CHANGED
|
@@ -241,7 +241,7 @@ export declare class Transport<TransportAppData extends AppData = AppData> exten
|
|
|
241
241
|
/**
|
|
242
242
|
* Create a Producer.
|
|
243
243
|
*/
|
|
244
|
-
produce<ProducerAppData extends AppData = AppData>({ track, encodings, codecOptions, headerExtensionOptions, codec, stopTracks, disableTrackOnPause, zeroRtpOnPause, onRtpSender, appData, }?: ProducerOptions<ProducerAppData>): Promise<Producer<ProducerAppData>>;
|
|
244
|
+
produce<ProducerAppData extends AppData = AppData>({ track, streamId, encodings, codecOptions, headerExtensionOptions, codec, stopTracks, disableTrackOnPause, zeroRtpOnPause, onRtpSender, appData, }?: ProducerOptions<ProducerAppData>): Promise<Producer<ProducerAppData>>;
|
|
245
245
|
/**
|
|
246
246
|
* Create a Consumer to consume a remote Producer.
|
|
247
247
|
*/
|
package/lib/Transport.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Transport.d.ts","sourceRoot":"","sources":["../src/Transport.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Transport.d.ts","sourceRoot":"","sources":["../src/Transport.ts"],"names":[],"mappings":"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"}
|
package/lib/Transport.js
CHANGED
|
@@ -246,7 +246,7 @@ class Transport extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
246
246
|
/**
|
|
247
247
|
* Create a Producer.
|
|
248
248
|
*/
|
|
249
|
-
async produce({ track, encodings, codecOptions, headerExtensionOptions, codec, stopTracks = true, disableTrackOnPause = true, zeroRtpOnPause = false, onRtpSender, appData = {}, } = {}) {
|
|
249
|
+
async produce({ track, streamId, encodings, codecOptions, headerExtensionOptions, codec, stopTracks = true, disableTrackOnPause = true, zeroRtpOnPause = false, onRtpSender, appData = {}, } = {}) {
|
|
250
250
|
logger.debug('produce() [track:%o]', track);
|
|
251
251
|
if (this._closed) {
|
|
252
252
|
throw new errors_1.InvalidStateError('closed');
|
|
@@ -321,6 +321,7 @@ class Transport extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
321
321
|
}
|
|
322
322
|
const { localId, rtpParameters, rtpSender } = await this._handler.send({
|
|
323
323
|
track,
|
|
324
|
+
streamId,
|
|
324
325
|
encodings: normalizedEncodings,
|
|
325
326
|
codecOptions,
|
|
326
327
|
headerExtensionOptions,
|
|
@@ -572,9 +573,9 @@ class Transport extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
572
573
|
const { id, producerId, kind, rtpParameters, appData } = task.consumerOptions;
|
|
573
574
|
const { localId, rtpReceiver, track } = result;
|
|
574
575
|
const consumer = new Consumer_1.Consumer({
|
|
575
|
-
id
|
|
576
|
+
id,
|
|
576
577
|
localId,
|
|
577
|
-
producerId
|
|
578
|
+
producerId,
|
|
578
579
|
rtpReceiver,
|
|
579
580
|
track,
|
|
580
581
|
rtpParameters,
|
|
@@ -24,7 +24,7 @@ export declare class Chrome111 extends EnhancedEventEmitter<HandlerEvents> imple
|
|
|
24
24
|
updateIceServers(iceServers: RTCIceServer[]): Promise<void>;
|
|
25
25
|
restartIce(iceParameters: IceParameters): Promise<void>;
|
|
26
26
|
getTransportStats(): Promise<RTCStatsReport>;
|
|
27
|
-
send({ track, encodings, codecOptions, headerExtensionOptions, codec, onRtpSender, }: HandlerSendOptions): Promise<HandlerSendResult>;
|
|
27
|
+
send({ track, streamId, encodings, codecOptions, headerExtensionOptions, codec, onRtpSender, }: HandlerSendOptions): Promise<HandlerSendResult>;
|
|
28
28
|
stopSending(localId: string): Promise<void>;
|
|
29
29
|
pauseSending(localId: string): Promise<void>;
|
|
30
30
|
resumeSending(localId: string): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Chrome111.d.ts","sourceRoot":"","sources":["../../src/handlers/Chrome111.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAKzD,OAAO,KAAK,EAAE,aAAa,EAAY,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"Chrome111.d.ts","sourceRoot":"","sources":["../../src/handlers/Chrome111.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,10 +7,10 @@ const Logger_1 = require("../Logger");
|
|
|
7
7
|
const ortc = require("../ortc");
|
|
8
8
|
const errors_1 = require("../errors");
|
|
9
9
|
const scalabilityModes_1 = require("../scalabilityModes");
|
|
10
|
+
const RemoteSdp_1 = require("./sdp/RemoteSdp");
|
|
10
11
|
const sdpCommonUtils = require("./sdp/commonUtils");
|
|
11
12
|
const sdpUnifiedPlanUtils = require("./sdp/unifiedPlanUtils");
|
|
12
13
|
const ortcUtils = require("./ortc/utils");
|
|
13
|
-
const RemoteSdp_1 = require("./sdp/RemoteSdp");
|
|
14
14
|
const logger = new Logger_1.Logger('Chrome111');
|
|
15
15
|
const NAME = 'Chrome111';
|
|
16
16
|
const SCTP_NUM_STREAMS = { OS: 1024, MIS: 1024 };
|
|
@@ -30,7 +30,7 @@ class Chrome111 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
30
30
|
_pc;
|
|
31
31
|
// Map of RTCTransceivers indexed by MID.
|
|
32
32
|
_mapMidTransceiver = new Map();
|
|
33
|
-
//
|
|
33
|
+
// Default local stream for sending if no `streamId` is given in send().
|
|
34
34
|
_sendStream = new MediaStream();
|
|
35
35
|
// Whether a DataChannel m=application section has been created.
|
|
36
36
|
_hasDataChannelMediaSection = false;
|
|
@@ -196,10 +196,10 @@ class Chrome111 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
196
196
|
this.assertNotClosed();
|
|
197
197
|
return this._pc.getStats();
|
|
198
198
|
}
|
|
199
|
-
async send({ track, encodings, codecOptions, headerExtensionOptions, codec, onRtpSender, }) {
|
|
199
|
+
async send({ track, streamId, encodings, codecOptions, headerExtensionOptions, codec, onRtpSender, }) {
|
|
200
200
|
this.assertNotClosed();
|
|
201
201
|
this.assertSendDirection();
|
|
202
|
-
logger.debug('send() [kind:%s, track.id:%s]', track.kind, track.id);
|
|
202
|
+
logger.debug('send() [kind:%s, track.id:%s, streamId:%s]', track.kind, track.id, streamId);
|
|
203
203
|
if (encodings && encodings.length > 1) {
|
|
204
204
|
// Set rid and verify scalabilityMode in each encoding.
|
|
205
205
|
// NOTE: Even if WebRTC allows different scalabilityMode (different number
|
|
@@ -282,6 +282,8 @@ class Chrome111 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
282
282
|
sendingRtpParameters.rtcp.cname = sdpCommonUtils.getCname({
|
|
283
283
|
offerMediaObject,
|
|
284
284
|
});
|
|
285
|
+
// Set msid.
|
|
286
|
+
sendingRtpParameters.msid = `${streamId ?? this._sendStream.id} ${track.id}`;
|
|
285
287
|
// Set RTP encodings by parsing the SDP offer if no encodings are given.
|
|
286
288
|
if (!encodings) {
|
|
287
289
|
sendingRtpParameters.encodings = sdpUnifiedPlanUtils.getRtpEncodings({
|
|
@@ -526,11 +528,14 @@ class Chrome111 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
526
528
|
logger.debug('receive() [trackId:%s, kind:%s]', trackId, kind);
|
|
527
529
|
const localId = rtpParameters.mid ?? String(this._mapMidTransceiver.size);
|
|
528
530
|
mapLocalId.set(trackId, localId);
|
|
531
|
+
// We ignore MSID `trackId` when consuming and always use our computed
|
|
532
|
+
// `trackId` which matches the `consumer.id`.
|
|
533
|
+
const { msidStreamId } = ortcUtils.getMsidStreamIdAndTrackId(rtpParameters.msid);
|
|
529
534
|
this._remoteSdp.receive({
|
|
530
535
|
mid: localId,
|
|
531
536
|
kind,
|
|
532
537
|
offerRtpParameters: rtpParameters,
|
|
533
|
-
streamId: streamId ?? rtpParameters.rtcp
|
|
538
|
+
streamId: streamId ?? msidStreamId ?? rtpParameters.rtcp?.cname ?? '-',
|
|
534
539
|
trackId,
|
|
535
540
|
});
|
|
536
541
|
}
|
|
@@ -24,7 +24,7 @@ export declare class Chrome74 extends EnhancedEventEmitter<HandlerEvents> implem
|
|
|
24
24
|
updateIceServers(iceServers: RTCIceServer[]): Promise<void>;
|
|
25
25
|
restartIce(iceParameters: IceParameters): Promise<void>;
|
|
26
26
|
getTransportStats(): Promise<RTCStatsReport>;
|
|
27
|
-
send({ track, encodings, codecOptions, headerExtensionOptions, codec, }: HandlerSendOptions): Promise<HandlerSendResult>;
|
|
27
|
+
send({ track, streamId, encodings, codecOptions, headerExtensionOptions, codec, }: HandlerSendOptions): Promise<HandlerSendResult>;
|
|
28
28
|
stopSending(localId: string): Promise<void>;
|
|
29
29
|
pauseSending(localId: string): Promise<void>;
|
|
30
30
|
resumeSending(localId: string): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Chrome74.d.ts","sourceRoot":"","sources":["../../src/handlers/Chrome74.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAIzD,OAAO,KAAK,EAAE,aAAa,EAAY,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"Chrome74.d.ts","sourceRoot":"","sources":["../../src/handlers/Chrome74.ts"],"names":[],"mappings":"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"}
|
package/lib/handlers/Chrome74.js
CHANGED
|
@@ -7,10 +7,10 @@ const enhancedEvents_1 = require("../enhancedEvents");
|
|
|
7
7
|
const ortc = require("../ortc");
|
|
8
8
|
const errors_1 = require("../errors");
|
|
9
9
|
const scalabilityModes_1 = require("../scalabilityModes");
|
|
10
|
+
const RemoteSdp_1 = require("./sdp/RemoteSdp");
|
|
10
11
|
const sdpCommonUtils = require("./sdp/commonUtils");
|
|
11
12
|
const sdpUnifiedPlanUtils = require("./sdp/unifiedPlanUtils");
|
|
12
13
|
const ortcUtils = require("./ortc/utils");
|
|
13
|
-
const RemoteSdp_1 = require("./sdp/RemoteSdp");
|
|
14
14
|
const logger = new Logger_1.Logger('Chrome74');
|
|
15
15
|
const NAME = 'Chrome74';
|
|
16
16
|
const SCTP_NUM_STREAMS = { OS: 1024, MIS: 1024 };
|
|
@@ -30,7 +30,7 @@ class Chrome74 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
30
30
|
_pc;
|
|
31
31
|
// Map of RTCTransceivers indexed by MID.
|
|
32
32
|
_mapMidTransceiver = new Map();
|
|
33
|
-
//
|
|
33
|
+
// Default local stream for sending if no `streamId` is given in send().
|
|
34
34
|
_sendStream = new MediaStream();
|
|
35
35
|
// Whether a DataChannel m=application section has been created.
|
|
36
36
|
_hasDataChannelMediaSection = false;
|
|
@@ -192,10 +192,10 @@ class Chrome74 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
192
192
|
this.assertNotClosed();
|
|
193
193
|
return this._pc.getStats();
|
|
194
194
|
}
|
|
195
|
-
async send({ track, encodings, codecOptions, headerExtensionOptions, codec, }) {
|
|
195
|
+
async send({ track, streamId, encodings, codecOptions, headerExtensionOptions, codec, }) {
|
|
196
196
|
this.assertNotClosed();
|
|
197
197
|
this.assertSendDirection();
|
|
198
|
-
logger.debug('send() [kind:%s, track.id:%s]', track.kind, track.id);
|
|
198
|
+
logger.debug('send() [kind:%s, track.id:%s, streamId:%s]', track.kind, track.id, streamId);
|
|
199
199
|
if (encodings && encodings.length > 1) {
|
|
200
200
|
encodings.forEach((encoding, idx) => {
|
|
201
201
|
encoding.rid = `r${idx}`;
|
|
@@ -280,6 +280,8 @@ class Chrome74 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
280
280
|
sendingRtpParameters.rtcp.cname = sdpCommonUtils.getCname({
|
|
281
281
|
offerMediaObject,
|
|
282
282
|
});
|
|
283
|
+
// Set msid.
|
|
284
|
+
sendingRtpParameters.msid = `${streamId ?? this._sendStream.id} ${track.id}`;
|
|
283
285
|
// Set RTP encodings by parsing the SDP offer if no encodings are given.
|
|
284
286
|
if (!encodings) {
|
|
285
287
|
sendingRtpParameters.encodings = sdpUnifiedPlanUtils.getRtpEncodings({
|
|
@@ -542,11 +544,14 @@ class Chrome74 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
542
544
|
logger.debug('receive() [trackId:%s, kind:%s]', trackId, kind);
|
|
543
545
|
const localId = rtpParameters.mid ?? String(this._mapMidTransceiver.size);
|
|
544
546
|
mapLocalId.set(trackId, localId);
|
|
547
|
+
// We ignore MSID `trackId` when consuming and always use our computed
|
|
548
|
+
// `trackId` which matches the `consumer.id`.
|
|
549
|
+
const { msidStreamId } = ortcUtils.getMsidStreamIdAndTrackId(rtpParameters.msid);
|
|
545
550
|
this._remoteSdp.receive({
|
|
546
551
|
mid: localId,
|
|
547
552
|
kind,
|
|
548
553
|
offerRtpParameters: rtpParameters,
|
|
549
|
-
streamId: streamId ?? rtpParameters.rtcp
|
|
554
|
+
streamId: streamId ?? msidStreamId ?? rtpParameters.rtcp?.cname ?? '-',
|
|
550
555
|
trackId,
|
|
551
556
|
});
|
|
552
557
|
}
|
|
@@ -13,6 +13,7 @@ export declare class FakeHandler extends EnhancedEventEmitter<HandlerEvents> imp
|
|
|
13
13
|
private _fakeParameters;
|
|
14
14
|
private _getSendExtendedRtpCapabilities;
|
|
15
15
|
private _cname;
|
|
16
|
+
private _defaultSendStreamId;
|
|
16
17
|
private _transportReady;
|
|
17
18
|
private _nextLocalId;
|
|
18
19
|
private _tracks;
|
|
@@ -30,7 +31,7 @@ export declare class FakeHandler extends EnhancedEventEmitter<HandlerEvents> imp
|
|
|
30
31
|
updateIceServers(iceServers: RTCIceServer[]): Promise<void>;
|
|
31
32
|
restartIce(iceParameters: IceParameters): Promise<void>;
|
|
32
33
|
getTransportStats(): Promise<RTCStatsReport>;
|
|
33
|
-
send({ track, encodings, codecOptions, codec }: HandlerSendOptions): Promise<HandlerSendResult>;
|
|
34
|
+
send({ track, streamId, encodings, codecOptions, codec }: HandlerSendOptions): Promise<HandlerSendResult>;
|
|
34
35
|
stopSending(localId: string): Promise<void>;
|
|
35
36
|
pauseSending(localId: string): Promise<void>;
|
|
36
37
|
resumeSending(localId: string): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FakeHandler.d.ts","sourceRoot":"","sources":["../../src/handlers/FakeHandler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAKzD,OAAO,KAAK,EACX,aAAa,EACb,cAAc,EAEd,iBAAiB,EACjB,eAAe,EACf,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EACX,eAAe,EAIf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"FakeHandler.d.ts","sourceRoot":"","sources":["../../src/handlers/FakeHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,8 @@ class FakeHandler extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
19
19
|
_getSendExtendedRtpCapabilities;
|
|
20
20
|
// Local RTCP CNAME.
|
|
21
21
|
_cname = `CNAME-${utils.generateRandomNumber()}`;
|
|
22
|
+
// Default sending MediaStream id.
|
|
23
|
+
_defaultSendStreamId = `${utils.generateRandomNumber()}`;
|
|
22
24
|
// Got transport local and remote parameters.
|
|
23
25
|
_transportReady = false;
|
|
24
26
|
// Next localId.
|
|
@@ -101,7 +103,7 @@ class FakeHandler extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
101
103
|
}
|
|
102
104
|
async send(
|
|
103
105
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
104
|
-
{ track, encodings, codecOptions, codec }) {
|
|
106
|
+
{ track, streamId, encodings, codecOptions, codec }) {
|
|
105
107
|
this.assertNotClosed();
|
|
106
108
|
logger.debug('send() [kind:%s, track.id:%s]', track.kind, track.id);
|
|
107
109
|
if (!this._transportReady) {
|
|
@@ -115,6 +117,7 @@ class FakeHandler extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
115
117
|
sendingRtpParameters.codecs = ortc.reduceCodecs(sendingRtpParameters.codecs, codec);
|
|
116
118
|
const useRtx = sendingRtpParameters.codecs.some(_codec => /.+\/rtx$/i.test(_codec.mimeType));
|
|
117
119
|
sendingRtpParameters.mid = `mid-${utils.generateRandomNumber()}`;
|
|
120
|
+
sendingRtpParameters.msid = `${streamId ?? '-'} ${track.id}`;
|
|
118
121
|
if (!encodings) {
|
|
119
122
|
encodings = [{}];
|
|
120
123
|
}
|
|
@@ -131,6 +134,8 @@ class FakeHandler extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
131
134
|
reducedSize: true,
|
|
132
135
|
mux: true,
|
|
133
136
|
};
|
|
137
|
+
// Set msid.
|
|
138
|
+
sendingRtpParameters.msid = `${streamId ?? this._defaultSendStreamId} ${track.id}`;
|
|
134
139
|
const localId = this._nextLocalId++;
|
|
135
140
|
this._tracks.set(localId, track);
|
|
136
141
|
return { localId: String(localId), rtpParameters: sendingRtpParameters };
|
|
@@ -23,7 +23,7 @@ export declare class Firefox120 extends EnhancedEventEmitter<HandlerEvents> impl
|
|
|
23
23
|
updateIceServers(iceServers: RTCIceServer[]): Promise<void>;
|
|
24
24
|
restartIce(iceParameters: IceParameters): Promise<void>;
|
|
25
25
|
getTransportStats(): Promise<RTCStatsReport>;
|
|
26
|
-
send({ track, encodings, codecOptions, codec, onRtpSender, }: HandlerSendOptions): Promise<HandlerSendResult>;
|
|
26
|
+
send({ track, streamId, encodings, codecOptions, codec, onRtpSender, }: HandlerSendOptions): Promise<HandlerSendResult>;
|
|
27
27
|
stopSending(localId: string): Promise<void>;
|
|
28
28
|
pauseSending(localId: string): Promise<void>;
|
|
29
29
|
resumeSending(localId: string): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Firefox120.d.ts","sourceRoot":"","sources":["../../src/handlers/Firefox120.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAKzD,OAAO,KAAK,EAAE,aAAa,EAAY,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"Firefox120.d.ts","sourceRoot":"","sources":["../../src/handlers/Firefox120.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,9 +7,10 @@ const Logger_1 = require("../Logger");
|
|
|
7
7
|
const errors_1 = require("../errors");
|
|
8
8
|
const ortc = require("../ortc");
|
|
9
9
|
const scalabilityModes_1 = require("../scalabilityModes");
|
|
10
|
+
const RemoteSdp_1 = require("./sdp/RemoteSdp");
|
|
10
11
|
const sdpCommonUtils = require("./sdp/commonUtils");
|
|
11
12
|
const sdpUnifiedPlanUtils = require("./sdp/unifiedPlanUtils");
|
|
12
|
-
const
|
|
13
|
+
const ortcUtils = require("./ortc/utils");
|
|
13
14
|
const logger = new Logger_1.Logger('Firefox120');
|
|
14
15
|
const NAME = 'Firefox120';
|
|
15
16
|
const SCTP_NUM_STREAMS = { OS: 16, MIS: 2048 };
|
|
@@ -26,7 +27,7 @@ class Firefox120 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
26
27
|
_pc;
|
|
27
28
|
// Map of RTCTransceivers indexed by MID.
|
|
28
29
|
_mapMidTransceiver = new Map();
|
|
29
|
-
//
|
|
30
|
+
// Default local stream for sending if no `streamId` is given in send().
|
|
30
31
|
_sendStream = new MediaStream();
|
|
31
32
|
// Whether a DataChannel m=application section has been created.
|
|
32
33
|
_hasDataChannelMediaSection = false;
|
|
@@ -207,10 +208,10 @@ class Firefox120 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
207
208
|
this.assertNotClosed();
|
|
208
209
|
return this._pc.getStats();
|
|
209
210
|
}
|
|
210
|
-
async send({ track, encodings, codecOptions, codec, onRtpSender, }) {
|
|
211
|
+
async send({ track, streamId, encodings, codecOptions, codec, onRtpSender, }) {
|
|
211
212
|
this.assertNotClosed();
|
|
212
213
|
this.assertSendDirection();
|
|
213
|
-
logger.debug('send() [kind:%s, track.id:%s]', track.kind, track.id);
|
|
214
|
+
logger.debug('send() [kind:%s, track.id:%s, streamId:%s]', track.kind, track.id, streamId);
|
|
214
215
|
if (encodings && encodings.length > 1) {
|
|
215
216
|
encodings.forEach((encoding, idx) => {
|
|
216
217
|
encoding.rid = `r${idx}`;
|
|
@@ -262,6 +263,8 @@ class Firefox120 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
262
263
|
sendingRtpParameters.rtcp.cname = sdpCommonUtils.getCname({
|
|
263
264
|
offerMediaObject,
|
|
264
265
|
});
|
|
266
|
+
// Set msid.
|
|
267
|
+
sendingRtpParameters.msid = `${streamId ?? this._sendStream.id} ${track.id}`;
|
|
265
268
|
// Set RTP encodings by parsing the SDP offer if no encodings are given.
|
|
266
269
|
if (!encodings) {
|
|
267
270
|
sendingRtpParameters.encodings = sdpUnifiedPlanUtils.getRtpEncodings({
|
|
@@ -521,11 +524,14 @@ class Firefox120 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
521
524
|
logger.debug('receive() [trackId:%s, kind:%s]', trackId, kind);
|
|
522
525
|
const localId = rtpParameters.mid ?? String(this._mapMidTransceiver.size);
|
|
523
526
|
mapLocalId.set(trackId, localId);
|
|
527
|
+
// We ignore MSID `trackId` when consuming and always use our computed
|
|
528
|
+
// `trackId` which matches the `consumer.id`.
|
|
529
|
+
const { msidStreamId } = ortcUtils.getMsidStreamIdAndTrackId(rtpParameters.msid);
|
|
524
530
|
this._remoteSdp.receive({
|
|
525
531
|
mid: localId,
|
|
526
532
|
kind,
|
|
527
533
|
offerRtpParameters: rtpParameters,
|
|
528
|
-
streamId: streamId ?? rtpParameters.rtcp
|
|
534
|
+
streamId: streamId ?? msidStreamId ?? rtpParameters.rtcp?.cname ?? '-',
|
|
529
535
|
trackId,
|
|
530
536
|
});
|
|
531
537
|
}
|
|
@@ -23,6 +23,13 @@ export type HandlerFactory = {
|
|
|
23
23
|
};
|
|
24
24
|
export type HandlerSendOptions = {
|
|
25
25
|
track: MediaStreamTrack;
|
|
26
|
+
/**
|
|
27
|
+
* Stream id (it affects the `id` field of the `a=msid` attribute in the
|
|
28
|
+
* local SDP. If not given, all `Producers` will have the same `streamId`
|
|
29
|
+
* in their `rtpParameters.msid`. Such a value tells consuming endpoints
|
|
30
|
+
* which tracks to syncronize on reception.
|
|
31
|
+
*/
|
|
32
|
+
streamId?: string;
|
|
26
33
|
encodings?: RtpEncodingParameters[];
|
|
27
34
|
codecOptions?: ProducerCodecOptions;
|
|
28
35
|
headerExtensionOptions?: ProducerHeaderExtensionOptions;
|
|
@@ -39,8 +46,9 @@ export type HandlerReceiveOptions = {
|
|
|
39
46
|
kind: 'audio' | 'video';
|
|
40
47
|
rtpParameters: RtpParameters;
|
|
41
48
|
/**
|
|
42
|
-
* Stream id
|
|
43
|
-
*
|
|
49
|
+
* Stream id (it affects the `id` field of the `a=msid` attribute in the
|
|
50
|
+
* remote SDP. WebRTC based devices try to synchronize inbound streams with
|
|
51
|
+
* same `streamId`. If not given, the consuming device will be told to
|
|
44
52
|
* synchronize all streams produced by the same endpoint. However libwebrtc
|
|
45
53
|
* can just synchronize up to one audio stream with one video stream.
|
|
46
54
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HandlerInterface.d.ts","sourceRoot":"","sources":["../../src/handlers/HandlerInterface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EACX,aAAa,EACb,YAAY,EACZ,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EACX,oBAAoB,EACpB,8BAA8B,EAC9B,mBAAmB,EACnB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,KAAK,EACX,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,qBAAqB,EACrB,uBAAuB,EACvB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EACX,gBAAgB,EAChB,cAAc,EACd,oBAAoB,EACpB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,MAAM,cAAc,GAAG;IAC5B,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,aAAa,EAAE,aAAa,CAAC;IAC7B,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,cAAc,EAAE,cAAc,CAAC;IAC/B,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,UAAU,CAAC,EAAE,YAAY,EAAE,CAAC;IAC5B,kBAAkB,CAAC,EAAE,qBAAqB,CAAC;IAC3C,kBAAkB,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC/C,8BAA8B,EAAE,CAC/B,qBAAqB,EAAE,eAAe,KAClC,uBAAuB,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,gBAAgB,CAAC;IACvD,wBAAwB,IAAI,OAAO,CAAC,eAAe,CAAC,CAAC;IACrD,yBAAyB,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;CACvD,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAChC,KAAK,EAAE,gBAAgB,CAAC;IACxB,SAAS,CAAC,EAAE,qBAAqB,EAAE,CAAC;IACpC,YAAY,CAAC,EAAE,oBAAoB,CAAC;IACpC,sBAAsB,CAAC,EAAE,8BAA8B,CAAC;IACxD,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,WAAW,CAAC,EAAE,mBAAmB,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,aAAa,CAAC;IAC7B,SAAS,CAAC,EAAE,YAAY,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;IACxB,aAAa,EAAE,aAAa,CAAC;IAC7B
|
|
1
|
+
{"version":3,"file":"HandlerInterface.d.ts","sourceRoot":"","sources":["../../src/handlers/HandlerInterface.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,7 +24,7 @@ export declare class ReactNative106 extends EnhancedEventEmitter<HandlerEvents>
|
|
|
24
24
|
updateIceServers(iceServers: RTCIceServer[]): Promise<void>;
|
|
25
25
|
restartIce(iceParameters: IceParameters): Promise<void>;
|
|
26
26
|
getTransportStats(): Promise<RTCStatsReport>;
|
|
27
|
-
send({ track, encodings, codecOptions, headerExtensionOptions, codec, onRtpSender, }: HandlerSendOptions): Promise<HandlerSendResult>;
|
|
27
|
+
send({ track, streamId, encodings, codecOptions, headerExtensionOptions, codec, onRtpSender, }: HandlerSendOptions): Promise<HandlerSendResult>;
|
|
28
28
|
stopSending(localId: string): Promise<void>;
|
|
29
29
|
pauseSending(localId: string): Promise<void>;
|
|
30
30
|
resumeSending(localId: string): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReactNative106.d.ts","sourceRoot":"","sources":["../../src/handlers/ReactNative106.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAKzD,OAAO,KAAK,EAAE,aAAa,EAAY,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"ReactNative106.d.ts","sourceRoot":"","sources":["../../src/handlers/ReactNative106.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,7 +30,7 @@ class ReactNative106 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
30
30
|
_pc;
|
|
31
31
|
// Map of RTCTransceivers indexed by MID.
|
|
32
32
|
_mapMidTransceiver = new Map();
|
|
33
|
-
//
|
|
33
|
+
// Default local stream for sending if no `streamId` is given in send().
|
|
34
34
|
_sendStream = new MediaStream();
|
|
35
35
|
// Whether a DataChannel m=application section has been created.
|
|
36
36
|
_hasDataChannelMediaSection = false;
|
|
@@ -196,10 +196,10 @@ class ReactNative106 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
196
196
|
this.assertNotClosed();
|
|
197
197
|
return this._pc.getStats();
|
|
198
198
|
}
|
|
199
|
-
async send({ track, encodings, codecOptions, headerExtensionOptions, codec, onRtpSender, }) {
|
|
199
|
+
async send({ track, streamId, encodings, codecOptions, headerExtensionOptions, codec, onRtpSender, }) {
|
|
200
200
|
this.assertNotClosed();
|
|
201
201
|
this.assertSendDirection();
|
|
202
|
-
logger.debug('send() [kind:%s, track.id:%s]', track.kind, track.id);
|
|
202
|
+
logger.debug('send() [kind:%s, track.id:%s, streamId:%s]', track.kind, track.id, streamId);
|
|
203
203
|
if (encodings && encodings.length > 1) {
|
|
204
204
|
encodings.forEach((encoding, idx) => {
|
|
205
205
|
encoding.rid = `r${idx}`;
|
|
@@ -297,6 +297,8 @@ class ReactNative106 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
297
297
|
sendingRtpParameters.rtcp.cname = sdpCommonUtils.getCname({
|
|
298
298
|
offerMediaObject,
|
|
299
299
|
});
|
|
300
|
+
// Set msid.
|
|
301
|
+
sendingRtpParameters.msid = `${streamId ?? this._sendStream.id} ${track.id}`;
|
|
300
302
|
// Set RTP encodings by parsing the SDP offer if no encodings are given.
|
|
301
303
|
if (!encodings) {
|
|
302
304
|
sendingRtpParameters.encodings = sdpUnifiedPlanUtils.getRtpEncodings({
|
|
@@ -567,11 +569,14 @@ class ReactNative106 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
567
569
|
logger.debug('receive() [trackId:%s, kind:%s]', trackId, kind);
|
|
568
570
|
const localId = rtpParameters.mid ?? String(this._mapMidTransceiver.size);
|
|
569
571
|
mapLocalId.set(trackId, localId);
|
|
572
|
+
// We ignore MSID `trackId` when consuming and always use our computed
|
|
573
|
+
// `trackId` which matches the `consumer.id`.
|
|
574
|
+
const { msidStreamId } = ortcUtils.getMsidStreamIdAndTrackId(rtpParameters.msid);
|
|
570
575
|
this._remoteSdp.receive({
|
|
571
576
|
mid: localId,
|
|
572
577
|
kind,
|
|
573
578
|
offerRtpParameters: rtpParameters,
|
|
574
|
-
streamId: streamId ?? rtpParameters.rtcp
|
|
579
|
+
streamId: streamId ?? msidStreamId ?? rtpParameters.rtcp?.cname ?? '-',
|
|
575
580
|
trackId,
|
|
576
581
|
});
|
|
577
582
|
}
|
|
@@ -24,7 +24,7 @@ export declare class Safari12 extends EnhancedEventEmitter<HandlerEvents> implem
|
|
|
24
24
|
updateIceServers(iceServers: RTCIceServer[]): Promise<void>;
|
|
25
25
|
restartIce(iceParameters: IceParameters): Promise<void>;
|
|
26
26
|
getTransportStats(): Promise<RTCStatsReport>;
|
|
27
|
-
send({ track, encodings, codecOptions, headerExtensionOptions, codec, onRtpSender, }: HandlerSendOptions): Promise<HandlerSendResult>;
|
|
27
|
+
send({ track, streamId, encodings, codecOptions, headerExtensionOptions, codec, onRtpSender, }: HandlerSendOptions): Promise<HandlerSendResult>;
|
|
28
28
|
stopSending(localId: string): Promise<void>;
|
|
29
29
|
pauseSending(localId: string): Promise<void>;
|
|
30
30
|
resumeSending(localId: string): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Safari12.d.ts","sourceRoot":"","sources":["../../src/handlers/Safari12.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAKzD,OAAO,KAAK,EAAE,aAAa,EAAY,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"Safari12.d.ts","sourceRoot":"","sources":["../../src/handlers/Safari12.ts"],"names":[],"mappings":"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"}
|
package/lib/handlers/Safari12.js
CHANGED
|
@@ -30,7 +30,7 @@ class Safari12 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
30
30
|
_pc;
|
|
31
31
|
// Map of RTCTransceivers indexed by MID.
|
|
32
32
|
_mapMidTransceiver = new Map();
|
|
33
|
-
//
|
|
33
|
+
// Default local stream for sending if no `streamId` is given in send().
|
|
34
34
|
_sendStream = new MediaStream();
|
|
35
35
|
// Whether a DataChannel m=application section has been created.
|
|
36
36
|
_hasDataChannelMediaSection = false;
|
|
@@ -198,10 +198,10 @@ class Safari12 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
198
198
|
this.assertNotClosed();
|
|
199
199
|
return this._pc.getStats();
|
|
200
200
|
}
|
|
201
|
-
async send({ track, encodings, codecOptions, headerExtensionOptions, codec, onRtpSender, }) {
|
|
201
|
+
async send({ track, streamId, encodings, codecOptions, headerExtensionOptions, codec, onRtpSender, }) {
|
|
202
202
|
this.assertNotClosed();
|
|
203
203
|
this.assertSendDirection();
|
|
204
|
-
logger.debug('send() [kind:%s, track.id:%s]', track.kind, track.id);
|
|
204
|
+
logger.debug('send() [kind:%s, track.id:%s, streamId:%s]', track.kind, track.id, streamId);
|
|
205
205
|
const mediaSectionIdx = this._remoteSdp.getNextMediaSectionIdx();
|
|
206
206
|
const transceiver = this._pc.addTransceiver(track, {
|
|
207
207
|
direction: 'sendonly',
|
|
@@ -278,6 +278,8 @@ class Safari12 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
278
278
|
sendingRtpParameters.rtcp.cname = sdpCommonUtils.getCname({
|
|
279
279
|
offerMediaObject,
|
|
280
280
|
});
|
|
281
|
+
// Set msid.
|
|
282
|
+
sendingRtpParameters.msid = `${streamId ?? this._sendStream.id} ${track.id}`;
|
|
281
283
|
// Set RTP encodings.
|
|
282
284
|
sendingRtpParameters.encodings = sdpUnifiedPlanUtils.getRtpEncodings({
|
|
283
285
|
offerMediaObject,
|
|
@@ -529,11 +531,14 @@ class Safari12 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
529
531
|
logger.debug('receive() [trackId:%s, kind:%s]', trackId, kind);
|
|
530
532
|
const localId = rtpParameters.mid ?? String(this._mapMidTransceiver.size);
|
|
531
533
|
mapLocalId.set(trackId, localId);
|
|
534
|
+
// We ignore MSID `trackId` when consuming and always use our computed
|
|
535
|
+
// `trackId` which matches the `consumer.id`.
|
|
536
|
+
const { msidStreamId } = ortcUtils.getMsidStreamIdAndTrackId(rtpParameters.msid);
|
|
532
537
|
this._remoteSdp.receive({
|
|
533
538
|
mid: localId,
|
|
534
539
|
kind,
|
|
535
540
|
offerRtpParameters: rtpParameters,
|
|
536
|
-
streamId: streamId ?? rtpParameters.rtcp
|
|
541
|
+
streamId: streamId ?? msidStreamId ?? rtpParameters.rtcp?.cname ?? '-',
|
|
537
542
|
trackId,
|
|
538
543
|
});
|
|
539
544
|
}
|
|
@@ -11,4 +11,8 @@ export declare function addHeaderExtensionSupport(rtpCapabilities: RtpCapabiliti
|
|
|
11
11
|
kind: MediaKind;
|
|
12
12
|
direction: RtpHeaderExtensionDirection;
|
|
13
13
|
}): void;
|
|
14
|
+
export declare function getMsidStreamIdAndTrackId(msid?: string): {
|
|
15
|
+
msidStreamId?: string;
|
|
16
|
+
msidTrackId?: string;
|
|
17
|
+
};
|
|
14
18
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/handlers/ortc/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,eAAe,EACf,SAAS,EACT,qBAAqB,EACrB,2BAA2B,EAC3B,MAAM,qBAAqB,CAAC;AAE7B;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,eAAe,EAAE,eAAe,GAAG,IAAI,CAc5E;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACxC,eAAe,EAAE,eAAe,EAChC,eAAe,EAAE;IAChB,GAAG,EAAE,qBAAqB,CAAC;IAC3B,IAAI,EAAE,SAAS,CAAC;IAChB,SAAS,EAAE,2BAA2B,CAAC;CACvC,GACC,IAAI,CAmCN"}
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/handlers/ortc/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,eAAe,EACf,SAAS,EACT,qBAAqB,EACrB,2BAA2B,EAC3B,MAAM,qBAAqB,CAAC;AAE7B;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,eAAe,EAAE,eAAe,GAAG,IAAI,CAc5E;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACxC,eAAe,EAAE,eAAe,EAChC,eAAe,EAAE;IAChB,GAAG,EAAE,qBAAqB,CAAC;IAC3B,IAAI,EAAE,SAAS,CAAC;IAChB,SAAS,EAAE,2BAA2B,CAAC;CACvC,GACC,IAAI,CAmCN;AAED,wBAAgB,yBAAyB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG;IACzD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB,CAgBA"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.addNackSupportForOpus = addNackSupportForOpus;
|
|
4
4
|
exports.addHeaderExtensionSupport = addHeaderExtensionSupport;
|
|
5
|
+
exports.getMsidStreamIdAndTrackId = getMsidStreamIdAndTrackId;
|
|
5
6
|
/**
|
|
6
7
|
* This function adds RTCP NACK support for OPUS codec in given capabilities.
|
|
7
8
|
*/
|
|
@@ -43,3 +44,17 @@ function addHeaderExtensionSupport(rtpCapabilities, headerExtension) {
|
|
|
43
44
|
};
|
|
44
45
|
rtpCapabilities.headerExtensions.push(newHeaderExtension);
|
|
45
46
|
}
|
|
47
|
+
function getMsidStreamIdAndTrackId(msid) {
|
|
48
|
+
if (!msid || typeof msid !== 'string') {
|
|
49
|
+
return { msidStreamId: undefined, msidTrackId: undefined };
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* `msidStreamId` must be an id or '-' (no stream).
|
|
53
|
+
* `msidTrackId` is an optional id.
|
|
54
|
+
*/
|
|
55
|
+
const [msidStreamId, msidTrackId] = msid.trim().split(/\s+/);
|
|
56
|
+
if (!msidStreamId) {
|
|
57
|
+
return { msidStreamId: undefined, msidTrackId: undefined };
|
|
58
|
+
}
|
|
59
|
+
return { msidStreamId, msidTrackId };
|
|
60
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MediaSection.d.ts","sourceRoot":"","sources":["../../../src/handlers/sdp/MediaSection.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,YAAY,MAAM,eAAe,CAAC;AAEnD,OAAO,KAAK,EACX,aAAa,EACb,YAAY,EACZ,cAAc,EACd,QAAQ,EACR,kBAAkB,EAClB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EACX,SAAS,EACT,aAAa,EAGb,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,8BAAsB,YAAY;IAEjC,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC,gBAAgB,CAAC;gBAEnD,EACX,aAAa,EACb,aAAa,EACb,cAAc,GACd,EAAE;QACF,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;QAC/B,cAAc,CAAC,EAAE,cAAc,CAAC;KAChC;IAmDD,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;IAE1C,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED,SAAS,IAAI,YAAY,CAAC,gBAAgB;IAI1C,gBAAgB,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI;IAKpD,KAAK,IAAI,IAAI;IAIb,QAAQ,CAAC,MAAM,IAAI,IAAI;IAEvB,OAAO,IAAI,IAAI;IAYf,KAAK,IAAI,IAAI;CAKb;AAED,qBAAa,kBAAmB,SAAQ,YAAY;gBACvC,EACX,aAAa,EACb,aAAa,EACb,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,YAAY,GACZ,EAAE;QACF,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;QAC/B,cAAc,CAAC,EAAE,cAAc,CAAC;QAChC,cAAc,CAAC,EAAE,cAAc,CAAC;QAChC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;QACxC,gBAAgB,EAAE,YAAY,CAAC,gBAAgB,CAAC;QAChD,kBAAkB,CAAC,EAAE,aAAa,CAAC;QACnC,mBAAmB,CAAC,EAAE,aAAa,CAAC;QACpC,YAAY,CAAC,EAAE,oBAAoB,CAAC;KACpC;IAiQD,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;IAsBjC,MAAM,IAAI,IAAI;IAId,mBAAmB,CAAC,SAAS,EAAE,wBAAwB,EAAE,GAAG,IAAI;CA6BhE;AAED,qBAAa,iBAAkB,SAAQ,YAAY;gBACtC,EACX,aAAa,EACb,aAAa,EACb,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,GAAG,EACH,IAAI,EACJ,kBAAkB,EAClB,QAAQ,EACR,OAAO,GACP,EAAE;QACF,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;QAC/B,cAAc,CAAC,EAAE,cAAc,CAAC;QAChC,cAAc,CAAC,EAAE,cAAc,CAAC;QAChC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;QACxC,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,SAAS,GAAG,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"MediaSection.d.ts","sourceRoot":"","sources":["../../../src/handlers/sdp/MediaSection.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,YAAY,MAAM,eAAe,CAAC;AAEnD,OAAO,KAAK,EACX,aAAa,EACb,YAAY,EACZ,cAAc,EACd,QAAQ,EACR,kBAAkB,EAClB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EACX,SAAS,EACT,aAAa,EAGb,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,8BAAsB,YAAY;IAEjC,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC,gBAAgB,CAAC;gBAEnD,EACX,aAAa,EACb,aAAa,EACb,cAAc,GACd,EAAE;QACF,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;QAC/B,cAAc,CAAC,EAAE,cAAc,CAAC;KAChC;IAmDD,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;IAE1C,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED,SAAS,IAAI,YAAY,CAAC,gBAAgB;IAI1C,gBAAgB,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI;IAKpD,KAAK,IAAI,IAAI;IAIb,QAAQ,CAAC,MAAM,IAAI,IAAI;IAEvB,OAAO,IAAI,IAAI;IAYf,KAAK,IAAI,IAAI;CAKb;AAED,qBAAa,kBAAmB,SAAQ,YAAY;gBACvC,EACX,aAAa,EACb,aAAa,EACb,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,YAAY,GACZ,EAAE;QACF,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;QAC/B,cAAc,CAAC,EAAE,cAAc,CAAC;QAChC,cAAc,CAAC,EAAE,cAAc,CAAC;QAChC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;QACxC,gBAAgB,EAAE,YAAY,CAAC,gBAAgB,CAAC;QAChD,kBAAkB,CAAC,EAAE,aAAa,CAAC;QACnC,mBAAmB,CAAC,EAAE,aAAa,CAAC;QACpC,YAAY,CAAC,EAAE,oBAAoB,CAAC;KACpC;IAiQD,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;IAsBjC,MAAM,IAAI,IAAI;IAId,mBAAmB,CAAC,SAAS,EAAE,wBAAwB,EAAE,GAAG,IAAI;CA6BhE;AAED,qBAAa,iBAAkB,SAAQ,YAAY;gBACtC,EACX,aAAa,EACb,aAAa,EACb,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,GAAG,EACH,IAAI,EACJ,kBAAkB,EAClB,QAAQ,EACR,OAAO,GACP,EAAE;QACF,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;QAC/B,cAAc,CAAC,EAAE,cAAc,CAAC;QAChC,cAAc,CAAC,EAAE,cAAc,CAAC;QAChC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;QACxC,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,SAAS,GAAG,aAAa,CAAC;QAEhC,kBAAkB,CAAC,EAAE,aAAa,CAAC;QACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,MAAM,CAAC;KACjB;IA8ID,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;IAKjC,MAAM,IAAI,IAAI;CAGd"}
|
|
@@ -345,7 +345,9 @@ class OfferMediaSection extends MediaSection {
|
|
|
345
345
|
this._mediaObject.rtp = [];
|
|
346
346
|
this._mediaObject.rtcpFb = [];
|
|
347
347
|
this._mediaObject.fmtp = [];
|
|
348
|
-
|
|
348
|
+
// @ts-expect-error --- @types/sdp-transform 2.15.0 is not ready for
|
|
349
|
+
// sdp-transform 3.0.0.
|
|
350
|
+
this._mediaObject.msid = [{ id: streamId, appdata: trackId }];
|
|
349
351
|
for (const codec of offerRtpParameters.codecs) {
|
|
350
352
|
const rtp = {
|
|
351
353
|
payload: codec.payloadType,
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type * as SdpTransform from 'sdp-transform';
|
|
2
|
-
import { MediaSection } from './MediaSection';
|
|
3
2
|
import type { IceParameters, IceCandidate, DtlsParameters, DtlsRole, PlainRtpParameters } from '../../Transport';
|
|
4
3
|
import type { ProducerCodecOptions } from '../../Producer';
|
|
5
4
|
import type { MediaKind, RtpParameters } from '../../RtpParameters';
|
|
@@ -63,9 +62,9 @@ export declare class RemoteSdp {
|
|
|
63
62
|
}): void;
|
|
64
63
|
receiveSctpAssociation(): void;
|
|
65
64
|
getSdp(): string;
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
65
|
+
private addMediaSection;
|
|
66
|
+
private replaceMediaSection;
|
|
67
|
+
private findMediaSection;
|
|
68
|
+
private regenerateBundleMids;
|
|
70
69
|
}
|
|
71
70
|
//# sourceMappingURL=RemoteSdp.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RemoteSdp.d.ts","sourceRoot":"","sources":["../../../src/handlers/sdp/RemoteSdp.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,YAAY,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"RemoteSdp.d.ts","sourceRoot":"","sources":["../../../src/handlers/sdp/RemoteSdp.ts"],"names":[],"mappings":"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"}
|
|
@@ -53,6 +53,8 @@ class RemoteSdp {
|
|
|
53
53
|
}
|
|
54
54
|
// If DTLS parameters are given, assume WebRTC and BUNDLE.
|
|
55
55
|
if (dtlsParameters) {
|
|
56
|
+
// NOTE: This is not standard anymore (it was removed in RFC 8830),
|
|
57
|
+
// however some WebRTC clients still rely on it.
|
|
56
58
|
this._sdpObject.msidSemantic = { semantic: 'WMS', token: '*' };
|
|
57
59
|
// NOTE: We take the latest fingerprint.
|
|
58
60
|
const numFingerprints = this._dtlsParameters.fingerprints.length;
|
|
@@ -122,15 +124,15 @@ class RemoteSdp {
|
|
|
122
124
|
}
|
|
123
125
|
// Unified-Plan with closed media section replacement.
|
|
124
126
|
if (reuseMid) {
|
|
125
|
-
this.
|
|
127
|
+
this.replaceMediaSection(mediaSection, reuseMid);
|
|
126
128
|
}
|
|
127
129
|
// Unified-Plan or Plan-B with different media kind.
|
|
128
130
|
else if (!this._midToIndex.has(mediaSection.mid)) {
|
|
129
|
-
this.
|
|
131
|
+
this.addMediaSection(mediaSection);
|
|
130
132
|
}
|
|
131
133
|
// Plan-B with same media kind.
|
|
132
134
|
else {
|
|
133
|
-
this.
|
|
135
|
+
this.replaceMediaSection(mediaSection);
|
|
134
136
|
}
|
|
135
137
|
}
|
|
136
138
|
receive({ mid, kind, offerRtpParameters, streamId, trackId, }) {
|
|
@@ -152,26 +154,26 @@ class RemoteSdp {
|
|
|
152
154
|
// NOTE: Yes, we can recycle a closed m=audio section with a new m=video.
|
|
153
155
|
const oldMediaSection = this._mediaSections.find(m => m.closed);
|
|
154
156
|
if (oldMediaSection) {
|
|
155
|
-
this.
|
|
157
|
+
this.replaceMediaSection(mediaSection, oldMediaSection.mid);
|
|
156
158
|
}
|
|
157
159
|
else {
|
|
158
|
-
this.
|
|
160
|
+
this.addMediaSection(mediaSection);
|
|
159
161
|
}
|
|
160
162
|
}
|
|
161
163
|
pauseMediaSection(mid) {
|
|
162
|
-
const mediaSection = this.
|
|
164
|
+
const mediaSection = this.findMediaSection(mid);
|
|
163
165
|
mediaSection.pause();
|
|
164
166
|
}
|
|
165
167
|
resumeSendingMediaSection(mid) {
|
|
166
|
-
const mediaSection = this.
|
|
168
|
+
const mediaSection = this.findMediaSection(mid);
|
|
167
169
|
mediaSection.resume();
|
|
168
170
|
}
|
|
169
171
|
resumeReceivingMediaSection(mid) {
|
|
170
|
-
const mediaSection = this.
|
|
172
|
+
const mediaSection = this.findMediaSection(mid);
|
|
171
173
|
mediaSection.resume();
|
|
172
174
|
}
|
|
173
175
|
disableMediaSection(mid) {
|
|
174
|
-
const mediaSection = this.
|
|
176
|
+
const mediaSection = this.findMediaSection(mid);
|
|
175
177
|
mediaSection.disable();
|
|
176
178
|
}
|
|
177
179
|
/**
|
|
@@ -182,7 +184,7 @@ class RemoteSdp {
|
|
|
182
184
|
* transport, so instead closing it we just disable it.
|
|
183
185
|
*/
|
|
184
186
|
closeMediaSection(mid) {
|
|
185
|
-
const mediaSection = this.
|
|
187
|
+
const mediaSection = this.findMediaSection(mid);
|
|
186
188
|
// NOTE: Closing the first m section is a pain since it invalidates the
|
|
187
189
|
// bundled transport, so let's avoid it.
|
|
188
190
|
if (mid === this._firstMid) {
|
|
@@ -192,13 +194,13 @@ class RemoteSdp {
|
|
|
192
194
|
}
|
|
193
195
|
mediaSection.close();
|
|
194
196
|
// Regenerate BUNDLE mids.
|
|
195
|
-
this.
|
|
197
|
+
this.regenerateBundleMids();
|
|
196
198
|
return true;
|
|
197
199
|
}
|
|
198
200
|
muxMediaSectionSimulcast(mid, encodings) {
|
|
199
|
-
const mediaSection = this.
|
|
201
|
+
const mediaSection = this.findMediaSection(mid);
|
|
200
202
|
mediaSection.muxSimulcastStreams(encodings);
|
|
201
|
-
this.
|
|
203
|
+
this.replaceMediaSection(mediaSection);
|
|
202
204
|
}
|
|
203
205
|
sendSctpAssociation({ offerMediaObject, }) {
|
|
204
206
|
const mediaSection = new MediaSection_1.AnswerMediaSection({
|
|
@@ -209,7 +211,7 @@ class RemoteSdp {
|
|
|
209
211
|
plainRtpParameters: this._plainRtpParameters,
|
|
210
212
|
offerMediaObject,
|
|
211
213
|
});
|
|
212
|
-
this.
|
|
214
|
+
this.addMediaSection(mediaSection);
|
|
213
215
|
}
|
|
214
216
|
receiveSctpAssociation() {
|
|
215
217
|
const mediaSection = new MediaSection_1.OfferMediaSection({
|
|
@@ -221,14 +223,14 @@ class RemoteSdp {
|
|
|
221
223
|
mid: 'datachannel',
|
|
222
224
|
kind: 'application',
|
|
223
225
|
});
|
|
224
|
-
this.
|
|
226
|
+
this.addMediaSection(mediaSection);
|
|
225
227
|
}
|
|
226
228
|
getSdp() {
|
|
227
229
|
// Increase SDP version.
|
|
228
230
|
this._sdpObject.origin.sessionVersion++;
|
|
229
231
|
return sdpTransform.write(this._sdpObject);
|
|
230
232
|
}
|
|
231
|
-
|
|
233
|
+
addMediaSection(newMediaSection) {
|
|
232
234
|
if (!this._firstMid) {
|
|
233
235
|
this._firstMid = newMediaSection.mid;
|
|
234
236
|
}
|
|
@@ -239,9 +241,9 @@ class RemoteSdp {
|
|
|
239
241
|
// Add to the SDP object.
|
|
240
242
|
this._sdpObject.media.push(newMediaSection.getObject());
|
|
241
243
|
// Regenerate BUNDLE mids.
|
|
242
|
-
this.
|
|
244
|
+
this.regenerateBundleMids();
|
|
243
245
|
}
|
|
244
|
-
|
|
246
|
+
replaceMediaSection(newMediaSection, reuseMid) {
|
|
245
247
|
// Store it in the map.
|
|
246
248
|
if (typeof reuseMid === 'string') {
|
|
247
249
|
const idx = this._midToIndex.get(reuseMid);
|
|
@@ -257,7 +259,7 @@ class RemoteSdp {
|
|
|
257
259
|
// Update the SDP object.
|
|
258
260
|
this._sdpObject.media[idx] = newMediaSection.getObject();
|
|
259
261
|
// Regenerate BUNDLE mids.
|
|
260
|
-
this.
|
|
262
|
+
this.regenerateBundleMids();
|
|
261
263
|
}
|
|
262
264
|
else {
|
|
263
265
|
const idx = this._midToIndex.get(newMediaSection.mid);
|
|
@@ -270,14 +272,14 @@ class RemoteSdp {
|
|
|
270
272
|
this._sdpObject.media[idx] = newMediaSection.getObject();
|
|
271
273
|
}
|
|
272
274
|
}
|
|
273
|
-
|
|
275
|
+
findMediaSection(mid) {
|
|
274
276
|
const idx = this._midToIndex.get(mid);
|
|
275
277
|
if (idx === undefined) {
|
|
276
278
|
throw new Error(`no media section found with mid '${mid}'`);
|
|
277
279
|
}
|
|
278
280
|
return this._mediaSections[idx];
|
|
279
281
|
}
|
|
280
|
-
|
|
282
|
+
regenerateBundleMids() {
|
|
281
283
|
if (!this._dtlsParameters) {
|
|
282
284
|
return;
|
|
283
285
|
}
|
package/lib/index.d.ts
CHANGED
package/lib/index.js
CHANGED
package/npm-scripts.mjs
CHANGED
|
@@ -212,8 +212,8 @@ function installDeps() {
|
|
|
212
212
|
// Update package-lock.json.
|
|
213
213
|
executeCmd('npm install --package-lock-only --ignore-scripts');
|
|
214
214
|
|
|
215
|
-
// Check vulnerabilities in deps.
|
|
216
|
-
executeCmd('npm audit');
|
|
215
|
+
// Check vulnerabilities in deps (exclude dev deps).
|
|
216
|
+
executeCmd('npm audit --omit=dev');
|
|
217
217
|
}
|
|
218
218
|
|
|
219
219
|
function checkRelease() {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mediasoup-client",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.18.1",
|
|
4
4
|
"description": "mediasoup client side TypeScript library",
|
|
5
5
|
"contributors": [
|
|
6
6
|
"Iñaki Baz Castillo <ibc@aliax.net> (https://inakibaz.me)",
|
|
@@ -78,25 +78,25 @@
|
|
|
78
78
|
"events-alias": "npm:events@^3.3.0",
|
|
79
79
|
"fake-mediastreamtrack": "^2.2.1",
|
|
80
80
|
"h264-profile-level-id": "^2.3.1",
|
|
81
|
-
"sdp-transform": "^
|
|
81
|
+
"sdp-transform": "^3.0.0",
|
|
82
82
|
"supports-color": "^10.2.2"
|
|
83
83
|
},
|
|
84
84
|
"devDependencies": {
|
|
85
|
-
"@eslint/js": "^9.
|
|
85
|
+
"@eslint/js": "^9.39.1",
|
|
86
86
|
"@types/jest": "^30.0.0",
|
|
87
|
-
"@types/node": "^24.
|
|
87
|
+
"@types/node": "^24.10.1",
|
|
88
88
|
"@types/sdp-transform": "^2.15.0",
|
|
89
89
|
"@types/ua-parser-js": "^0.7.39",
|
|
90
|
-
"eslint": "^9.
|
|
90
|
+
"eslint": "^9.39.1",
|
|
91
91
|
"eslint-config-prettier": "^10.1.8",
|
|
92
|
-
"eslint-plugin-jest": "^29.0
|
|
92
|
+
"eslint-plugin-jest": "^29.1.0",
|
|
93
93
|
"eslint-plugin-prettier": "^5.5.4",
|
|
94
|
-
"globals": "^16.
|
|
94
|
+
"globals": "^16.5.0",
|
|
95
95
|
"jest": "^30.2.0",
|
|
96
96
|
"open-cli": "^8.0.0",
|
|
97
97
|
"prettier": "^3.6.2",
|
|
98
98
|
"ts-jest": "^29.4.5",
|
|
99
99
|
"typescript": "^5.9.3",
|
|
100
|
-
"typescript-eslint": "^8.
|
|
100
|
+
"typescript-eslint": "^8.47.0"
|
|
101
101
|
}
|
|
102
102
|
}
|