mediasoup 3.22.0 → 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 (37) hide show
  1. package/CHANGELOG.md +9 -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 +4 -4
  7. package/node/lib/Router.d.ts.map +1 -1
  8. package/node/lib/Router.js +10 -7
  9. package/node/lib/RouterTypes.d.ts +8 -0
  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/package.json +11 -11
  18. package/worker/fbs/transport.fbs +1 -0
  19. package/worker/fuzzer/src/RTC/RTP/FuzzerPacket.cpp +44 -0
  20. package/worker/include/RTC/SCTP/public/SctpOptions.hpp +7 -0
  21. package/worker/include/RTC/SCTP/tx/RoundRobinSendQueue.hpp +2 -0
  22. package/worker/include/RTC/Transport.hpp +0 -5
  23. package/worker/scripts/package-lock.json +7 -7
  24. package/worker/src/RTC/ICE/StunPacket.cpp +6 -2
  25. package/worker/src/RTC/RTP/Packet.cpp +11 -0
  26. package/worker/src/RTC/SCTP/association/Association.cpp +1 -0
  27. package/worker/src/RTC/SCTP/association/StateCookie.cpp +5 -2
  28. package/worker/src/RTC/SCTP/packet/errorCauses/MissingMandatoryParameterErrorCause.cpp +4 -1
  29. package/worker/src/RTC/SCTP/tx/RoundRobinSendQueue.cpp +10 -2
  30. package/worker/src/RTC/SrtpSession.cpp +82 -25
  31. package/worker/src/RTC/Transport.cpp +7 -15
  32. package/worker/subprojects/libsrtp3.wrap +4 -4
  33. package/worker/tasks.py +1 -1
  34. package/worker/test/src/RTC/SCTP/association/TestAssociation.cpp +34 -0
  35. package/worker/test/src/RTC/SCTP/association/TestStreamResetHandler.cpp +1 -0
  36. package/worker/test/src/RTC/SCTP/packet/errorCauses/TestMissingMandatoryParameterErrorCause.cpp +24 -0
  37. package/worker/test/src/RTC/SCTP/tx/TestRoundRobinSendQueue.cpp +180 -39
package/CHANGELOG.md CHANGED
@@ -2,6 +2,15 @@
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
+
5
14
  ### 3.22.0
6
15
 
