mediasoup 3.21.2 → 3.23.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.
Files changed (46) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/node/lib/PipeTransportTypes.d.ts +8 -0
  3. package/node/lib/PipeTransportTypes.d.ts.map +1 -1
  4. package/node/lib/PlainTransportTypes.d.ts +8 -0
  5. package/node/lib/PlainTransportTypes.d.ts.map +1 -1
  6. package/node/lib/Router.d.ts +6 -6
  7. package/node/lib/Router.d.ts.map +1 -1
  8. package/node/lib/Router.js +28 -25
  9. package/node/lib/RouterTypes.d.ts +8 -4
  10. package/node/lib/RouterTypes.d.ts.map +1 -1
  11. package/node/lib/WebRtcTransportTypes.d.ts +8 -0
  12. package/node/lib/WebRtcTransportTypes.d.ts.map +1 -1
  13. package/node/lib/fbs/transport/options.d.ts +5 -2
  14. package/node/lib/fbs/transport/options.d.ts.map +1 -1
  15. package/node/lib/fbs/transport/options.js +18 -7
  16. package/node/lib/test/test-DataConsumer.js +3 -0
  17. package/node/lib/test/test-PipeTransport.js +33 -1
  18. package/package.json +11 -11
  19. package/worker/fbs/transport.fbs +1 -0
  20. package/worker/fuzzer/src/RTC/RTP/FuzzerPacket.cpp +44 -0
  21. package/worker/include/RTC/DataConsumer.hpp +7 -10
  22. package/worker/include/RTC/PipeTransport.hpp +4 -0
  23. package/worker/include/RTC/SCTP/public/Message.hpp +16 -0
  24. package/worker/include/RTC/SCTP/public/SctpOptions.hpp +7 -0
  25. package/worker/include/RTC/SCTP/tx/RoundRobinSendQueue.hpp +2 -0
  26. package/worker/include/RTC/SubchannelsCodec.hpp +76 -0
  27. package/worker/include/RTC/Transport.hpp +4 -5
  28. package/worker/meson.build +2 -0
  29. package/worker/scripts/package-lock.json +8 -7
  30. package/worker/src/RTC/DataConsumer.cpp +45 -62
  31. package/worker/src/RTC/ICE/StunPacket.cpp +6 -2
  32. package/worker/src/RTC/RTP/Packet.cpp +11 -0
  33. package/worker/src/RTC/SCTP/association/Association.cpp +1 -0
  34. package/worker/src/RTC/SCTP/association/StateCookie.cpp +5 -2
  35. package/worker/src/RTC/SCTP/packet/errorCauses/MissingMandatoryParameterErrorCause.cpp +4 -1
  36. package/worker/src/RTC/SCTP/tx/RoundRobinSendQueue.cpp +10 -2
  37. package/worker/src/RTC/SrtpSession.cpp +82 -25
  38. package/worker/src/RTC/SubchannelsCodec.cpp +153 -0
  39. package/worker/src/RTC/Transport.cpp +26 -58
  40. package/worker/subprojects/libsrtp3.wrap +4 -4
  41. package/worker/tasks.py +1 -1
  42. package/worker/test/src/RTC/SCTP/association/TestAssociation.cpp +34 -0
  43. package/worker/test/src/RTC/SCTP/association/TestStreamResetHandler.cpp +1 -0
  44. package/worker/test/src/RTC/SCTP/packet/errorCauses/TestMissingMandatoryParameterErrorCause.cpp +24 -0
  45. package/worker/test/src/RTC/SCTP/tx/TestRoundRobinSendQueue.cpp +180 -39
  46. package/worker/test/src/RTC/TestSubchannelsCodec.cpp +224 -0
package/CHANGELOG.md CHANGED
@@ -2,6 +2,19 @@
2
2
 
3
3
  ### NEXT
4
4
 