7
16
  - SCTP: Encode subchannels in SCTP messages to enable subchannels mechanism when using pipe transport ([PR #1859](https://github.com/versatica/mediasoup/pull/1859)).
@@ -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":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,KAAK,EACX,SAAS,EACT,mBAAmB,EACnB,iBAAiB,EACjB,cAAc,EACd,SAAS,EACT,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,uBAAuB,EACvB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EACX,cAAc,EACd,0BAA0B,EAC1B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAE/C,MAAM,MAAM,oBAAoB,CAC/B,oBAAoB,SAAS,OAAO,GAAG,OAAO,IAC3C;IACH;;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;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;OAEG;IACH,OAAO,CAAC,EAAE,oBAAoB,CAAC;CAC/B,GAAG,mBAAmB,CAAC;AAExB,KAAK,mBAAmB,GAAG,MAAM,CAChC,uBAAuB,EACvB,qBAAqB,CACrB,CAAC;AAEF,KAAK,uBAAuB,GAAG;IAC9B;;OAEG;IACH,UAAU,EAAE,mBAAmB,CAAC;CAChC,CAAC;AAEF,KAAK,qBAAqB,GAAG;IAC5B;;OAEG;IACH,QAAQ,EAAE,iBAAiB,GAAG,MAAM,CAAC;IAErC;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,mBAAmB,CAAC,eAAe,SAAS,OAAO,GAAG,OAAO,IAAI;IAC5E;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,OAAO,CAAC,EAAE,eAAe,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,iBAAiB,GAAG;IACnD,KAAK,EAAE,cAAc,CAAC;IACtB,GAAG,EAAE,OAAO,CAAC;IACb,cAAc,CAAC,EAAE,cAAc,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,kBAAkB,GAAG;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,cAAc,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,eAAe,GAAG;IACnD,eAAe,EAAE,CAAC,SAAS,CAAC,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAChC,oBAAoB,CAAC,2BAA2B,CAAC,CAAC;AAEnD,MAAM,MAAM,2BAA2B,GAAG,uBAAuB,GAAG;IACnE,eAAe,EAAE,CAAC,SAAS,CAAC,CAAC;CAC7B,CAAC;AAEF,MAAM,WAAW,aAAa,CAC7B,oBAAoB,SAAS,OAAO,GAAG,OAAO,CAC7C,SAAQ,SAAS,CAClB,oBAAoB,EACpB,mBAAmB,EACnB,qBAAqB,CACrB;IACA;;;;OAIG;IACH,IAAI,IAAI,IAAI,MAAM,CAAC;IAEnB;;;;OAIG;IACH,IAAI,QAAQ,IAAI,qBAAqB,CAAC;IAEtC;;OAEG;IACH,IAAI,KAAK,IAAI,cAAc,CAAC;IAE5B;;OAEG;IACH,IAAI,cAAc,IAAI,cAAc,GAAG,SAAS,CAAC;IAEjD;;OAEG;IACH,IAAI,SAAS,IAAI,SAAS,GAAG,SAAS,CAAC;IAEvC;;;;;OAKG;IACH,IAAI,0BAA0B,IAAI,0BAA0B,GAAG,SAAS,CAAC;IAEzE;;OAEG;IACH,IAAI,cAAc,IAAI,cAAc,GAAG,SAAS,CAAC;IAEjD;;;;OAIG;IACH,IAAI,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAEnC;;;;OAIG;IACH,QAAQ,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAEzC;;;;OAIG;IACH,OAAO,CAAC,EACP,EAAE,EACF,IAAI,EACJ,cAAc,GACd,EAAE;QACF,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,cAAc,CAAC,EAAE,cAAc,CAAC;KAChC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAElB;;;;OAIG;IACH,OAAO,CAAC,eAAe,SAAS,OAAO,GAAG,OAAO,EAAE,EAClD,UAAU,EACV,OAAO,GACP,EAAE,mBAAmB,CAAC,eAAe,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC;CAC7E"}
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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"}
@@ -39,11 +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>;
46
+ pipeToRouter({ producerId, dataProducerId, router, keepId, listenInfo, listenIp, enableSctp, maxSendMessageSize, maxReceiveMessageSize, sctpSendBufferSize, sctpPerStreamSendQueueLimit, sctpMaxReceiverWindowBufferSize, sctpDefaultStreamBufferedAmountLowThreshold, enableRtx, enableSrtp, }: PipeToRouterOptions): Promise<PipeToRouterResult>;
47
47
  createActiveSpeakerObserver<ActiveSpeakerObserverAppData extends AppData = AppData>({ interval, appData, }?: ActiveSpeakerObserverOptions<ActiveSpeakerObserverAppData>): Promise<ActiveSpeakerObserver<ActiveSpeakerObserverAppData>>;
48
48
  createAudioLevelObserver<AudioLevelObserverAppData extends AppData = AppData>({ maxEntries, threshold, interval, appData, }?: AudioLevelObserverOptions<AudioLevelObserverAppData>): Promise<AudioLevelObserver<AudioLevelObserverAppData>>;
49
49
  canConsume({ producerId, rtpCapabilities, }: {
@@ -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
  }),
@@ -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
  */
@@ -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":"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"}
@@ -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({
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mediasoup",
3
- "version": "3.22.0",
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
  }
@@ -130,6 +130,7 @@ table Options {
130
130
  sctp_send_buffer_size: uint32;
131
131
  sctp_per_stream_send_queue_limit: uint32;
132
132
  sctp_max_receiver_window_buffer_size: uint32;
133
+ sctp_default_stream_buffered_amount_low_threshold: uint32;
133
134
  is_data_channel: bool = false;
134
135
  }
135
136
 
@@ -254,4 +254,48 @@ void FuzzerRtcRtcPacket::Fuzz(const uint8_t* data, size_t len)
254
254
  packet->RemoveHeaderExtension();
255
255
  packet->SetPayloadLength(sizeof(payload) - 2);
256
256
  packet->RemovePayload();
257
+
258
+ // Regression test for GHSA-jhm4-v227-4375 (CWE-787 OOB write in
259
+ // UpdateDependencyDescriptor()). Build a fresh packet with a tightly-sized
260
+ // DEPENDENCY_DESCRIPTOR value and attempt to update it with the raw fuzzer
261
+ // input as the new descriptor bytes. When the new length exceeds the original
262
+ // the fixed code must return false without writing out of bounds; when it
263
+ // fits it must succeed. AddressSanitizer will catch any regression here.
264
+ {
265
+ constexpr size_t BufferLenght{ 512 };
266
+ static thread_local uint8_t buffer[BufferLenght];
267
+
268
+ std::unique_ptr<RTC::RTP::Packet> packet{ RTC::RTP::Packet::Factory(buffer, BufferLenght) };
269
+
270
+ if (!packet)
271
+ {
272
+ return;
273
+ }
274
+
275
+ // Use the first byte of the fuzzer input to pick the slot size
276
+ // (1..15 is the valid One-Byte extension range).
277
+ const uint8_t extenLen = (data[0] % 15u) + 1u;
278
+
279
+ static thread_local uint8_t extenValue[15];
280
+
281
+ // clang-format off
282
+ const std::vector<RTC::RTP::Packet::Extension> extensions {
283
+ {
284
+ RTC::RtpHeaderExtensionUri::Type::DEPENDENCY_DESCRIPTOR,
285
+ static_cast<uint8_t>(RTC::RtpHeaderExtensionUri::Type::DEPENDENCY_DESCRIPTOR),
286
+ extenLen,
287
+ extenValue
288
+ }
289
+ };
290
+ // clang-format off
291
+
292
+ packet->SetExtensions(RTC::RTP::Packet::ExtensionsType::OneByte, extensions);
293
+
294
+ // Call UpdateDependencyDescriptor() with the full fuzzer input as
295
+ // the replacement bytes. This covers:
296
+ // len > slotLen → no OOB write (was the bug).
297
+ // len <= slotLen → in-place update.
298
+ // len == 0 → must not crash.
299
+ packet->UpdateDependencyDescriptor(data, len);
300
+ }
257
301
  }
@@ -83,6 +83,13 @@ namespace RTC
83
83
  */
84
84
  size_t maxReceiverWindowBufferSize{ 5 * 1024 * 1024 };
85
85
 
86
+ /**
87
+ * The default threshold that, when the amount of data in a stream send
88
+ * buffer goes below this value, will trigger
89
+ * `Association::OnAssociationStreamBufferedAmountLow()`.
90
+ */
91
+ size_t defaultStreamBufferedAmountLowThreshold{ 0 };
92
+
86
93
  /**
87
94
  * A threshold that, when the amount of data in the send buffer goes below
88
95
  * this value, will trigger `Association::OnAssociationTotalBufferedAmountLow()`.
@@ -275,6 +275,7 @@ namespace RTC
275
275
  AssociationListenerInterface& associationListener,
276
276
  size_t mtu,
277
277
  uint16_t defaultPriority,
278
+ size_t defaultStreamBufferedAmountLowThreshold,
278
279
  size_t totalBufferedAmountLowThreshold);
279
280
 
280
281
  ~RoundRobinSendQueue() override;
@@ -343,6 +344,7 @@ namespace RTC
343
344
  private:
344
345
  AssociationListenerInterface& associationListener;
345
346
  const uint16_t defaultPriority;
347
+ const size_t defaultStreamBufferedAmountLowThreshold;
346
348
  StreamScheduler scheduler;
347
349
  // The total amount of buffer data, for all streams.
348
350
  ThresholdWatcher totalBufferedAmountThresholdWatcher;
@@ -394,11 +394,6 @@ namespace RTC
394
394
  // For SCTP capable transports and for direct transport.
395
395
  size_t maxSendMessageSize{ 0u };
396
396
  size_t maxReceiveMessageSize{ 0u };
397
- // For SCTP capable transports.
398
- size_t sctpSendBufferSize{ 0u };
399
- size_t sctpPerStreamSendQueueLimit{ 0u };
400
- size_t sctpMaxReceiverWindowBufferSize{ 0u };
401
-
402
397
  struct TraceEventTypes traceEventTypes;
403
398
  };
404
399
  } // namespace RTC