5
+ ### 3.23.0
6
+
7
+ - Bump up Meson from 1.9.1 to 1.11.2 ([PR #1861](https://github.com/versatica/mediasoup/pull/1861)).
8
+ - Worker: Update libsrtp to 3.0.0-beta-2fc078db ([PR #1860](https://github.com/versatica/mediasoup/pull/1860)).
9
+ - Worker: Use constant-time memory comparison in MAC/credential verification (SCTP State Cookie MAC and STUN "MESSAGE-INTEGRITY") ([PR #1867](https://github.com/versatica/mediasoup/pull/1867), credits to @alanturing881).
10
+ - Worker: Fix OOB write in `RTP::Packet::UpdateDependencyDescriptor()` ([PR #1868](https://github.com/versatica/mediasoup/pull/1868), credits to @alanturing881).
11
+ - Worker: Fix integer overflow in SCTP `MissingMandatoryParameterErrorCause` ([PR #1869](https://github.com/versatica/mediasoup/pull/1869), credits to @alanturing881).
12
+ - SCTP: Add default per stream buffered amount low threshold option ([PR #1871](https://github.com/versatica/mediasoup/pull/1871)).
13
+
14
+ ### 3.22.0
15
+
16
+ - SCTP: Encode subchannels in SCTP messages to enable subchannels mechanism when using pipe transport ([PR #1859](https://github.com/versatica/mediasoup/pull/1859)).
17
+
5
18
  ### 3.21.2
6
19
 
7
20
  - Worker: Fix crash when an SCTP `DataConsumer` is closed and triggers buffered amount low event ([PR #1858](https://github.com/versatica/mediasoup/pull/1858)).
@@ -36,6 +36,14 @@ export type PipeTransportOptions<PipeTransportAppData extends AppData = AppData>
36
36
  * Default 5242880.
37
37
  */
38
38
  sctpMaxReceiverWindowBufferSize?: number;
39
+ /**
40
+ * SCTP default stream buffered amount low threshold (in bytes). When the
41
+ * buffered amount of a DataConsumer stream drops to or below this value, the
42
+ * 'bufferedamountlow' event is emitted. It can be overridden per DataConsumer
43
+ * via `dataConsumer.setBufferedAmountLowThreshold()`.
44
+ * Default 1024.
45
+ */
46
+ sctpDefaultStreamBufferedAmountLowThreshold?: number;
39
47
  /**
40
48
  * Enable RTX and NACK for RTP retransmission. Useful if both Routers are
41
49
  * located in different hosts and there is packet lost in the link. For this
@@ -1 +1 @@
1
- {"version":3,"file":"PipeTransportTypes.d.ts","sourceRoot":"","sources":["../src/PipeTransportTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PipeTransportTypes.d.ts","sourceRoot":"","sources":["../src/PipeTransportTypes.ts"],"names":[],"mappings":"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"}
@@ -46,6 +46,14 @@ export type PlainTransportOptions<PlainTransportAppData extends AppData = AppDat
46
46
  * Default 5242880.
47
47
  */
48
48
  sctpMaxReceiverWindowBufferSize?: number;
49
+ /**
50
+ * SCTP default stream buffered amount low threshold (in bytes). When the
51
+ * buffered amount of a DataConsumer stream drops to or below this value, the
52
+ * 'bufferedamountlow' event is emitted. It can be overridden per DataConsumer
53
+ * via `dataConsumer.setBufferedAmountLowThreshold()`.
54
+ * Default 1024.
55
+ */
56
+ sctpDefaultStreamBufferedAmountLowThreshold?: number;
49
57
  /**
50
58
  * Enable SRTP. For this to work, connect() must be called
51
59
  * with remote SRTP parameters. Default false.
@@ -1 +1 @@
1
- {"version":3,"file":"PlainTransportTypes.d.ts","sourceRoot":"","sources":["../src/PlainTransportTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PlainTransportTypes.d.ts","sourceRoot":"","sources":["../src/PlainTransportTypes.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { EnhancedEventEmitter } from './enhancedEvents';
2
2
  import type { Channel } from './Channel';
3
- import type { Router, PipeToRouterOptions, PipeToRouterResult, PipeTransportPair, RouterDump, RouterEvents, RouterObserver } from './RouterTypes';
3
+ import type { Router, PipeToRouterOptions, PipeToRouterResult, RouterDump, RouterEvents, RouterObserver } from './RouterTypes';
4
4
  import type { Transport } from './TransportTypes';
5
5
  import type { WebRtcTransport, WebRtcTransportOptions } from './WebRtcTransportTypes';
6
6
  import type { PlainTransport, PlainTransportOptions } from './PlainTransportTypes';
@@ -39,12 +39,11 @@ export declare class RouterImpl<RouterAppData extends AppData = AppData> extends
39
39
  close(): void;
40
40
  workerClosed(): void;
41
41
  dump(): Promise<RouterDump>;
42
- createWebRtcTransport<WebRtcTransportAppData extends AppData = AppData>({ webRtcServer, listenInfos, listenIps, port, enableUdp, enableTcp, preferUdp, preferTcp, initialAvailableOutgoingBitrate, enableSctp, maxSendMessageSize, maxReceiveMessageSize, sctpSendBufferSize, sctpPerStreamSendQueueLimit, sctpMaxReceiverWindowBufferSize, iceConsentTimeout, appData, }: WebRtcTransportOptions<WebRtcTransportAppData>): Promise<WebRtcTransport<WebRtcTransportAppData>>;
43
- createPlainTransport<PlainTransportAppData extends AppData = AppData>({ listenInfo, rtcpListenInfo, listenIp, port, rtcpMux, comedia, enableSctp, maxSendMessageSize, maxReceiveMessageSize, sctpSendBufferSize, sctpPerStreamSendQueueLimit, sctpMaxReceiverWindowBufferSize, enableSrtp, srtpCryptoSuite, appData, }: PlainTransportOptions<PlainTransportAppData>): Promise<PlainTransport<PlainTransportAppData>>;
44
- createPipeTransport<PipeTransportAppData extends AppData = AppData>({ listenInfo, listenIp, port, enableSctp, maxSendMessageSize, maxReceiveMessageSize, sctpSendBufferSize, sctpPerStreamSendQueueLimit, sctpMaxReceiverWindowBufferSize, enableRtx, enableSrtp, appData, }: PipeTransportOptions<PipeTransportAppData>): Promise<PipeTransport<PipeTransportAppData>>;
42
+ createWebRtcTransport<WebRtcTransportAppData extends AppData = AppData>({ webRtcServer, listenInfos, listenIps, port, enableUdp, enableTcp, preferUdp, preferTcp, initialAvailableOutgoingBitrate, enableSctp, maxSendMessageSize, maxReceiveMessageSize, sctpSendBufferSize, sctpPerStreamSendQueueLimit, sctpMaxReceiverWindowBufferSize, sctpDefaultStreamBufferedAmountLowThreshold, iceConsentTimeout, appData, }: WebRtcTransportOptions<WebRtcTransportAppData>): Promise<WebRtcTransport<WebRtcTransportAppData>>;
43
+ createPlainTransport<PlainTransportAppData extends AppData = AppData>({ listenInfo, rtcpListenInfo, listenIp, port, rtcpMux, comedia, enableSctp, maxSendMessageSize, maxReceiveMessageSize, sctpSendBufferSize, sctpPerStreamSendQueueLimit, sctpMaxReceiverWindowBufferSize, sctpDefaultStreamBufferedAmountLowThreshold, enableSrtp, srtpCryptoSuite, appData, }: PlainTransportOptions<PlainTransportAppData>): Promise<PlainTransport<PlainTransportAppData>>;
44
+ createPipeTransport<PipeTransportAppData extends AppData = AppData>({ listenInfo, listenIp, port, enableSctp, maxSendMessageSize, maxReceiveMessageSize, sctpSendBufferSize, sctpPerStreamSendQueueLimit, sctpMaxReceiverWindowBufferSize, sctpDefaultStreamBufferedAmountLowThreshold, enableRtx, enableSrtp, appData, }: PipeTransportOptions<PipeTransportAppData>): Promise<PipeTransport<PipeTransportAppData>>;
45
45
  createDirectTransport<DirectTransportAppData extends AppData = AppData>({ maxSendMessageSize, maxReceiveMessageSize, appData, }?: DirectTransportOptions<DirectTransportAppData>): Promise<DirectTransport<DirectTransportAppData>>;
46
- pipeToRouter({ producerId, dataProducerId, router, keepId, listenInfo, listenIp, enableSctp, maxSendMessageSize, maxReceiveMessageSize, sctpSendBufferSize, sctpPerStreamSendQueueLimit, sctpMaxReceiverWindowBufferSize, enableRtx, enableSrtp, }: PipeToRouterOptions): Promise<PipeToRouterResult>;
47
- addPipeTransportPair(pipeTransportPairKey: string, pipeTransportPairPromise: Promise<PipeTransportPair>): void;
46
+ pipeToRouter({ producerId, dataProducerId, router, keepId, listenInfo, listenIp, enableSctp, maxSendMessageSize, maxReceiveMessageSize, sctpSendBufferSize, sctpPerStreamSendQueueLimit, sctpMaxReceiverWindowBufferSize, sctpDefaultStreamBufferedAmountLowThreshold, enableRtx, enableSrtp, }: PipeToRouterOptions): Promise<PipeToRouterResult>;
48
47
  createActiveSpeakerObserver<ActiveSpeakerObserverAppData extends AppData = AppData>({ interval, appData, }?: ActiveSpeakerObserverOptions<ActiveSpeakerObserverAppData>): Promise<ActiveSpeakerObserver<ActiveSpeakerObserverAppData>>;
49
48
  createAudioLevelObserver<AudioLevelObserverAppData extends AppData = AppData>({ maxEntries, threshold, interval, appData, }?: AudioLevelObserverOptions<AudioLevelObserverAppData>): Promise<AudioLevelObserver<AudioLevelObserverAppData>>;
50
49
  canConsume({ producerId, rtpCapabilities, }: {
@@ -52,6 +51,7 @@ export declare class RouterImpl<RouterAppData extends AppData = AppData> extends
52
51
  rtpCapabilities: RtpCapabilities;
53
52
  }): boolean;
54
53
  updateMediaCodecs(mediaCodecs: RouterRtpCodecCapability[]): void;
54
+ private addPipeTransportPair;
55
55
  private handleListenerError;
56
56
  }
57
57
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"Router.d.ts","sourceRoot":"","sources":["../src/Router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Router.d.ts","sourceRoot":"","sources":["../src/Router.ts"],"names":[],"mappings":"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"}
@@ -180,7 +180,7 @@ class RouterImpl extends enhancedEvents_1.EnhancedEventEmitter {
180
180
  response.body(dump);
181
181
  return parseRouterDumpResponse(dump);
182
182
  }
183
- async createWebRtcTransport({ webRtcServer, listenInfos, listenIps, port, enableUdp, enableTcp, preferUdp = false, preferTcp = false, initialAvailableOutgoingBitrate = 600000, enableSctp = false, maxSendMessageSize = 262144, maxReceiveMessageSize = 262144, sctpSendBufferSize = 2000000, sctpPerStreamSendQueueLimit = 2000000, sctpMaxReceiverWindowBufferSize = 5242880, iceConsentTimeout = 30, appData, }) {
183
+ async createWebRtcTransport({ webRtcServer, listenInfos, listenIps, port, enableUdp, enableTcp, preferUdp = false, preferTcp = false, initialAvailableOutgoingBitrate = 600000, enableSctp = false, maxSendMessageSize = 262144, maxReceiveMessageSize = 262144, sctpSendBufferSize = 2000000, sctpPerStreamSendQueueLimit = 2000000, sctpMaxReceiverWindowBufferSize = 5242880, sctpDefaultStreamBufferedAmountLowThreshold = 1024, iceConsentTimeout = 30, appData, }) {
184
184
  logger.debug('createWebRtcTransport()');
185
185
  if (!webRtcServer &&
186
186
  !Array.isArray(listenInfos) &&
@@ -257,7 +257,7 @@ class RouterImpl extends enhancedEvents_1.EnhancedEventEmitter {
257
257
  new FbsWebRtcTransport.ListenIndividualT(fbsListenInfos);
258
258
  }
259
259
  const baseTransportOptions = new FbsTransport.OptionsT(
260
- /* direct */ undefined, initialAvailableOutgoingBitrate, enableSctp, maxSendMessageSize, maxReceiveMessageSize, sctpSendBufferSize, sctpPerStreamSendQueueLimit, sctpMaxReceiverWindowBufferSize,
260
+ /* direct */ undefined, initialAvailableOutgoingBitrate, enableSctp, maxSendMessageSize, maxReceiveMessageSize, sctpSendBufferSize, sctpPerStreamSendQueueLimit, sctpMaxReceiverWindowBufferSize, sctpDefaultStreamBufferedAmountLowThreshold,
261
261
  /* isDataChannel */ true);
262
262
  const webRtcTransportOptions = new FbsWebRtcTransport.WebRtcTransportOptionsT(baseTransportOptions, webRtcServer
263
263
  ? FbsWebRtcTransport.Listen.ListenServer
@@ -298,7 +298,7 @@ class RouterImpl extends enhancedEvents_1.EnhancedEventEmitter {
298
298
  }
299
299
  return transport;
300
300
  }
301
- async createPlainTransport({ listenInfo, rtcpListenInfo, listenIp, port, rtcpMux = true, comedia = false, enableSctp = false, maxSendMessageSize = 262144, maxReceiveMessageSize = 262144, sctpSendBufferSize = 2000000, sctpPerStreamSendQueueLimit = 2000000, sctpMaxReceiverWindowBufferSize = 5242880, enableSrtp = false, srtpCryptoSuite = 'AES_CM_128_HMAC_SHA1_80', appData, }) {
301
+ async createPlainTransport({ listenInfo, rtcpListenInfo, listenIp, port, rtcpMux = true, comedia = false, enableSctp = false, maxSendMessageSize = 262144, maxReceiveMessageSize = 262144, sctpSendBufferSize = 2000000, sctpPerStreamSendQueueLimit = 2000000, sctpMaxReceiverWindowBufferSize = 5242880, sctpDefaultStreamBufferedAmountLowThreshold = 1024, enableSrtp = false, srtpCryptoSuite = 'AES_CM_128_HMAC_SHA1_80', appData, }) {
302
302
  logger.debug('createPlainTransport()');
303
303
  if (!listenInfo && !listenIp) {
304
304
  throw new TypeError('missing listenInfo and listenIp (one of them is mandatory)');
@@ -331,7 +331,7 @@ class RouterImpl extends enhancedEvents_1.EnhancedEventEmitter {
331
331
  /* Build Request. */
332
332
  const baseTransportOptions = new FbsTransport.OptionsT(
333
333
  /* direct */ undefined,
334
- /* initialAvailableOutgoingBitrate */ undefined, enableSctp, maxSendMessageSize, maxReceiveMessageSize, sctpSendBufferSize, sctpPerStreamSendQueueLimit, sctpMaxReceiverWindowBufferSize,
334
+ /* initialAvailableOutgoingBitrate */ undefined, enableSctp, maxSendMessageSize, maxReceiveMessageSize, sctpSendBufferSize, sctpPerStreamSendQueueLimit, sctpMaxReceiverWindowBufferSize, sctpDefaultStreamBufferedAmountLowThreshold,
335
335
  /* isDataChannel */ false);
336
336
  const plainTransportOptions = new FbsPlainTransport.PlainTransportOptionsT(baseTransportOptions, new FbsTransport.ListenInfoT(listenInfo.protocol === 'udp'
337
337
  ? protocol_1.Protocol.UDP
@@ -369,7 +369,7 @@ class RouterImpl extends enhancedEvents_1.EnhancedEventEmitter {
369
369
  this.#observer.safeEmit('newtransport', transport);
370
370
  return transport;
371
371
  }
372
- async createPipeTransport({ listenInfo, listenIp, port, enableSctp = false, maxSendMessageSize = 262144, maxReceiveMessageSize = 262144, sctpSendBufferSize = 2000000, sctpPerStreamSendQueueLimit = 2000000, sctpMaxReceiverWindowBufferSize = 5242880, enableRtx = false, enableSrtp = false, appData, }) {
372
+ async createPipeTransport({ listenInfo, listenIp, port, enableSctp = false, maxSendMessageSize = 262144, maxReceiveMessageSize = 262144, sctpSendBufferSize = 2000000, sctpPerStreamSendQueueLimit = 2000000, sctpMaxReceiverWindowBufferSize = 5242880, sctpDefaultStreamBufferedAmountLowThreshold = 1024, enableRtx = false, enableSrtp = false, appData, }) {
373
373
  logger.debug('createPipeTransport()');
374
374
  if (!listenInfo && !listenIp) {
375
375
  throw new TypeError('missing listenInfo and listenIp (one of them is mandatory)');
@@ -397,7 +397,7 @@ class RouterImpl extends enhancedEvents_1.EnhancedEventEmitter {
397
397
  /* Build Request. */
398
398
  const baseTransportOptions = new FbsTransport.OptionsT(
399
399
  /* direct */ undefined,
400
- /* initialAvailableOutgoingBitrate */ undefined, enableSctp, maxSendMessageSize, maxReceiveMessageSize, sctpSendBufferSize, sctpPerStreamSendQueueLimit, sctpMaxReceiverWindowBufferSize,
400
+ /* initialAvailableOutgoingBitrate */ undefined, enableSctp, maxSendMessageSize, maxReceiveMessageSize, sctpSendBufferSize, sctpPerStreamSendQueueLimit, sctpMaxReceiverWindowBufferSize, sctpDefaultStreamBufferedAmountLowThreshold,
401
401
  /* isDataChannel */ false);
402
402
  const pipeTransportOptions = new FbsPipeTransport.PipeTransportOptionsT(baseTransportOptions, new FbsTransport.ListenInfoT(listenInfo.protocol === 'udp'
403
403
  ? protocol_1.Protocol.UDP
@@ -445,6 +445,7 @@ class RouterImpl extends enhancedEvents_1.EnhancedEventEmitter {
445
445
  /* sctpSendBufferSize */ undefined,
446
446
  /* sctpPerStreamSendQueueLimit */ undefined,
447
447
  /* sctpMaxReceiverWindowBufferSize */ undefined,
448
+ /* sctpDefaultStreamBufferedAmountLowThreshold */ undefined,
448
449
  /* isDataChannel */ undefined);
449
450
  const directTransportOptions = new FbsDirectTransport.DirectTransportOptionsT(baseTransportOptions);
450
451
  const requestOffset = new FbsRouter.CreateDirectTransportRequestT(transportId, directTransportOptions).pack(this.#channel.bufferBuilder);
@@ -476,7 +477,7 @@ class RouterImpl extends enhancedEvents_1.EnhancedEventEmitter {
476
477
  this.#observer.safeEmit('newtransport', transport);
477
478
  return transport;
478
479
  }
479
- async pipeToRouter({ producerId, dataProducerId, router, keepId = true, listenInfo, listenIp, enableSctp = true, maxSendMessageSize = 262144, maxReceiveMessageSize = 262144, sctpSendBufferSize = 2000000, sctpPerStreamSendQueueLimit = 2000000, sctpMaxReceiverWindowBufferSize = 5242880, enableRtx = false, enableSrtp = false, }) {
480
+ async pipeToRouter({ producerId, dataProducerId, router, keepId = true, listenInfo, listenIp, enableSctp = true, maxSendMessageSize = 262144, maxReceiveMessageSize = 262144, sctpSendBufferSize = 2000000, sctpPerStreamSendQueueLimit = 2000000, sctpMaxReceiverWindowBufferSize = 5242880, sctpDefaultStreamBufferedAmountLowThreshold = 1024, enableRtx = false, enableSrtp = false, }) {
480
481
  logger.debug('pipeToRouter()');
481
482
  if (!listenInfo && !listenIp) {
482
483
  listenInfo = {
@@ -546,6 +547,7 @@ class RouterImpl extends enhancedEvents_1.EnhancedEventEmitter {
546
547
  sctpSendBufferSize,
547
548
  sctpPerStreamSendQueueLimit,
548
549
  sctpMaxReceiverWindowBufferSize,
550
+ sctpDefaultStreamBufferedAmountLowThreshold,
549
551
  enableRtx,
550
552
  enableSrtp,
551
553
  }),
@@ -557,6 +559,7 @@ class RouterImpl extends enhancedEvents_1.EnhancedEventEmitter {
557
559
  sctpSendBufferSize,
558
560
  sctpPerStreamSendQueueLimit,
559
561
  sctpMaxReceiverWindowBufferSize,
562
+ sctpDefaultStreamBufferedAmountLowThreshold,
560
563
  enableRtx,
561
564
  enableSrtp,
562
565
  }),
@@ -694,24 +697,6 @@ class RouterImpl extends enhancedEvents_1.EnhancedEventEmitter {
694
697
  throw new Error('internal error');
695
698
  }
696
699
  }
697
- addPipeTransportPair(pipeTransportPairKey, pipeTransportPairPromise) {
698
- if (this.#mapRouterPairPipeTransportPairPromise.has(pipeTransportPairKey)) {
699
- throw new Error('given pipeTransportPairKey already exists in this Router');
700
- }
701
- this.#mapRouterPairPipeTransportPairPromise.set(pipeTransportPairKey, pipeTransportPairPromise);
702
- pipeTransportPairPromise
703
- .then(pipeTransportPair => {
704
- const localPipeTransport = pipeTransportPair[this.id];
705
- // NOTE: No need to do any other cleanup here since that is done by the
706
- // Router calling this method on us.
707
- localPipeTransport.observer.on('close', () => {
708
- this.#mapRouterPairPipeTransportPairPromise.delete(pipeTransportPairKey);
709
- });
710
- })
711
- .catch(() => {
712
- this.#mapRouterPairPipeTransportPairPromise.delete(pipeTransportPairKey);
713
- });
714
- }
715
700
  async createActiveSpeakerObserver({ interval = 300, appData, } = {}) {
716
701
  logger.debug('createActiveSpeakerObserver()');
717
702
  if (typeof interval !== 'number') {
@@ -804,6 +789,24 @@ class RouterImpl extends enhancedEvents_1.EnhancedEventEmitter {
804
789
  const rtpCapabilities = ortc.generateRouterRtpCapabilities(clonedMediaCodecs);
805
790
  this.#data.rtpCapabilities = rtpCapabilities;
806
791
  }
792
+ addPipeTransportPair(pipeTransportPairKey, pipeTransportPairPromise) {
793
+ if (this.#mapRouterPairPipeTransportPairPromise.has(pipeTransportPairKey)) {
794
+ throw new Error('given pipeTransportPairKey already exists in this Router');
795
+ }
796
+ this.#mapRouterPairPipeTransportPairPromise.set(pipeTransportPairKey, pipeTransportPairPromise);
797
+ pipeTransportPairPromise
798
+ .then(pipeTransportPair => {
799
+ const localPipeTransport = pipeTransportPair[this.id];
800
+ // NOTE: No need to do any other cleanup here since that is done by the
801
+ // Router calling this method on us.
802
+ localPipeTransport.observer.on('close', () => {
803
+ this.#mapRouterPairPipeTransportPairPromise.delete(pipeTransportPairKey);
804
+ });
805
+ })
806
+ .catch(() => {
807
+ this.#mapRouterPairPipeTransportPairPromise.delete(pipeTransportPairKey);
808
+ });
809
+ }
807
810
  handleListenerError() {
808
811
  this.on('listenererror', (eventName, error) => {
809
812
  logger.error(`event listener threw an error [eventName:${eventName}]:`, error);
@@ -76,6 +76,14 @@ export type PipeToRouterOptions = {
76
76
  * Default 5242880.
77
77
  */
78
78
  sctpMaxReceiverWindowBufferSize?: number;
79
+ /**
80
+ * SCTP default stream buffered amount low threshold (in bytes). When the
81
+ * buffered amount of a DataConsumer stream drops to or below this value, the
82
+ * 'bufferedamountlow' event is emitted. It can be overridden per DataConsumer
83
+ * via `dataConsumer.setBufferedAmountLowThreshold()`.
84
+ * Default 1024.
85
+ */
86
+ sctpDefaultStreamBufferedAmountLowThreshold?: number;
79
87
  /**
80
88
  * Enable RTX and NACK for RTP retransmission.
81
89
  */
@@ -234,10 +242,6 @@ export interface Router<RouterAppData extends AppData = AppData> extends Enhance
234
242
  * Pipes the given Producer or DataProducer into another Router in same host.
235
243
  */
236
244
  pipeToRouter(options: PipeToRouterOptions): Promise<PipeToRouterResult>;
237
- /**
238
- * @private
239
- */
240
- addPipeTransportPair(pipeTransportPairKey: string, pipeTransportPairPromise: Promise<PipeTransportPair>): void;
241
245
  /**
242
246
  * Create an ActiveSpeakerObserver
243
247
  */
@@ -1 +1 @@
1
- {"version":3,"file":"RouterTypes.d.ts","sourceRoot":"","sources":["../src/RouterTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RouterTypes.d.ts","sourceRoot":"","sources":["../src/RouterTypes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,KAAK,EACX,SAAS,EACT,mBAAmB,EACnB,iBAAiB,EACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EACX,eAAe,EACf,sBAAsB,EACtB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EACX,cAAc,EACd,qBAAqB,EACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,KAAK,EACX,eAAe,EACf,sBAAsB,EACtB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EACX,qBAAqB,EACrB,4BAA4B,EAC5B,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EACX,kBAAkB,EAClB,yBAAyB,EACzB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EACX,eAAe,EACf,wBAAwB,EACxB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAE/C,MAAM,MAAM,aAAa,CAAC,aAAa,SAAS,OAAO,GAAG,OAAO,IAAI;IACpE;;OAEG;IACH,WAAW,CAAC,EAAE,wBAAwB,EAAE,CAAC;IAEzC;;OAEG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IACjC;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;;OAGG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAE/B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;;;OAIG;IACH,2BAA2B,CAAC,EAAE,MAAM,CAAC;IAErC;;;;OAIG;IACH,+BAA+B,CAAC,EAAE,MAAM,CAAC;IAEzC;;;;;;OAMG;IACH,2CAA2C,CAAC,EAAE,MAAM,CAAC;IAErD;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACrB,GAAG,kBAAkB,CAAC;AAEvB,KAAK,kBAAkB,GAAG,MAAM,CAAC,sBAAsB,EAAE,oBAAoB,CAAC,CAAC;AAE/E,KAAK,sBAAsB,GAAG;IAC7B,UAAU,EAAE,mBAAmB,CAAC;CAChC,CAAC;AAEF,KAAK,oBAAoB,GAAG;IAC3B;;OAEG;IACH,QAAQ,CAAC,EAAE,iBAAiB,GAAG,MAAM,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAChC;;OAEG;IACH,YAAY,CAAC,EAAE,QAAQ,CAAC;IAExB;;OAEG;IACH,YAAY,CAAC,EAAE,QAAQ,CAAC;IAExB;;OAEG;IACH,gBAAgB,CAAC,EAAE,YAAY,CAAC;IAEhC;;OAEG;IACH,gBAAgB,CAAC,EAAE,YAAY,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC/B,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACxB;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IACX;;OAEG;IACH,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB;;OAEG;IACH,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB;;OAEG;IACH,wBAAwB,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE,CAAC;IAC9D;;OAEG;IACH,uBAAuB,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC1D;;OAEG;IACH,wBAAwB,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE,CAAC;IAC9D;;OAEG;IACH,gCAAgC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE,CAAC;IACtE;;OAEG;IACH,+BAA+B,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAClE,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IAC1B,WAAW,EAAE,EAAE,CAAC;IAEhB,QAAQ,EAAE,EAAE,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,oBAAoB,CAAC,oBAAoB,CAAC,CAAC;AAExE,MAAM,MAAM,oBAAoB,GAAG;IAClC,KAAK,EAAE,EAAE,CAAC;IACV,YAAY,EAAE,CAAC,SAAS,CAAC,CAAC;IAC1B,cAAc,EAAE,CAAC,WAAW,CAAC,CAAC;CAC9B,CAAC;AAEF,MAAM,WAAW,MAAM,CACtB,aAAa,SAAS,OAAO,GAAG,OAAO,CACtC,SAAQ,oBAAoB,CAAC,YAAY,CAAC;IAC3C;;OAEG;IACH,IAAI,EAAE,IAAI,MAAM,CAAC;IAEjB;;OAEG;IACH,IAAI,MAAM,IAAI,OAAO,CAAC;IAEtB;;OAEG;IACH,IAAI,eAAe,IAAI,eAAe,CAAC;IAEvC;;OAEG;IACH,IAAI,OAAO,IAAI,aAAa,CAAC;IAE7B;;OAEG;IACH,IAAI,OAAO,CAAC,OAAO,EAAE,aAAa,EAAE;IAEpC;;OAEG;IACH,IAAI,QAAQ,IAAI,cAAc,CAAC;IAE/B;;OAEG;IACH,KAAK,IAAI,IAAI,CAAC;IAEd;;;;OAIG;IACH,YAAY,IAAI,IAAI,CAAC;IAErB;;OAEG;IACH,IAAI,IAAI,OAAO,CAAC,UAAU,CAAC,CAAC;IAE5B;;OAEG;IACH,qBAAqB,CAAC,sBAAsB,SAAS,OAAO,GAAG,OAAO,EACrE,OAAO,EAAE,sBAAsB,CAAC,sBAAsB,CAAC,GACrD,OAAO,CAAC,eAAe,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAEpD;;OAEG;IACH,oBAAoB,CAAC,qBAAqB,SAAS,OAAO,GAAG,OAAO,EACnE,OAAO,EAAE,qBAAqB,CAAC,qBAAqB,CAAC,GACnD,OAAO,CAAC,cAAc,CAAC,qBAAqB,CAAC,CAAC,CAAC;IAElD;;OAEG;IACH,mBAAmB,CAAC,oBAAoB,SAAS,OAAO,GAAG,OAAO,EACjE,OAAO,EAAE,oBAAoB,CAAC,oBAAoB,CAAC,GACjD,OAAO,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC,CAAC;IAEhD;;OAEG;IACH,qBAAqB,CAAC,sBAAsB,SAAS,OAAO,GAAG,OAAO,EACrE,OAAO,CAAC,EAAE,sBAAsB,CAAC,sBAAsB,CAAC,GACtD,OAAO,CAAC,eAAe,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAEpD;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAExE;;OAEG;IACH,2BAA2B,CAC1B,4BAA4B,SAAS,OAAO,GAAG,OAAO,EAEtD,OAAO,CAAC,EAAE,4BAA4B,CAAC,4BAA4B,CAAC,GAClE,OAAO,CAAC,qBAAqB,CAAC,4BAA4B,CAAC,CAAC,CAAC;IAEhE;;OAEG;IACH,wBAAwB,CAAC,yBAAyB,SAAS,OAAO,GAAG,OAAO,EAC3E,OAAO,CAAC,EAAE,yBAAyB,CAAC,yBAAyB,CAAC,GAC5D,OAAO,CAAC,kBAAkB,CAAC,yBAAyB,CAAC,CAAC,CAAC;IAE1D;;OAEG;IACH,UAAU,CAAC,EACV,UAAU,EACV,eAAe,GACf,EAAE;QACF,UAAU,EAAE,MAAM,CAAC;QACnB,eAAe,EAAE,eAAe,CAAC;KACjC,GAAG,OAAO,CAAC;IAEZ;;;OAGG;IACH,iBAAiB,CAAC,WAAW,EAAE,wBAAwB,EAAE,GAAG,IAAI,CAAC;CACjE"}
@@ -60,6 +60,14 @@ type WebRtcTransportOptionsBase<WebRtcTransportAppData> = {
60
60
  * Default 5242880.
61
61
  */
62
62
  sctpMaxReceiverWindowBufferSize?: number;
63
+ /**
64
+ * SCTP default stream buffered amount low threshold (in bytes). When the
65
+ * buffered amount of a DataConsumer stream drops to or below this value, the
66
+ * 'bufferedamountlow' event is emitted. It can be overridden per DataConsumer
67
+ * via `dataConsumer.setBufferedAmountLowThreshold()`.
68
+ * Default 1024.
69
+ */
70
+ sctpDefaultStreamBufferedAmountLowThreshold?: number;
63
71
  /**
64
72
  * Custom application data.
65
73
  */
@@ -1 +1 @@
1
- {"version":3,"file":"WebRtcTransportTypes.d.ts","sourceRoot":"","sources":["../src/WebRtcTransportTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebRtcTransportTypes.d.ts","sourceRoot":"","sources":["../src/WebRtcTransportTypes.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ export declare class Options implements flatbuffers.IUnpackableObject<OptionsT>
13
13
  sctpSendBufferSize(): number;
14
14
  sctpPerStreamSendQueueLimit(): number;
15
15
  sctpMaxReceiverWindowBufferSize(): number;
16
+ sctpDefaultStreamBufferedAmountLowThreshold(): number;
16
17
  isDataChannel(): boolean;
17
18
  static startOptions(builder: flatbuffers.Builder): void;
18
19
  static addDirect(builder: flatbuffers.Builder, direct: boolean): void;
@@ -23,9 +24,10 @@ export declare class Options implements flatbuffers.IUnpackableObject<OptionsT>
23
24
  static addSctpSendBufferSize(builder: flatbuffers.Builder, sctpSendBufferSize: number): void;
24
25
  static addSctpPerStreamSendQueueLimit(builder: flatbuffers.Builder, sctpPerStreamSendQueueLimit: number): void;
25
26
  static addSctpMaxReceiverWindowBufferSize(builder: flatbuffers.Builder, sctpMaxReceiverWindowBufferSize: number): void;
27
+ static addSctpDefaultStreamBufferedAmountLowThreshold(builder: flatbuffers.Builder, sctpDefaultStreamBufferedAmountLowThreshold: number): void;
26
28
  static addIsDataChannel(builder: flatbuffers.Builder, isDataChannel: boolean): void;
27
29
  static endOptions(builder: flatbuffers.Builder): flatbuffers.Offset;
28
- static createOptions(builder: flatbuffers.Builder, direct: boolean, initialAvailableOutgoingBitrate: number | null, enableSctp: boolean, maxSendMessageSize: number, maxReceiveMessageSize: number, sctpSendBufferSize: number, sctpPerStreamSendQueueLimit: number, sctpMaxReceiverWindowBufferSize: number, isDataChannel: boolean): flatbuffers.Offset;
30
+ static createOptions(builder: flatbuffers.Builder, direct: boolean, initialAvailableOutgoingBitrate: number | null, enableSctp: boolean, maxSendMessageSize: number, maxReceiveMessageSize: number, sctpSendBufferSize: number, sctpPerStreamSendQueueLimit: number, sctpMaxReceiverWindowBufferSize: number, sctpDefaultStreamBufferedAmountLowThreshold: number, isDataChannel: boolean): flatbuffers.Offset;
29
31
  unpack(): OptionsT;
30
32
  unpackTo(_o: OptionsT): void;
31
33
  }
@@ -38,8 +40,9 @@ export declare class OptionsT implements flatbuffers.IGeneratedObject {
38
40
  sctpSendBufferSize: number;
39
41
  sctpPerStreamSendQueueLimit: number;
40
42
  sctpMaxReceiverWindowBufferSize: number;
43
+ sctpDefaultStreamBufferedAmountLowThreshold: number;
41
44
  isDataChannel: boolean;
42
- constructor(direct?: boolean, initialAvailableOutgoingBitrate?: number | null, enableSctp?: boolean, maxSendMessageSize?: number, maxReceiveMessageSize?: number, sctpSendBufferSize?: number, sctpPerStreamSendQueueLimit?: number, sctpMaxReceiverWindowBufferSize?: number, isDataChannel?: boolean);
45
+ constructor(direct?: boolean, initialAvailableOutgoingBitrate?: number | null, enableSctp?: boolean, maxSendMessageSize?: number, maxReceiveMessageSize?: number, sctpSendBufferSize?: number, sctpPerStreamSendQueueLimit?: number, sctpMaxReceiverWindowBufferSize?: number, sctpDefaultStreamBufferedAmountLowThreshold?: number, isDataChannel?: boolean);
43
46
  pack(builder: flatbuffers.Builder): flatbuffers.Offset;
44
47
  }
45
48
  //# sourceMappingURL=options.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../src/fbs/transport/options.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../src/fbs/transport/options.ts"],"names":[],"mappings":"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"}
@@ -84,12 +84,16 @@ class Options {
84
84
  const offset = this.bb.__offset(this.bb_pos, 18);
85
85
  return offset ? this.bb.readUint32(this.bb_pos + offset) : 0;
86
86
  }
87
- isDataChannel() {
87
+ sctpDefaultStreamBufferedAmountLowThreshold() {
88
88
  const offset = this.bb.__offset(this.bb_pos, 20);
89
+ return offset ? this.bb.readUint32(this.bb_pos + offset) : 0;
90
+ }
91
+ isDataChannel() {
92
+ const offset = this.bb.__offset(this.bb_pos, 22);
89
93
  return offset ? !!this.bb.readInt8(this.bb_pos + offset) : false;
90
94
  }
91
95
  static startOptions(builder) {
92
- builder.startObject(9);
96
+ builder.startObject(10);
93
97
  }
94
98
  static addDirect(builder, direct) {
95
99
  builder.addFieldInt8(0, +direct, +false);
@@ -115,14 +119,17 @@ class Options {
115
119
  static addSctpMaxReceiverWindowBufferSize(builder, sctpMaxReceiverWindowBufferSize) {
116
120
  builder.addFieldInt32(7, sctpMaxReceiverWindowBufferSize, 0);
117
121
  }
122
+ static addSctpDefaultStreamBufferedAmountLowThreshold(builder, sctpDefaultStreamBufferedAmountLowThreshold) {
123
+ builder.addFieldInt32(8, sctpDefaultStreamBufferedAmountLowThreshold, 0);
124
+ }
118
125
  static addIsDataChannel(builder, isDataChannel) {
119
- builder.addFieldInt8(8, +isDataChannel, +false);
126
+ builder.addFieldInt8(9, +isDataChannel, +false);
120
127
  }
121
128
  static endOptions(builder) {
122
129
  const offset = builder.endObject();
123
130
  return offset;
124
131
  }
125
- static createOptions(builder, direct, initialAvailableOutgoingBitrate, enableSctp, maxSendMessageSize, maxReceiveMessageSize, sctpSendBufferSize, sctpPerStreamSendQueueLimit, sctpMaxReceiverWindowBufferSize, isDataChannel) {
132
+ static createOptions(builder, direct, initialAvailableOutgoingBitrate, enableSctp, maxSendMessageSize, maxReceiveMessageSize, sctpSendBufferSize, sctpPerStreamSendQueueLimit, sctpMaxReceiverWindowBufferSize, sctpDefaultStreamBufferedAmountLowThreshold, isDataChannel) {
126
133
  Options.startOptions(builder);
127
134
  Options.addDirect(builder, direct);
128
135
  if (initialAvailableOutgoingBitrate !== null)
@@ -133,11 +140,12 @@ class Options {
133
140
  Options.addSctpSendBufferSize(builder, sctpSendBufferSize);
134
141
  Options.addSctpPerStreamSendQueueLimit(builder, sctpPerStreamSendQueueLimit);
135
142
  Options.addSctpMaxReceiverWindowBufferSize(builder, sctpMaxReceiverWindowBufferSize);
143
+ Options.addSctpDefaultStreamBufferedAmountLowThreshold(builder, sctpDefaultStreamBufferedAmountLowThreshold);
136
144
  Options.addIsDataChannel(builder, isDataChannel);
137
145
  return Options.endOptions(builder);
138
146
  }
139
147
  unpack() {
140
- return new OptionsT(this.direct(), this.initialAvailableOutgoingBitrate(), this.enableSctp(), this.maxSendMessageSize(), this.maxReceiveMessageSize(), this.sctpSendBufferSize(), this.sctpPerStreamSendQueueLimit(), this.sctpMaxReceiverWindowBufferSize(), this.isDataChannel());
148
+ return new OptionsT(this.direct(), this.initialAvailableOutgoingBitrate(), this.enableSctp(), this.maxSendMessageSize(), this.maxReceiveMessageSize(), this.sctpSendBufferSize(), this.sctpPerStreamSendQueueLimit(), this.sctpMaxReceiverWindowBufferSize(), this.sctpDefaultStreamBufferedAmountLowThreshold(), this.isDataChannel());
141
149
  }
142
150
  unpackTo(_o) {
143
151
  _o.direct = this.direct();
@@ -148,6 +156,7 @@ class Options {
148
156
  _o.sctpSendBufferSize = this.sctpSendBufferSize();
149
157
  _o.sctpPerStreamSendQueueLimit = this.sctpPerStreamSendQueueLimit();
150
158
  _o.sctpMaxReceiverWindowBufferSize = this.sctpMaxReceiverWindowBufferSize();
159
+ _o.sctpDefaultStreamBufferedAmountLowThreshold = this.sctpDefaultStreamBufferedAmountLowThreshold();
151
160
  _o.isDataChannel = this.isDataChannel();
152
161
  }
153
162
  }
@@ -161,8 +170,9 @@ class OptionsT {
161
170
  sctpSendBufferSize;
162
171
  sctpPerStreamSendQueueLimit;
163
172
  sctpMaxReceiverWindowBufferSize;
173
+ sctpDefaultStreamBufferedAmountLowThreshold;
164
174
  isDataChannel;
165
- constructor(direct = false, initialAvailableOutgoingBitrate = null, enableSctp = false, maxSendMessageSize = 0, maxReceiveMessageSize = 0, sctpSendBufferSize = 0, sctpPerStreamSendQueueLimit = 0, sctpMaxReceiverWindowBufferSize = 0, isDataChannel = false) {
175
+ constructor(direct = false, initialAvailableOutgoingBitrate = null, enableSctp = false, maxSendMessageSize = 0, maxReceiveMessageSize = 0, sctpSendBufferSize = 0, sctpPerStreamSendQueueLimit = 0, sctpMaxReceiverWindowBufferSize = 0, sctpDefaultStreamBufferedAmountLowThreshold = 0, isDataChannel = false) {
166
176
  this.direct = direct;
167
177
  this.initialAvailableOutgoingBitrate = initialAvailableOutgoingBitrate;
168
178
  this.enableSctp = enableSctp;
@@ -171,10 +181,11 @@ class OptionsT {
171
181
  this.sctpSendBufferSize = sctpSendBufferSize;
172
182
  this.sctpPerStreamSendQueueLimit = sctpPerStreamSendQueueLimit;
173
183
  this.sctpMaxReceiverWindowBufferSize = sctpMaxReceiverWindowBufferSize;
184
+ this.sctpDefaultStreamBufferedAmountLowThreshold = sctpDefaultStreamBufferedAmountLowThreshold;
174
185
  this.isDataChannel = isDataChannel;
175
186
  }
176
187
  pack(builder) {
177
- return Options.createOptions(builder, this.direct, this.initialAvailableOutgoingBitrate, this.enableSctp, this.maxSendMessageSize, this.maxReceiveMessageSize, this.sctpSendBufferSize, this.sctpPerStreamSendQueueLimit, this.sctpMaxReceiverWindowBufferSize, this.isDataChannel);
188
+ return Options.createOptions(builder, this.direct, this.initialAvailableOutgoingBitrate, this.enableSctp, this.maxSendMessageSize, this.maxReceiveMessageSize, this.sctpSendBufferSize, this.sctpPerStreamSendQueueLimit, this.sctpMaxReceiverWindowBufferSize, this.sctpDefaultStreamBufferedAmountLowThreshold, this.isDataChannel);
178
189
  }
179
190
  }
180
191
  exports.OptionsT = OptionsT;
@@ -137,6 +137,9 @@ test('dataConsumer.dump() succeeds', async () => {
137
137
  expect(dump.paused).toBe(false);
138
138
  expect(dump.dataProducerPaused).toBe(false);
139
139
  expect(dump.subchannels).toEqual(expect.arrayContaining([0, 1, 2, 100, 65535]));
140
+ expect(dump.bufferedAmount).toBe(0);
141
+ // Default per stream buffered amount threshold is 1024.
142
+ expect(dump.bufferedAmountLowThreshold).toBe(1024);
140
143
  }, 2000);
141
144
  test('dataConsumer.getStats() succeeds', async () => {
142
145
  const dataConsumer = await ctx.webRtcTransport2.consumeData({
@@ -901,7 +901,7 @@ test('router.pipeToRouter() succeeds with data', async () => {
901
901
  expect(pipeDataProducer.label).toBe('foo');
902
902
  expect(pipeDataProducer.protocol).toBe('bar');
903
903
  }, 2000);
904
- test('transport.dataConsume() for a pipe DataProducer succeeds', async () => {
904
+ test('transport.consumeData() for a pipe DataProducer succeeds', async () => {
905
905
  const { pipeDataProducer } = await ctx.router1.pipeToRouter({
906
906
  dataProducerId: ctx.dataProducer.id,
907
907
  router: ctx.router2,
@@ -920,6 +920,38 @@ test('transport.dataConsume() for a pipe DataProducer succeeds', async () => {
920
920
  expect(dataConsumer.label).toBe('foo');
921
921
  expect(dataConsumer.protocol).toBe('bar');
922
922
  }, 2000);
923
+ test('transport.consumeData() for a pipe DataProducer succeeds with subchannels', async () => {
924
+ const directTransport1 = await ctx.router1.createDirectTransport();
925
+ const directDataProducer = await directTransport1.produceData({
926
+ label: 'foo',
927
+ protocol: 'bar',
928
+ });
929
+ await ctx.router1.pipeToRouter({
930
+ dataProducerId: directDataProducer.id,
931
+ router: ctx.router2,
932
+ });
933
+ const directTransport2 = await ctx.router2.createDirectTransport();
934
+ const directDataConsumer = await directTransport2.consumeData({
935
+ dataProducerId: directDataProducer.id,
936
+ subchannels: [123, 666],
937
+ });
938
+ await new Promise((resolve, reject) => {
939
+ directDataConsumer.on('message', (message, ppid) => {
940
+ try {
941
+ expect(message.toString('utf8')).toBe('hello');
942
+ expect(ppid).toBe(51);
943
+ resolve();
944
+ }
945
+ catch (error) {
946
+ reject(error);
947
+ }
948
+ });
949
+ directDataProducer.send('hello',
950
+ /* ppid */ undefined,
951
+ /* subchannels */ [123, 124],
952
+ /* requiredSubchannel */ 666);
953
+ });
954
+ }, 2000);
923
955
  test('dataProducer.close() is transmitted to pipe DataConsumer', async () => {
924
956
  const { pipeDataProducer } = await ctx.router1.pipeToRouter({
925
957
  dataProducerId: ctx.dataProducer.id,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mediasoup",
3
- "version": "3.21.2",
3
+ "version": "3.23.0",
4
4
  "description": "Cutting Edge WebRTC Video Conferencing",
5
5
  "contributors": [
6
6
  "Iñaki Baz Castillo <ibc@aliax.net> (https://inakibaz.me)",
@@ -113,8 +113,8 @@
113
113
  "flatbuffers": "^25.9.23",
114
114
  "h264-profile-level-id": "^2.3.3",
115
115
  "node-fetch": "^3.3.2",
116
- "supports-color": "^10.2.2",
117
- "tar": "^7.5.20"
116
+ "supports-color": "^11.0.0",
117
+ "tar": "^7.5.22"
118
118
  },
119
119
  "devDependencies": {
120
120
  "@eslint/js": "^10.0.1",
@@ -122,21 +122,21 @@
122
122
  "@types/ini": "^4.1.1",
123
123
  "@types/jest": "^30.0.0",
124
124
  "@types/node": "^26.1.1",
125
- "eslint": "^10.7.0",
125
+ "eslint": "^10.8.0",
126
126
  "eslint-config-prettier": "^10.1.8",
127
- "eslint-plugin-jest": "^29.15.4",
127
+ "eslint-plugin-jest": "^29.16.0",
128
128
  "eslint-plugin-prettier": "^5.5.6",
129
- "globals": "^17.7.0",
129
+ "globals": "^17.8.0",
130
130
  "ini": "^7.0.0",
131
131
  "jest": "^30.4.2",
132
- "knip": "^6.27.0",
133
- "marked": "^18.0.6",
132
+ "knip": "^6.29.0",
133
+ "marked": "^18.0.7",
134
134
  "open-cli": "^9.0.0",
135
135
  "pick-port": "^2.2.1",
136
- "prettier": "^3.9.5",
137
- "ts-jest": "^29.4.11",
136
+ "prettier": "^3.9.6",
137
+ "ts-jest": "^29.4.12",
138
138
  "typescript": "^6.0.3",
139
- "typescript-eslint": "^8.64.0",
139
+ "typescript-eslint": "^8.65.0",
140
140
  "werift-sctp": "^0.0.11"
141
141
  }
142
142
  }