mediasoup 3.26.0 → 3.27.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 (310) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/node/lib/DataConsumer.js +1 -1
  3. package/node/lib/Router.js +1 -1
  4. package/node/lib/Transport.js +15 -15
  5. package/node/lib/fbs/rtp-parameters/encoding-mapping.d.ts +2 -6
  6. package/node/lib/fbs/rtp-parameters/encoding-mapping.d.ts.map +1 -1
  7. package/node/lib/fbs/rtp-parameters/encoding-mapping.js +7 -19
  8. package/node/lib/fbs/rtp-parameters/rtp-encoding-parameters.d.ts +4 -4
  9. package/node/lib/fbs/rtp-parameters/rtp-encoding-parameters.js +2 -2
  10. package/node/lib/fbs/rtp-stream/bitrate-by-layer.d.ts +5 -5
  11. package/node/lib/fbs/rtp-stream/bitrate-by-layer.d.ts.map +1 -1
  12. package/node/lib/fbs/rtp-stream/bitrate-by-layer.js +3 -3
  13. package/node/lib/fbs/rtp-stream/recv-stats.d.ts +5 -5
  14. package/node/lib/fbs/rtp-stream/recv-stats.d.ts.map +1 -1
  15. package/node/lib/fbs/rtp-stream/recv-stats.js +3 -3
  16. package/node/lib/fbs/rtp-stream/send-stats.d.ts +5 -5
  17. package/node/lib/fbs/rtp-stream/send-stats.d.ts.map +1 -1
  18. package/node/lib/fbs/rtp-stream/send-stats.js +3 -3
  19. package/node/lib/fbs/transport/bwe-trace-info.d.ts +23 -23
  20. package/node/lib/fbs/transport/bwe-trace-info.d.ts.map +1 -1
  21. package/node/lib/fbs/transport/bwe-trace-info.js +15 -15
  22. package/node/lib/fbs/transport/options.d.ts +5 -5
  23. package/node/lib/fbs/transport/options.js +2 -2
  24. package/node/lib/fbs/transport/set-max-incoming-bitrate-request.d.ts +5 -5
  25. package/node/lib/fbs/transport/set-max-incoming-bitrate-request.d.ts.map +1 -1
  26. package/node/lib/fbs/transport/set-max-incoming-bitrate-request.js +3 -3
  27. package/node/lib/fbs/transport/set-max-outgoing-bitrate-request.d.ts +5 -5
  28. package/node/lib/fbs/transport/set-max-outgoing-bitrate-request.d.ts.map +1 -1
  29. package/node/lib/fbs/transport/set-max-outgoing-bitrate-request.js +3 -3
  30. package/node/lib/fbs/transport/set-min-outgoing-bitrate-request.d.ts +5 -5
  31. package/node/lib/fbs/transport/set-min-outgoing-bitrate-request.d.ts.map +1 -1
  32. package/node/lib/fbs/transport/set-min-outgoing-bitrate-request.js +3 -3
  33. package/node/lib/fbs/transport/stats.d.ts +38 -38
  34. package/node/lib/fbs/transport/stats.d.ts.map +1 -1
  35. package/node/lib/fbs/transport/stats.js +25 -25
  36. package/node/lib/ortc.d.ts +0 -1
  37. package/node/lib/ortc.d.ts.map +1 -1
  38. package/node/lib/ortc.js +1 -2
  39. package/node/lib/rtpParametersFbsUtils.d.ts.map +1 -1
  40. package/node/lib/rtpParametersFbsUtils.js +2 -2
  41. package/package.json +9 -9
  42. package/worker/deps/libwebrtc/libwebrtc/call/rtp_transport_controller_send.cc +10 -10
  43. package/worker/deps/libwebrtc/libwebrtc/mediasoup_helpers.h +6 -6
  44. package/worker/deps/libwebrtc/libwebrtc/modules/congestion_controller/goog_cc/alr_detector.cc +1 -1
  45. package/worker/deps/libwebrtc/libwebrtc/modules/pacing/paced_sender.cc +7 -7
  46. package/worker/deps/libwebrtc/libwebrtc/modules/remote_bitrate_estimator/include/remote_bitrate_estimator.h +1 -1
  47. package/worker/deps/libwebrtc/libwebrtc/modules/remote_bitrate_estimator/remote_bitrate_estimator_abs_send_time.cc +1 -1
  48. package/worker/fbs/rtpParameters.fbs +1 -2
  49. package/worker/fbs/rtpStream.fbs +3 -3
  50. package/worker/fbs/transport.fbs +23 -23
  51. package/worker/fuzzer/include/RTC/FuzzerDtlsTransport.hpp +4 -1
  52. package/worker/fuzzer/src/FuzzerUtils.cpp +5 -3
  53. package/worker/fuzzer/src/RTC/FuzzerDtlsTransport.cpp +8 -5
  54. package/worker/fuzzer/src/RTC/FuzzerRateCalculator.cpp +3 -3
  55. package/worker/fuzzer/src/RTC/FuzzerTrendCalculator.cpp +6 -6
  56. package/worker/fuzzer/src/RTC/RTCP/FuzzerFeedbackRtpTransport.cpp +3 -3
  57. package/worker/fuzzer/src/RTC/RTP/FuzzerPacket.cpp +2 -2
  58. package/worker/fuzzer/src/RTC/RTP/FuzzerRetransmissionBuffer.cpp +5 -5
  59. package/worker/fuzzer/src/RTC/RTP/FuzzerRtpStreamSend.cpp +3 -3
  60. package/worker/fuzzer/src/fuzzer.cpp +4 -0
  61. package/worker/include/Channel/ChannelNotification.hpp +3 -3
  62. package/worker/include/Channel/ChannelRequest.hpp +1 -1
  63. package/worker/include/Channel/ChannelSocket.hpp +11 -0
  64. package/worker/include/DepLibUV.hpp +16 -33
  65. package/worker/include/RTC/ActiveSpeakerObserver.hpp +11 -11
  66. package/worker/include/RTC/AudioLevelObserver.hpp +4 -4
  67. package/worker/include/RTC/BWE/AcknowledgedBitrateEstimatorInterface.hpp +55 -0
  68. package/worker/include/RTC/BWE/AimdRateControl.hpp +190 -0
  69. package/worker/include/RTC/BWE/BweTypes.hpp +211 -0
  70. package/worker/include/RTC/BWE/DelayBasedBwe.hpp +173 -0
  71. package/worker/include/RTC/BWE/FeedbackAdapter.hpp +72 -0
  72. package/worker/include/RTC/BWE/InterArrivalDelta.hpp +106 -0
  73. package/worker/include/RTC/BWE/LinkCapacityEstimator.hpp +84 -0
  74. package/worker/include/RTC/BWE/RobustThroughputEstimator.hpp +94 -0
  75. package/worker/include/RTC/BWE/SendPacketHistory.hpp +137 -0
  76. package/worker/include/RTC/BWE/TrendlineEstimator.hpp +101 -0
  77. package/worker/include/RTC/Consts.hpp +6 -6
  78. package/worker/include/RTC/Consumer.hpp +14 -12
  79. package/worker/include/RTC/DataConsumer.hpp +3 -3
  80. package/worker/include/RTC/DataProducer.hpp +3 -3
  81. package/worker/include/RTC/DtlsTransport.hpp +5 -2
  82. package/worker/include/RTC/ICE/IceCandidate.hpp +2 -2
  83. package/worker/include/RTC/ICE/IceServer.hpp +3 -3
  84. package/worker/include/RTC/KeyFrameRequestManager.hpp +3 -3
  85. package/worker/include/RTC/NEW_RTCP/packet/Packet.hpp +1 -1
  86. package/worker/include/RTC/NackGenerator.hpp +12 -12
  87. package/worker/include/RTC/PipeProducerStreamManager.hpp +3 -4
  88. package/worker/include/RTC/PipeTransport.hpp +18 -5
  89. package/worker/include/RTC/PlainTransport.hpp +18 -5
  90. package/worker/include/RTC/PortManager.hpp +4 -4
  91. package/worker/include/RTC/Producer.hpp +21 -12
  92. package/worker/include/RTC/ProducerStreamManager.hpp +12 -6
  93. package/worker/include/RTC/RTCP/Bye.hpp +2 -2
  94. package/worker/include/RTC/RTCP/FeedbackPsRemb.hpp +4 -4
  95. package/worker/include/RTC/RTCP/FeedbackRtpTmmb.hpp +3 -3
  96. package/worker/include/RTC/RTCP/FeedbackRtpTransport.hpp +54 -39
  97. package/worker/include/RTC/RTCP/Packet.hpp +3 -3
  98. package/worker/include/RTC/RTCP/ReceiverReport.hpp +3 -3
  99. package/worker/include/RTC/RTCP/Sdes.hpp +2 -2
  100. package/worker/include/RTC/RTCP/XR.hpp +2 -2
  101. package/worker/include/RTC/RTCP/XrDelaySinceLastRr.hpp +1 -1
  102. package/worker/include/RTC/RTP/Codecs/H264.hpp +1 -1
  103. package/worker/include/RTC/RTP/Codecs/Opus.hpp +2 -2
  104. package/worker/include/RTC/RTP/Codecs/PayloadDescriptorHandler.hpp +3 -3
  105. package/worker/include/RTC/RTP/Codecs/VP8.hpp +2 -2
  106. package/worker/include/RTC/RTP/Codecs/VP9.hpp +2 -2
  107. package/worker/include/RTC/RTP/HeaderExtensionIds.hpp +12 -12
  108. package/worker/include/RTC/RTP/Packet.hpp +13 -13
  109. package/worker/include/RTC/RTP/ProbationGenerator.hpp +1 -1
  110. package/worker/include/RTC/RTP/RetransmissionBuffer.hpp +7 -7
  111. package/worker/include/RTC/RTP/RtpStream.hpp +37 -51
  112. package/worker/include/RTC/RTP/RtpStreamRecv.hpp +59 -41
  113. package/worker/include/RTC/RTP/RtpStreamSend.hpp +20 -14
  114. package/worker/include/RTC/RTP/RtxStream.hpp +12 -13
  115. package/worker/include/RTC/RateCalculator.hpp +50 -44
  116. package/worker/include/RTC/RemoteCaptureTimeEstimator.hpp +5 -4
  117. package/worker/include/RTC/RemoteClockOffsetEstimator.hpp +11 -11
  118. package/worker/include/RTC/Router.hpp +6 -0
  119. package/worker/include/RTC/RtcLogger.hpp +1 -1
  120. package/worker/include/RTC/RtpDictionaries.hpp +10 -10
  121. package/worker/include/RTC/SCTP/association/Association.hpp +56 -28
  122. package/worker/include/RTC/SCTP/association/HeartbeatHandler.hpp +4 -4
  123. package/worker/include/RTC/SCTP/association/StateCookie.hpp +14 -14
  124. package/worker/include/RTC/SCTP/association/StreamResetHandler.hpp +2 -2
  125. package/worker/include/RTC/SCTP/association/TransmissionControlBlock.hpp +12 -12
  126. package/worker/include/RTC/SCTP/association/TransmissionControlBlockContextInterface.hpp +4 -4
  127. package/worker/include/RTC/SCTP/packet/TLV.hpp +1 -1
  128. package/worker/include/RTC/SCTP/packet/parameters/StateCookieParameter.hpp +3 -3
  129. package/worker/include/RTC/SCTP/public/AssociationInterface.hpp +4 -1
  130. package/worker/include/RTC/SCTP/public/AssociationMetrics.hpp +1 -1
  131. package/worker/include/RTC/SCTP/public/SctpOptions.hpp +12 -12
  132. package/worker/include/RTC/SCTP/public/SctpTypes.hpp +1 -1
  133. package/worker/include/RTC/SCTP/tx/OutstandingData.hpp +15 -16
  134. package/worker/include/RTC/SCTP/tx/RetransmissionQueue.hpp +7 -8
  135. package/worker/include/RTC/SCTP/tx/RetransmissionTimeout.hpp +20 -16
  136. package/worker/include/RTC/SCTP/tx/RoundRobinSendQueue.hpp +5 -6
  137. package/worker/include/RTC/SCTP/tx/SendQueueInterface.hpp +2 -2
  138. package/worker/include/RTC/SCTP/tx/StreamScheduler.hpp +5 -5
  139. package/worker/include/RTC/SctpDictionaries.hpp +3 -3
  140. package/worker/include/RTC/Serializable.hpp +1 -1
  141. package/worker/include/RTC/SimpleProducerStreamManager.hpp +3 -4
  142. package/worker/include/RTC/SimulcastProducerStreamManager.hpp +6 -7
  143. package/worker/include/RTC/SvcProducerStreamManager.hpp +6 -5
  144. package/worker/include/RTC/TcpConnection.hpp +9 -3
  145. package/worker/include/RTC/TcpServer.hpp +3 -0
  146. package/worker/include/RTC/Transport.hpp +52 -45
  147. package/worker/include/RTC/TransportCongestionControlClient.hpp +30 -25
  148. package/worker/include/RTC/TransportCongestionControlServer.hpp +17 -17
  149. package/worker/include/RTC/TrendCalculator.hpp +5 -5
  150. package/worker/include/RTC/UdpSocket.hpp +11 -2
  151. package/worker/include/RTC/WebRtcServer.hpp +20 -5
  152. package/worker/include/RTC/WebRtcTransport.hpp +35 -10
  153. package/worker/include/Settings.hpp +4 -2
  154. package/worker/include/Shared.hpp +5 -20
  155. package/worker/include/SharedInterface.hpp +6 -28
  156. package/worker/include/Utils.hpp +40 -21
  157. package/worker/include/common.hpp +4 -0
  158. package/worker/include/handles/BackoffTimerHandle.hpp +4 -4
  159. package/worker/include/handles/BackoffTimerHandleInterface.hpp +5 -5
  160. package/worker/include/handles/TcpConnectionHandle.hpp +6 -6
  161. package/worker/include/handles/TcpServerHandle.hpp +1 -1
  162. package/worker/include/handles/TimerHandle.hpp +15 -9
  163. package/worker/include/handles/TimerHandleInterface.hpp +10 -4
  164. package/worker/include/handles/UdpSocketHandle.hpp +3 -3
  165. package/worker/include/handles/UnixStreamSocketHandle.hpp +2 -2
  166. package/worker/meson.build +81 -36
  167. package/worker/meson_options.txt +1 -0
  168. package/worker/mocks/include/MockShared.hpp +24 -23
  169. package/worker/mocks/include/RTC/SCTP/association/MockTransmissionControlBlockContext.hpp +51 -27
  170. package/worker/mocks/include/RTC/SCTP/tx/MockSendQueue.hpp +11 -11
  171. package/worker/mocks/include/handles/MockBackoffTimerHandle.hpp +10 -10
  172. package/worker/mocks/include/handles/MockTimerHandle.hpp +60 -22
  173. package/worker/mocks/src/MockShared.cpp +51 -5
  174. package/worker/mocks/src/handles/MockBackoffTimerHandle.cpp +29 -15
  175. package/worker/mocks/src/handles/MockTimerHandle.cpp +117 -0
  176. package/worker/scripts/clang-scripts.mjs +2 -2
  177. package/worker/src/Channel/ChannelNotification.cpp +5 -6
  178. package/worker/src/Channel/ChannelSocket.cpp +20 -2
  179. package/worker/src/DepLibUV.cpp +4 -5
  180. package/worker/src/RTC/ActiveSpeakerObserver.cpp +59 -47
  181. package/worker/src/RTC/AudioLevelObserver.cpp +7 -7
  182. package/worker/src/RTC/BWE/AimdRateControl.cpp +468 -0
  183. package/worker/src/RTC/BWE/BweTypes.cpp +61 -0
  184. package/worker/src/RTC/BWE/DelayBasedBwe.cpp +275 -0
  185. package/worker/src/RTC/BWE/FeedbackAdapter.cpp +148 -0
  186. package/worker/src/RTC/BWE/InterArrivalDelta.cpp +181 -0
  187. package/worker/src/RTC/BWE/LinkCapacityEstimator.cpp +133 -0
  188. package/worker/src/RTC/BWE/RobustThroughputEstimator.cpp +245 -0
  189. package/worker/src/RTC/BWE/SendPacketHistory.cpp +184 -0
  190. package/worker/src/RTC/BWE/TrendlineEstimator.cpp +233 -0
  191. package/worker/src/RTC/Consumer.cpp +48 -35
  192. package/worker/src/RTC/DataConsumer.cpp +4 -4
  193. package/worker/src/RTC/DataProducer.cpp +3 -3
  194. package/worker/src/RTC/DirectTransport.cpp +2 -2
  195. package/worker/src/RTC/DtlsTransport.cpp +14 -11
  196. package/worker/src/RTC/ICE/IceServer.cpp +2 -2
  197. package/worker/src/RTC/KeyFrameRequestManager.cpp +16 -12
  198. package/worker/src/RTC/NackGenerator.cpp +12 -12
  199. package/worker/src/RTC/PipeProducerStreamManager.cpp +6 -6
  200. package/worker/src/RTC/PipeTransport.cpp +16 -13
  201. package/worker/src/RTC/PlainTransport.cpp +25 -16
  202. package/worker/src/RTC/Producer.cpp +50 -36
  203. package/worker/src/RTC/RTCP/FeedbackPsRemb.cpp +13 -6
  204. package/worker/src/RTC/RTCP/FeedbackRtpTmmb.cpp +14 -5
  205. package/worker/src/RTC/RTCP/FeedbackRtpTransport.cpp +76 -50
  206. package/worker/src/RTC/RTP/Codecs/VP8.cpp +1 -1
  207. package/worker/src/RTC/RTP/Codecs/VP9.cpp +4 -4
  208. package/worker/src/RTC/RTP/Packet.cpp +9 -10
  209. package/worker/src/RTC/RTP/RetransmissionBuffer.cpp +6 -6
  210. package/worker/src/RTC/RTP/RtpStream.cpp +19 -19
  211. package/worker/src/RTC/RTP/RtpStreamRecv.cpp +146 -81
  212. package/worker/src/RTC/RTP/RtpStreamSend.cpp +49 -44
  213. package/worker/src/RTC/RTP/RtxStream.cpp +7 -10
  214. package/worker/src/RTC/RateCalculator.cpp +99 -136
  215. package/worker/src/RTC/RemoteCaptureTimeEstimator.cpp +13 -13
  216. package/worker/src/RTC/RemoteClockOffsetEstimator.cpp +18 -17
  217. package/worker/src/RTC/Router.cpp +18 -1
  218. package/worker/src/RTC/RtpDictionaries/RtpEncodingParameters.cpp +5 -2
  219. package/worker/src/RTC/SCTP/association/Association.cpp +131 -102
  220. package/worker/src/RTC/SCTP/association/AssociationListenerDeferrer.cpp +4 -4
  221. package/worker/src/RTC/SCTP/association/Capabilities.cpp +1 -1
  222. package/worker/src/RTC/SCTP/association/HeartbeatHandler.cpp +25 -18
  223. package/worker/src/RTC/SCTP/association/StateCookie.cpp +7 -6
  224. package/worker/src/RTC/SCTP/association/StreamResetHandler.cpp +16 -13
  225. package/worker/src/RTC/SCTP/association/TransmissionControlBlock.cpp +28 -26
  226. package/worker/src/RTC/SCTP/packet/chunks/SackChunk.cpp +0 -1
  227. package/worker/src/RTC/SCTP/packet/parameters/StateCookieParameter.cpp +2 -2
  228. package/worker/src/RTC/SCTP/public/AssociationMetrics.cpp +1 -1
  229. package/worker/src/RTC/SCTP/public/SctpOptions.cpp +13 -13
  230. package/worker/src/RTC/SCTP/rx/DataTracker.cpp +1 -1
  231. package/worker/src/RTC/SCTP/rx/ReassemblyQueue.cpp +5 -5
  232. package/worker/src/RTC/SCTP/tx/OutstandingData.cpp +15 -15
  233. package/worker/src/RTC/SCTP/tx/RetransmissionQueue.cpp +15 -15
  234. package/worker/src/RTC/SCTP/tx/RetransmissionTimeout.cpp +29 -26
  235. package/worker/src/RTC/SCTP/tx/RoundRobinSendQueue.cpp +12 -11
  236. package/worker/src/RTC/SCTP/tx/StreamScheduler.cpp +4 -4
  237. package/worker/src/RTC/SctpDictionaries/SctpStreamParameters.cpp +2 -2
  238. package/worker/src/RTC/SimpleProducerStreamManager.cpp +10 -10
  239. package/worker/src/RTC/SimulcastProducerStreamManager.cpp +39 -37
  240. package/worker/src/RTC/SvcProducerStreamManager.cpp +39 -25
  241. package/worker/src/RTC/TcpConnection.cpp +9 -3
  242. package/worker/src/RTC/TcpServer.cpp +7 -2
  243. package/worker/src/RTC/Transport.cpp +242 -302
  244. package/worker/src/RTC/TransportCongestionControlClient.cpp +78 -71
  245. package/worker/src/RTC/TransportCongestionControlServer.cpp +38 -40
  246. package/worker/src/RTC/TrendCalculator.cpp +3 -3
  247. package/worker/src/RTC/UdpSocket.cpp +14 -3
  248. package/worker/src/RTC/WebRtcServer.cpp +20 -14
  249. package/worker/src/RTC/WebRtcTransport.cpp +35 -30
  250. package/worker/src/Settings.cpp +10 -0
  251. package/worker/src/Shared.cpp +2 -2
  252. package/worker/src/Utils/Crypto.cpp +2 -2
  253. package/worker/src/Worker.cpp +5 -1
  254. package/worker/src/handles/BackoffTimerHandle.cpp +24 -11
  255. package/worker/src/handles/TimerHandle.cpp +74 -25
  256. package/worker/src/lib.cpp +6 -0
  257. package/worker/tasks.py +171 -44
  258. package/worker/test/include/RTC/BWE/helpers/LinkSimulator.hpp +117 -0
  259. package/worker/test/src/RTC/BWE/TestAimdRateControl.cpp +400 -0
  260. package/worker/test/src/RTC/BWE/TestDelayBasedBwe.cpp +568 -0
  261. package/worker/test/src/RTC/BWE/TestFeedbackAdapter.cpp +546 -0
  262. package/worker/test/src/RTC/BWE/TestInterArrivalDelta.cpp +301 -0
  263. package/worker/test/src/RTC/BWE/TestLinkCapacityEstimator.cpp +115 -0
  264. package/worker/test/src/RTC/BWE/TestRobustThroughputEstimator.cpp +433 -0
  265. package/worker/test/src/RTC/BWE/TestSendPacketHistory.cpp +259 -0
  266. package/worker/test/src/RTC/BWE/TestTrendlineEstimator.cpp +137 -0
  267. package/worker/test/src/RTC/BWE/helpers/LinkSimulator.cpp +171 -0
  268. package/worker/test/src/RTC/RTCP/TestFeedbackPsRemb.cpp +1 -1
  269. package/worker/test/src/RTC/RTCP/TestFeedbackRtpTmmb.cpp +1 -1
  270. package/worker/test/src/RTC/RTCP/TestFeedbackRtpTransport.cpp +246 -208
  271. package/worker/test/src/RTC/RTP/TestPacket.cpp +11 -11
  272. package/worker/test/src/RTC/RTP/TestRetransmissionBuffer.cpp +12 -12
  273. package/worker/test/src/RTC/RTP/TestRtpStreamRecv.cpp +23 -16
  274. package/worker/test/src/RTC/RTP/TestRtpStreamSend.cpp +13 -13
  275. package/worker/test/src/RTC/SCTP/association/TestAssociation.cpp +27 -22
  276. package/worker/test/src/RTC/SCTP/association/TestHeartbeatHandler.cpp +21 -15
  277. package/worker/test/src/RTC/SCTP/association/TestStateCookie.cpp +6 -6
  278. package/worker/test/src/RTC/SCTP/association/TestStreamResetHandler.cpp +17 -13
  279. package/worker/test/src/RTC/SCTP/association/TestTransmissionControlBlock.cpp +3 -3
  280. package/worker/test/src/RTC/SCTP/packet/chunks/TestForwardTsnChunk.cpp +2 -2
  281. package/worker/test/src/RTC/SCTP/packet/chunks/TestIForwardTsnChunk.cpp +23 -23
  282. package/worker/test/src/RTC/SCTP/packet/chunks/TestInitChunk.cpp +1 -1
  283. package/worker/test/src/RTC/SCTP/packet/chunks/TestSackChunk.cpp +1 -1
  284. package/worker/test/src/RTC/SCTP/packet/parameters/TestIPv6AddressParameter.cpp +1 -1
  285. package/worker/test/src/RTC/SCTP/rx/TestDataTracker.cpp +37 -37
  286. package/worker/test/src/RTC/SCTP/rx/TestInterleavedReassemblyStreams.cpp +10 -10
  287. package/worker/test/src/RTC/SCTP/rx/TestReassemblyQueue.cpp +1 -1
  288. package/worker/test/src/RTC/SCTP/tx/TestOutstandingData.cpp +93 -93
  289. package/worker/test/src/RTC/SCTP/tx/TestRetransmissionQueue.cpp +247 -247
  290. package/worker/test/src/RTC/SCTP/tx/TestRetransmissionTimeout.cpp +100 -80
  291. package/worker/test/src/RTC/SCTP/tx/TestRoundRobinSendQueue.cpp +163 -163
  292. package/worker/test/src/RTC/SCTP/tx/TestStreamScheduler.cpp +76 -77
  293. package/worker/test/src/RTC/TestConsumer.cpp +8 -3
  294. package/worker/test/src/RTC/TestKeyFrameRequestManager.cpp +3 -3
  295. package/worker/test/src/RTC/TestNackGenerator.cpp +3 -3
  296. package/worker/test/src/RTC/TestPipeProducerStreamManager.cpp +5 -5
  297. package/worker/test/src/RTC/TestRateCalculator.cpp +110 -14
  298. package/worker/test/src/RTC/TestRemoteCaptureTimeEstimator.cpp +22 -17
  299. package/worker/test/src/RTC/TestRemoteClockOffsetEstimator.cpp +87 -85
  300. package/worker/test/src/RTC/TestSimpleProducerStreamManager.cpp +54 -47
  301. package/worker/test/src/RTC/TestSimulcastProducerStreamManager.cpp +83 -69
  302. package/worker/test/src/RTC/TestSvcProducerStreamManager.cpp +76 -65
  303. package/worker/test/src/RTC/TestTransportCongestionControlServer.cpp +72 -66
  304. package/worker/test/src/RTC/TestTransportTuple.cpp +19 -4
  305. package/worker/test/src/TestDepLibUV.cpp +19 -0
  306. package/worker/test/src/Utils/TestTime.cpp +57 -26
  307. package/worker/test/src/testHelpers.cpp +1 -1
  308. package/worker/test/src/tests.cpp +6 -0
  309. package/worker/include/RTC/SenderBandwidthEstimator.hpp +0 -118
  310. package/worker/src/RTC/SenderBandwidthEstimator.cpp +0 -269
@@ -70,7 +70,7 @@ class Stats {
70
70
  }
71
71
  recvBitrate() {
72
72
  const offset = this.bb.__offset(this.bb_pos, 12);
73
- return offset ? this.bb.readUint32(this.bb_pos + offset) : 0;
73
+ return offset ? this.bb.readUint64(this.bb_pos + offset) : BigInt('0');
74
74
  }
75
75
  bytesSent() {
76
76
  const offset = this.bb.__offset(this.bb_pos, 14);
@@ -78,7 +78,7 @@ class Stats {
78
78
  }
79
79
  sendBitrate() {
80
80
  const offset = this.bb.__offset(this.bb_pos, 16);
81
- return offset ? this.bb.readUint32(this.bb_pos + offset) : 0;
81
+ return offset ? this.bb.readUint64(this.bb_pos + offset) : BigInt('0');
82
82
  }
83
83
  rtpBytesReceived() {
84
84
  const offset = this.bb.__offset(this.bb_pos, 18);
@@ -86,7 +86,7 @@ class Stats {
86
86
  }
87
87
  rtpRecvBitrate() {
88
88
  const offset = this.bb.__offset(this.bb_pos, 20);
89
- return offset ? this.bb.readUint32(this.bb_pos + offset) : 0;
89
+ return offset ? this.bb.readUint64(this.bb_pos + offset) : BigInt('0');
90
90
  }
91
91
  rtpBytesSent() {
92
92
  const offset = this.bb.__offset(this.bb_pos, 22);
@@ -94,7 +94,7 @@ class Stats {
94
94
  }
95
95
  rtpSendBitrate() {
96
96
  const offset = this.bb.__offset(this.bb_pos, 24);
97
- return offset ? this.bb.readUint32(this.bb_pos + offset) : 0;
97
+ return offset ? this.bb.readUint64(this.bb_pos + offset) : BigInt('0');
98
98
  }
99
99
  rtxBytesReceived() {
100
100
  const offset = this.bb.__offset(this.bb_pos, 26);
@@ -102,7 +102,7 @@ class Stats {
102
102
  }
103
103
  rtxRecvBitrate() {
104
104
  const offset = this.bb.__offset(this.bb_pos, 28);
105
- return offset ? this.bb.readUint32(this.bb_pos + offset) : 0;
105
+ return offset ? this.bb.readUint64(this.bb_pos + offset) : BigInt('0');
106
106
  }
107
107
  rtxBytesSent() {
108
108
  const offset = this.bb.__offset(this.bb_pos, 30);
@@ -110,7 +110,7 @@ class Stats {
110
110
  }
111
111
  rtxSendBitrate() {
112
112
  const offset = this.bb.__offset(this.bb_pos, 32);
113
- return offset ? this.bb.readUint32(this.bb_pos + offset) : 0;
113
+ return offset ? this.bb.readUint64(this.bb_pos + offset) : BigInt('0');
114
114
  }
115
115
  probationBytesSent() {
116
116
  const offset = this.bb.__offset(this.bb_pos, 34);
@@ -118,27 +118,27 @@ class Stats {
118
118
  }
119
119
  probationSendBitrate() {
120
120
  const offset = this.bb.__offset(this.bb_pos, 36);
121
- return offset ? this.bb.readUint32(this.bb_pos + offset) : 0;
121
+ return offset ? this.bb.readUint64(this.bb_pos + offset) : BigInt('0');
122
122
  }
123
123
  availableOutgoingBitrate() {
124
124
  const offset = this.bb.__offset(this.bb_pos, 38);
125
- return offset ? this.bb.readUint32(this.bb_pos + offset) : null;
125
+ return offset ? this.bb.readUint64(this.bb_pos + offset) : null;
126
126
  }
127
127
  availableIncomingBitrate() {
128
128
  const offset = this.bb.__offset(this.bb_pos, 40);
129
- return offset ? this.bb.readUint32(this.bb_pos + offset) : null;
129
+ return offset ? this.bb.readUint64(this.bb_pos + offset) : null;
130
130
  }
131
131
  maxIncomingBitrate() {
132
132
  const offset = this.bb.__offset(this.bb_pos, 42);
133
- return offset ? this.bb.readUint32(this.bb_pos + offset) : null;
133
+ return offset ? this.bb.readUint64(this.bb_pos + offset) : null;
134
134
  }
135
135
  maxOutgoingBitrate() {
136
136
  const offset = this.bb.__offset(this.bb_pos, 44);
137
- return offset ? this.bb.readUint32(this.bb_pos + offset) : null;
137
+ return offset ? this.bb.readUint64(this.bb_pos + offset) : null;
138
138
  }
139
139
  minOutgoingBitrate() {
140
140
  const offset = this.bb.__offset(this.bb_pos, 46);
141
- return offset ? this.bb.readUint32(this.bb_pos + offset) : null;
141
+ return offset ? this.bb.readUint64(this.bb_pos + offset) : null;
142
142
  }
143
143
  rtpPacketLossReceived() {
144
144
  const offset = this.bb.__offset(this.bb_pos, 48);
@@ -164,58 +164,58 @@ class Stats {
164
164
  builder.addFieldInt64(3, bytesReceived, BigInt('0'));
165
165
  }
166
166
  static addRecvBitrate(builder, recvBitrate) {
167
- builder.addFieldInt32(4, recvBitrate, 0);
167
+ builder.addFieldInt64(4, recvBitrate, BigInt('0'));
168
168
  }
169
169
  static addBytesSent(builder, bytesSent) {
170
170
  builder.addFieldInt64(5, bytesSent, BigInt('0'));
171
171
  }
172
172
  static addSendBitrate(builder, sendBitrate) {
173
- builder.addFieldInt32(6, sendBitrate, 0);
173
+ builder.addFieldInt64(6, sendBitrate, BigInt('0'));
174
174
  }
175
175
  static addRtpBytesReceived(builder, rtpBytesReceived) {
176
176
  builder.addFieldInt64(7, rtpBytesReceived, BigInt('0'));
177
177
  }
178
178
  static addRtpRecvBitrate(builder, rtpRecvBitrate) {
179
- builder.addFieldInt32(8, rtpRecvBitrate, 0);
179
+ builder.addFieldInt64(8, rtpRecvBitrate, BigInt('0'));
180
180
  }
181
181
  static addRtpBytesSent(builder, rtpBytesSent) {
182
182
  builder.addFieldInt64(9, rtpBytesSent, BigInt('0'));
183
183
  }
184
184
  static addRtpSendBitrate(builder, rtpSendBitrate) {
185
- builder.addFieldInt32(10, rtpSendBitrate, 0);
185
+ builder.addFieldInt64(10, rtpSendBitrate, BigInt('0'));
186
186
  }
187
187
  static addRtxBytesReceived(builder, rtxBytesReceived) {
188
188
  builder.addFieldInt64(11, rtxBytesReceived, BigInt('0'));
189
189
  }
190
190
  static addRtxRecvBitrate(builder, rtxRecvBitrate) {
191
- builder.addFieldInt32(12, rtxRecvBitrate, 0);
191
+ builder.addFieldInt64(12, rtxRecvBitrate, BigInt('0'));
192
192
  }
193
193
  static addRtxBytesSent(builder, rtxBytesSent) {
194
194
  builder.addFieldInt64(13, rtxBytesSent, BigInt('0'));
195
195
  }
196
196
  static addRtxSendBitrate(builder, rtxSendBitrate) {
197
- builder.addFieldInt32(14, rtxSendBitrate, 0);
197
+ builder.addFieldInt64(14, rtxSendBitrate, BigInt('0'));
198
198
  }
199
199
  static addProbationBytesSent(builder, probationBytesSent) {
200
200
  builder.addFieldInt64(15, probationBytesSent, BigInt('0'));
201
201
  }
202
202
  static addProbationSendBitrate(builder, probationSendBitrate) {
203
- builder.addFieldInt32(16, probationSendBitrate, 0);
203
+ builder.addFieldInt64(16, probationSendBitrate, BigInt('0'));
204
204
  }
205
205
  static addAvailableOutgoingBitrate(builder, availableOutgoingBitrate) {
206
- builder.addFieldInt32(17, availableOutgoingBitrate, null);
206
+ builder.addFieldInt64(17, availableOutgoingBitrate, null);
207
207
  }
208
208
  static addAvailableIncomingBitrate(builder, availableIncomingBitrate) {
209
- builder.addFieldInt32(18, availableIncomingBitrate, null);
209
+ builder.addFieldInt64(18, availableIncomingBitrate, null);
210
210
  }
211
211
  static addMaxIncomingBitrate(builder, maxIncomingBitrate) {
212
- builder.addFieldInt32(19, maxIncomingBitrate, null);
212
+ builder.addFieldInt64(19, maxIncomingBitrate, null);
213
213
  }
214
214
  static addMaxOutgoingBitrate(builder, maxOutgoingBitrate) {
215
- builder.addFieldInt32(20, maxOutgoingBitrate, null);
215
+ builder.addFieldInt64(20, maxOutgoingBitrate, null);
216
216
  }
217
217
  static addMinOutgoingBitrate(builder, minOutgoingBitrate) {
218
- builder.addFieldInt32(21, minOutgoingBitrate, null);
218
+ builder.addFieldInt64(21, minOutgoingBitrate, null);
219
219
  }
220
220
  static addRtpPacketLossReceived(builder, rtpPacketLossReceived) {
221
221
  builder.addFieldFloat64(22, rtpPacketLossReceived, null);
@@ -320,7 +320,7 @@ class StatsT {
320
320
  minOutgoingBitrate;
321
321
  rtpPacketLossReceived;
322
322
  rtpPacketLossSent;
323
- constructor(transportId = null, timestamp = BigInt('0'), sctpState = null, bytesReceived = BigInt('0'), recvBitrate = 0, bytesSent = BigInt('0'), sendBitrate = 0, rtpBytesReceived = BigInt('0'), rtpRecvBitrate = 0, rtpBytesSent = BigInt('0'), rtpSendBitrate = 0, rtxBytesReceived = BigInt('0'), rtxRecvBitrate = 0, rtxBytesSent = BigInt('0'), rtxSendBitrate = 0, probationBytesSent = BigInt('0'), probationSendBitrate = 0, availableOutgoingBitrate = null, availableIncomingBitrate = null, maxIncomingBitrate = null, maxOutgoingBitrate = null, minOutgoingBitrate = null, rtpPacketLossReceived = null, rtpPacketLossSent = null) {
323
+ constructor(transportId = null, timestamp = BigInt('0'), sctpState = null, bytesReceived = BigInt('0'), recvBitrate = BigInt('0'), bytesSent = BigInt('0'), sendBitrate = BigInt('0'), rtpBytesReceived = BigInt('0'), rtpRecvBitrate = BigInt('0'), rtpBytesSent = BigInt('0'), rtpSendBitrate = BigInt('0'), rtxBytesReceived = BigInt('0'), rtxRecvBitrate = BigInt('0'), rtxBytesSent = BigInt('0'), rtxSendBitrate = BigInt('0'), probationBytesSent = BigInt('0'), probationSendBitrate = BigInt('0'), availableOutgoingBitrate = null, availableIncomingBitrate = null, maxIncomingBitrate = null, maxOutgoingBitrate = null, minOutgoingBitrate = null, rtpPacketLossReceived = null, rtpPacketLossSent = null) {
324
324
  this.transportId = transportId;
325
325
  this.timestamp = timestamp;
326
326
  this.sctpState = sctpState;
@@ -9,7 +9,6 @@ export type RtpCodecsEncodingsMapping = {
9
9
  encodings: {
10
10
  ssrc?: number;
11
11
  rid?: string;
12
- scalabilityMode?: string;
13
12
  mappedSsrc: number;
14
13
  }[];
15
14
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ortc.d.ts","sourceRoot":"","sources":["../src/ortc.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,WAAW,MAAM,aAAa,CAAC;AAGhD,OAAO,KAAK,EACX,eAAe,EACf,qBAAqB,EAGrB,wBAAwB,EAExB,aAAa,EAMb,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAKlE,MAAM,MAAM,yBAAyB,GAAG;IACvC,MAAM,EAAE;QACP,WAAW,EAAE,MAAM,CAAC;QACpB,iBAAiB,EAAE,MAAM,CAAC;KAC1B,EAAE,CAAC;IACJ,SAAS,EAAE;QACV,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,UAAU,EAAE,MAAM,CAAC;KACnB,EAAE,CAAC;CACJ,CAAC;AAoBF;;;;GAIG;AACH,wBAAgB,mCAAmC,CAClD,IAAI,EAAE,eAAe,GAAG,qBAAqB,GAC3C,IAAI,CA0BN;AAED;;;;GAIG;AACH,wBAAgB,iCAAiC,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAsD7E;AAED;;;;GAIG;AACH,wBAAgB,wCAAwC,CACvD,MAAM,EAAE,oBAAoB,GAC1B,IAAI,CAoDN;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CAC5C,WAAW,GAAE,wBAAwB,EAAO,GAC1C,eAAe,CA+HjB;AAED;;;;;GAKG;AACH,wBAAgB,+BAA+B,CAC9C,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,eAAe,GACnB,yBAAyB,CAyF3B;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CACzC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,eAAe,EACrB,UAAU,EAAE,yBAAyB,GACnC,aAAa,CA+Gf;AAED;;GAEG;AACH,wBAAgB,UAAU,CACzB,gBAAgB,EAAE,aAAa,EAC/B,IAAI,EAAE,eAAe,GACnB,OAAO,CAwBT;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,EACxC,uBAAuB,EACvB,qBAAqB,EACrB,IAAI,EACJ,SAAS,GACT,EAAE;IACF,uBAAuB,EAAE,aAAa,CAAC;IACvC,qBAAqB,EAAE,eAAe,CAAC;IACvC,IAAI,EAAE,OAAO,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;CACnB,GAAG,aAAa,CAiLhB;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAAC,EAC5C,uBAAuB,EACvB,SAAS,GACT,EAAE;IACF,uBAAuB,EAAE,aAAa,CAAC;IACvC,SAAS,EAAE,OAAO,CAAC;CACnB,GAAG,aAAa,CA4EhB;AAED,wBAAgB,mBAAmB,CAClC,OAAO,EAAE,WAAW,CAAC,OAAO,EAC5B,UAAU,EAAE,yBAAyB,GACnC,MAAM,CAyCR"}
1
+ {"version":3,"file":"ortc.d.ts","sourceRoot":"","sources":["../src/ortc.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,WAAW,MAAM,aAAa,CAAC;AAGhD,OAAO,KAAK,EACX,eAAe,EACf,qBAAqB,EAGrB,wBAAwB,EAExB,aAAa,EAMb,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAKlE,MAAM,MAAM,yBAAyB,GAAG;IACvC,MAAM,EAAE;QACP,WAAW,EAAE,MAAM,CAAC;QACpB,iBAAiB,EAAE,MAAM,CAAC;KAC1B,EAAE,CAAC;IACJ,SAAS,EAAE;QACV,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,CAAC;KACnB,EAAE,CAAC;CACJ,CAAC;AAoBF;;;;GAIG;AACH,wBAAgB,mCAAmC,CAClD,IAAI,EAAE,eAAe,GAAG,qBAAqB,GAC3C,IAAI,CA0BN;AAED;;;;GAIG;AACH,wBAAgB,iCAAiC,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAsD7E;AAED;;;;GAIG;AACH,wBAAgB,wCAAwC,CACvD,MAAM,EAAE,oBAAoB,GAC1B,IAAI,CAoDN;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CAC5C,WAAW,GAAE,wBAAwB,EAAO,GAC1C,eAAe,CA+HjB;AAED;;;;;GAKG;AACH,wBAAgB,+BAA+B,CAC9C,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,eAAe,GACnB,yBAAyB,CAwF3B;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CACzC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,eAAe,EACrB,UAAU,EAAE,yBAAyB,GACnC,aAAa,CA+Gf;AAED;;GAEG;AACH,wBAAgB,UAAU,CACzB,gBAAgB,EAAE,aAAa,EAC/B,IAAI,EAAE,eAAe,GACnB,OAAO,CAwBT;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,EACxC,uBAAuB,EACvB,qBAAqB,EACrB,IAAI,EACJ,SAAS,GACT,EAAE;IACF,uBAAuB,EAAE,aAAa,CAAC;IACvC,qBAAqB,EAAE,eAAe,CAAC;IACvC,IAAI,EAAE,OAAO,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;CACnB,GAAG,aAAa,CAiLhB;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAAC,EAC5C,uBAAuB,EACvB,SAAS,GACT,EAAE;IACF,uBAAuB,EAAE,aAAa,CAAC;IACvC,SAAS,EAAE,OAAO,CAAC;CACnB,GAAG,aAAa,CA4EhB;AAED,wBAAgB,mBAAmB,CAClC,OAAO,EAAE,WAAW,CAAC,OAAO,EAC5B,UAAU,EAAE,yBAAyB,GACnC,MAAM,CAwCR"}
package/node/lib/ortc.js CHANGED
@@ -333,7 +333,6 @@ function getProducerRtpParametersMapping(params, caps) {
333
333
  const mappedEncoding = {
334
334
  ssrc: encoding.ssrc,
335
335
  rid: encoding.rid,
336
- scalabilityMode: encoding.scalabilityMode,
337
336
  mappedSsrc: mappedSsrc++,
338
337
  };
339
338
  rtpMapping.encodings.push(mappedEncoding);
@@ -628,7 +627,7 @@ function serializeRtpMapping(builder, rtpMapping) {
628
627
  const codecsOffset = FbsRtpParameters.RtpMapping.createCodecsVector(builder, codecs);
629
628
  const encodings = [];
630
629
  for (const encoding of rtpMapping.encodings) {
631
- encodings.push(FbsRtpParameters.EncodingMapping.createEncodingMapping(builder, builder.createString(encoding.rid), encoding.ssrc ?? null, builder.createString(encoding.scalabilityMode), encoding.mappedSsrc));
630
+ encodings.push(FbsRtpParameters.EncodingMapping.createEncodingMapping(builder, builder.createString(encoding.rid), encoding.ssrc ?? null, encoding.mappedSsrc));
632
631
  }
633
632
  const encodingsOffset = FbsRtpParameters.RtpMapping.createEncodingsVector(builder, encodings);
634
633
  return FbsRtpParameters.RtpMapping.createRtpMapping(builder, codecsOffset, encodingsOffset);
@@ -1 +1 @@
1
- {"version":3,"file":"rtpParametersFbsUtils.d.ts","sourceRoot":"","sources":["../src/rtpParametersFbsUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,WAAW,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EACX,aAAa,EACb,kBAAkB,EAClB,YAAY,EACZ,qBAAqB,EACrB,qBAAqB,EACrB,4BAA4B,EAE5B,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAON,YAAY,IAAI,eAAe,EAE/B,kBAAkB,IAAI,qBAAqB,EAC3C,qBAAqB,IAAI,wBAAwB,EACjD,4BAA4B,IAAI,+BAA+B,EAC/D,qBAAqB,IAAI,wBAAwB,EACjD,aAAa,IAAI,gBAAgB,EAGjC,MAAM,sBAAsB,CAAC;AAE9B,wBAAgB,sBAAsB,CACrC,OAAO,EAAE,WAAW,CAAC,OAAO,EAC5B,aAAa,EAAE,aAAa,GAC1B,MAAM,CAoGR;AAED,wBAAgB,8BAA8B,CAC7C,OAAO,EAAE,WAAW,CAAC,OAAO,EAC5B,qBAAqB,GAAE,qBAAqB,EAAO,GACjD,MAAM,CAoER;AAED,wBAAgB,mBAAmB,CAClC,OAAO,EAAE,WAAW,CAAC,OAAO,EAC5B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACjC,MAAM,EAAE,CAmEV;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,YAAY,CAKrE;AAGD,wBAAgB,eAAe,CAAC,IAAI,EAAE,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAuDlE;AAED,wBAAgB,uBAAuB,CACtC,IAAI,EAAE,qBAAqB,GACzB,kBAAkB,CAqBpB;AAED,wBAAgB,4BAA4B,CAC3C,GAAG,EAAE,wBAAwB,GAC3B,qBAAqB,CAkDvB;AAED,wBAAgB,0BAA0B,CACzC,GAAG,EAAE,qBAAqB,GACxB,wBAAwB,CAsD1B;AAED,wBAAgB,iCAAiC,CAChD,IAAI,EAAE,+BAA+B,GACnC,4BAA4B,CAO9B;AAED,wBAAgB,0BAA0B,CACzC,IAAI,EAAE,wBAAwB,GAC5B,qBAAqB,CAWvB;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,GAAG,aAAa,CA0CxE"}
1
+ {"version":3,"file":"rtpParametersFbsUtils.d.ts","sourceRoot":"","sources":["../src/rtpParametersFbsUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,WAAW,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EACX,aAAa,EACb,kBAAkB,EAClB,YAAY,EACZ,qBAAqB,EACrB,qBAAqB,EACrB,4BAA4B,EAE5B,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAON,YAAY,IAAI,eAAe,EAE/B,kBAAkB,IAAI,qBAAqB,EAC3C,qBAAqB,IAAI,wBAAwB,EACjD,4BAA4B,IAAI,+BAA+B,EAC/D,qBAAqB,IAAI,wBAAwB,EACjD,aAAa,IAAI,gBAAgB,EAGjC,MAAM,sBAAsB,CAAC;AAE9B,wBAAgB,sBAAsB,CACrC,OAAO,EAAE,WAAW,CAAC,OAAO,EAC5B,aAAa,EAAE,aAAa,GAC1B,MAAM,CAoGR;AAED,wBAAgB,8BAA8B,CAC7C,OAAO,EAAE,WAAW,CAAC,OAAO,EAC5B,qBAAqB,GAAE,qBAAqB,EAAO,GACjD,MAAM,CAuER;AAED,wBAAgB,mBAAmB,CAClC,OAAO,EAAE,WAAW,CAAC,OAAO,EAC5B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACjC,MAAM,EAAE,CAmEV;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,YAAY,CAKrE;AAGD,wBAAgB,eAAe,CAAC,IAAI,EAAE,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAuDlE;AAED,wBAAgB,uBAAuB,CACtC,IAAI,EAAE,qBAAqB,GACzB,kBAAkB,CAqBpB;AAED,wBAAgB,4BAA4B,CAC3C,GAAG,EAAE,wBAAwB,GAC3B,qBAAqB,CAkDvB;AAED,wBAAgB,0BAA0B,CACzC,GAAG,EAAE,qBAAqB,GACxB,wBAAwB,CAsD1B;AAED,wBAAgB,iCAAiC,CAChD,IAAI,EAAE,+BAA+B,GACnC,4BAA4B,CAO9B;AAED,wBAAgB,0BAA0B,CACzC,IAAI,EAAE,wBAAwB,GAC5B,qBAAqB,CAYvB;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,GAAG,aAAa,CA0CxE"}
@@ -129,7 +129,7 @@ function serializeRtpEncodingParameters(builder, rtpEncodingParameters = []) {
129
129
  }
130
130
  // Add max bitrate.
131
131
  if (encoding.maxBitrate !== undefined) {
132
- rtp_parameters_1.RtpEncodingParameters.addMaxBitrate(builder, encoding.maxBitrate);
132
+ rtp_parameters_1.RtpEncodingParameters.addMaxBitrate(builder, BigInt(encoding.maxBitrate));
133
133
  }
134
134
  // End serialization.
135
135
  encodings.push(rtp_parameters_1.RtpEncodingParameters.endRtpEncodingParameters(builder));
@@ -332,7 +332,7 @@ function parseRtpEncodingParameters(data) {
332
332
  rtx: data.rtx() ? { ssrc: data.rtx().ssrc() } : undefined,
333
333
  dtx: data.dtx(),
334
334
  scalabilityMode: data.scalabilityMode() || undefined,
335
- maxBitrate: data.maxBitrate() !== null ? data.maxBitrate() : undefined,
335
+ maxBitrate: data.maxBitrate() !== null ? Number(data.maxBitrate()) : undefined,
336
336
  };
337
337
  }
338
338
  function parseRtpParameters(data) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mediasoup",
3
- "version": "3.26.0",
3
+ "version": "3.27.0",
4
4
  "description": "Cutting Edge WebRTC Video Conferencing",
5
5
  "contributors": [
6
6
  "Iñaki Baz Castillo <ibc@aliax.net> (https://inakibaz.me)",
@@ -121,22 +121,22 @@
121
121
  "@types/debug": "^4.1.13",
122
122
  "@types/ini": "^4.1.1",
123
123
  "@types/jest": "^30.0.0",
124
- "@types/node": "^26.2.0",
125
- "eslint": "^10.8.1",
124
+ "@types/node": "^26.5.1",
125
+ "eslint": "^10.10.0",
126
126
  "eslint-config-prettier": "^10.1.8",
127
- "eslint-plugin-jest": "^29.16.1",
127
+ "eslint-plugin-jest": "^29.16.6",
128
128
  "eslint-plugin-prettier": "^5.5.6",
129
- "globals": "^17.11.0",
129
+ "globals": "^17.12.0",
130
130
  "ini": "^7.0.0",
131
- "jest": "^30.4.2",
132
- "knip": "^6.32.2",
133
- "marked": "^18.0.10",
131
+ "jest": "^30.5.1",
132
+ "knip": "^6.35.1",
133
+ "marked": "^18.0.13",
134
134
  "open-cli": "^9.0.0",
135
135
  "pick-port": "^2.2.1",
136
136
  "prettier": "^3.9.6",
137
137
  "ts-jest": "^29.4.12",
138
138
  "typescript": "^6.0.3",
139
- "typescript-eslint": "^8.67.0",
139
+ "typescript-eslint": "^8.70.0",
140
140
  "werift-sctp": "^0.0.11"
141
141
  }
142
142
  }
@@ -36,7 +36,7 @@ TargetRateConstraints ConvertConstraints(int min_bitrate_bps,
36
36
  int max_bitrate_bps,
37
37
  int start_bitrate_bps) {
38
38
  TargetRateConstraints msg;
39
- msg.at_time = Timestamp::ms(DepLibUV::GetTimeMsInt64());
39
+ msg.at_time = Timestamp::ms(DepLibUV::GetTimeMs());
40
40
  msg.min_data_rate =
41
41
  min_bitrate_bps >= 0 ? DataRate::bps(min_bitrate_bps) : DataRate::Zero();
42
42
  msg.max_data_rate = max_bitrate_bps > 0 ? DataRate::bps(max_bitrate_bps)
@@ -63,7 +63,7 @@ RtpTransportControllerSend::RtpTransportControllerSend(
63
63
  observer_(nullptr),
64
64
  controller_factory_override_(controller_factory),
65
65
  process_interval_(controller_factory_override_->GetProcessInterval()),
66
- last_report_block_time_(Timestamp::ms(DepLibUV::GetTimeMsInt64())),
66
+ last_report_block_time_(Timestamp::ms(DepLibUV::GetTimeMs())),
67
67
  send_side_bwe_with_overhead_(
68
68
  webrtc::field_trial::IsEnabled("WebRTC-SendSideBwe-WithOverhead")),
69
69
  transport_overhead_bytes_per_packet_(0),
@@ -147,7 +147,7 @@ void RtpTransportControllerSend::OnNetworkAvailability(bool network_available) {
147
147
  MS_DEBUG_DEV("<<<<< network_available:%s", network_available ? "true" : "false");
148
148
 
149
149
  NetworkAvailability msg;
150
- msg.at_time = Timestamp::ms(DepLibUV::GetTimeMsInt64());
150
+ msg.at_time = Timestamp::ms(DepLibUV::GetTimeMs());
151
151
  msg.network_available = network_available;
152
152
 
153
153
  if (network_available_ == msg.network_available)
@@ -200,7 +200,7 @@ void RtpTransportControllerSend::OnReceivedEstimatedBitrate(uint32_t bitrate) {
200
200
  MS_DEBUG_DEV("<<<<< bitrate:%zu", bitrate);
201
201
 
202
202
  RemoteBitrateReport msg;
203
- msg.receive_time = Timestamp::ms(DepLibUV::GetTimeMsInt64());
203
+ msg.receive_time = Timestamp::ms(DepLibUV::GetTimeMs());
204
204
  msg.bandwidth = DataRate::bps(bitrate);
205
205
 
206
206
  PostUpdates(controller_->OnRemoteBitrateReport(msg));
@@ -228,7 +228,7 @@ void RtpTransportControllerSend::OnAddPacket(
228
228
  packet_info,
229
229
  send_side_bwe_with_overhead_ ? transport_overhead_bytes_per_packet_.load()
230
230
  : 0,
231
- Timestamp::ms(DepLibUV::GetTimeMsInt64()));
231
+ Timestamp::ms(DepLibUV::GetTimeMs()));
232
232
  }
233
233
 
234
234
  void RtpTransportControllerSend::OnTransportFeedback(
@@ -237,7 +237,7 @@ void RtpTransportControllerSend::OnTransportFeedback(
237
237
 
238
238
  absl::optional<TransportPacketsFeedback> feedback_msg =
239
239
  transport_feedback_adapter_.ProcessTransportFeedback(
240
- feedback, Timestamp::ms(DepLibUV::GetTimeMsInt64()));
240
+ feedback, Timestamp::ms(DepLibUV::GetTimeMs()));
241
241
  if (feedback_msg)
242
242
  PostUpdates(controller_->OnTransportPacketsFeedback(*feedback_msg));
243
243
  pacer_.UpdateOutstandingData(
@@ -246,7 +246,7 @@ void RtpTransportControllerSend::OnTransportFeedback(
246
246
 
247
247
  void RtpTransportControllerSend::OnRemoteNetworkEstimate(
248
248
  NetworkStateEstimate estimate) {
249
- estimate.update_time = Timestamp::ms(DepLibUV::GetTimeMsInt64());
249
+ estimate.update_time = Timestamp::ms(DepLibUV::GetTimeMs());
250
250
  controller_->OnNetworkStateEstimate(estimate);
251
251
  }
252
252
 
@@ -268,7 +268,7 @@ void RtpTransportControllerSend::MaybeCreateControllers() {
268
268
  control_handler_ = absl::make_unique<CongestionControlHandler>();
269
269
 
270
270
  initial_config_.constraints.at_time =
271
- Timestamp::ms(DepLibUV::GetTimeMsInt64());
271
+ Timestamp::ms(DepLibUV::GetTimeMs());
272
272
 
273
273
  controller_ = controller_factory_override_->Create(initial_config_);
274
274
  process_interval_ = controller_factory_override_->GetProcessInterval();
@@ -283,7 +283,7 @@ void RtpTransportControllerSend::UpdateControllerWithTimeInterval() {
283
283
  MS_ASSERT(controller_, "controller not set");
284
284
 
285
285
  ProcessInterval msg;
286
- msg.at_time = Timestamp::ms(DepLibUV::GetTimeMsInt64());
286
+ msg.at_time = Timestamp::ms(DepLibUV::GetTimeMs());
287
287
 
288
288
  PostUpdates(controller_->OnProcessInterval(msg));
289
289
  }
@@ -291,7 +291,7 @@ void RtpTransportControllerSend::UpdateControllerWithTimeInterval() {
291
291
  void RtpTransportControllerSend::UpdateStreamsConfig() {
292
292
  MS_DEBUG_DEV("<<<<<");
293
293
 
294
- streams_config_.at_time = Timestamp::ms(DepLibUV::GetTimeMsInt64());
294
+ streams_config_.at_time = Timestamp::ms(DepLibUV::GetTimeMs());
295
295
  if (controller_)
296
296
  PostUpdates(controller_->OnStreamsConfig(streams_config_));
297
297
  }
@@ -18,11 +18,11 @@ namespace mediasoup_helpers
18
18
  {
19
19
  std::vector<webrtc::rtcp::ReceivedPacket> receivedPackets;
20
20
 
21
- for (auto& packetResult : packet->GetPacketResults())
21
+ for (auto& packetStatus : packet->GetPacketStatuses())
22
22
  {
23
- if (packetResult.received)
23
+ if (packetStatus.received)
24
24
  {
25
- receivedPackets.emplace_back(packetResult.sequenceNumber, packetResult.delta);
25
+ receivedPackets.emplace_back(packetStatus.sequenceNumber, packetStatus.delta);
26
26
  }
27
27
  }
28
28
 
@@ -30,11 +30,11 @@ namespace mediasoup_helpers
30
30
  }
31
31
 
32
32
  /**
33
- * Get the reference time in microseconds, including any precision loss.
33
+ * Get the reference time in microseconds.
34
34
  */
35
35
  int64_t GetBaseTimeUs(const RTC::RTCP::FeedbackRtpTransportPacket* packet)
36
36
  {
37
- return packet->GetReferenceTimestamp() * 1000;
37
+ return packet->GetReferenceTimestampUs();
38
38
  }
39
39
 
40
40
  /**
@@ -42,7 +42,7 @@ namespace mediasoup_helpers
42
42
  */
43
43
  int64_t GetBaseDeltaUs(const RTC::RTCP::FeedbackRtpTransportPacket* packet, int64_t prev_timestamp_us)
44
44
  {
45
- return packet->GetBaseDelta(prev_timestamp_us / 1000) * 1000;
45
+ return packet->GetBaseDeltaUs(prev_timestamp_us);
46
46
  }
47
47
  } // namespace FeedbackRtpTransport
48
48
  } // namespace mediasoup_helpers
@@ -90,7 +90,7 @@ void AlrDetector::OnBytesSent(size_t bytes_sent, int64_t send_time_ms) {
90
90
  bool state_changed = false;
91
91
  if (alr_budget_.budget_ratio() > start_budget_level_ratio_ &&
92
92
  !alr_started_time_ms_) {
93
- alr_started_time_ms_.emplace(DepLibUV::GetTimeMsInt64());
93
+ alr_started_time_ms_.emplace(DepLibUV::GetTimeMs());
94
94
  state_changed = true;
95
95
  } else if (alr_budget_.budget_ratio() < stop_budget_level_ratio_ &&
96
96
  alr_started_time_ms_) {
@@ -53,7 +53,7 @@ PacedSender::PacedSender(PacketRouter* packet_router,
53
53
  prober_(*field_trials_),
54
54
  probing_send_failure_(false),
55
55
  pacing_bitrate_kbps_(0),
56
- time_last_process_us_(DepLibUV::GetTimeUsInt64()),
56
+ time_last_process_us_(DepLibUV::GetTimeUs()),
57
57
  first_sent_packet_ms_(-1),
58
58
  packet_counter_(0),
59
59
  account_for_audio_(false) {
@@ -66,7 +66,7 @@ void PacedSender::CreateProbeCluster(int bitrate_bps, int cluster_id) {
66
66
  // TODO: REMOVE
67
67
  // MS_DEBUG_DEV("---- bitrate_bps:%d, cluster_id:%d", bitrate_bps, cluster_id);
68
68
 
69
- prober_.CreateProbeCluster(bitrate_bps, DepLibUV::GetTimeMsInt64(), cluster_id);
69
+ prober_.CreateProbeCluster(bitrate_bps, DepLibUV::GetTimeMs(), cluster_id);
70
70
  }
71
71
 
72
72
  void PacedSender::Pause() {
@@ -147,7 +147,7 @@ void PacedSender::SetAccountForAudioPackets(bool account_for_audio) {
147
147
 
148
148
  int64_t PacedSender::TimeUntilNextProcess() {
149
149
  int64_t elapsed_time_us =
150
- DepLibUV::GetTimeUsInt64() - time_last_process_us_;
150
+ DepLibUV::GetTimeUs() - time_last_process_us_;
151
151
  int64_t elapsed_time_ms = (elapsed_time_us + 500) / 1000;
152
152
  // When paused we wake up every 500 ms to send a padding packet to ensure
153
153
  // we won't get stuck in the paused state due to no feedback being received.
@@ -155,7 +155,7 @@ int64_t PacedSender::TimeUntilNextProcess() {
155
155
  return std::max<int64_t>(kPausedProcessIntervalMs - elapsed_time_ms, 0);
156
156
 
157
157
  if (prober_.IsProbing()) {
158
- int64_t ret = prober_.TimeUntilNextProbe(DepLibUV::GetTimeMsInt64());
158
+ int64_t ret = prober_.TimeUntilNextProbe(DepLibUV::GetTimeMs());
159
159
  if (ret > 0 || (ret == 0 && !probing_send_failure_))
160
160
  return ret;
161
161
  }
@@ -176,7 +176,7 @@ int64_t PacedSender::UpdateTimeAndGetElapsedMs(int64_t now_us) {
176
176
  }
177
177
 
178
178
  void PacedSender::Process() {
179
- int64_t now_us = DepLibUV::GetTimeUsInt64();
179
+ int64_t now_us = DepLibUV::GetTimeUs();
180
180
  int64_t elapsed_time_ms = UpdateTimeAndGetElapsedMs(now_us);
181
181
 
182
182
  if (paused_)
@@ -230,7 +230,7 @@ void PacedSender::Process() {
230
230
 
231
231
  if (bytes_sent != 0)
232
232
  {
233
- auto now = DepLibUV::GetTimeUsInt64();
233
+ auto now = DepLibUV::GetTimeUs();
234
234
 
235
235
  OnPaddingSent(now, bytes_sent);
236
236
  prober_.ProbeSent((now + 500) / 1000, bytes_sent);
@@ -265,7 +265,7 @@ size_t PacedSender::PaddingBytesToAdd(
265
265
 
266
266
  void PacedSender::OnPacketSent(size_t size) {
267
267
  if (first_sent_packet_ms_ == -1)
268
- first_sent_packet_ms_ = DepLibUV::GetTimeMsInt64();
268
+ first_sent_packet_ms_ = DepLibUV::GetTimeMs();
269
269
 
270
270
  // Update media bytes sent.
271
271
  UpdateBudgetWithBytesSent(size);
@@ -36,7 +36,7 @@ class RemoteBitrateObserver {
36
36
  virtual void OnRembServerAvailableBitrate(
37
37
  const RemoteBitrateEstimator* remoteBitrateEstimator,
38
38
  const std::vector<uint32_t>& ssrcs,
39
- uint32_t availableBitrate) = 0;
39
+ int64_t availableBitrate) = 0;
40
40
 
41
41
  virtual ~RemoteBitrateObserver() {}
42
42
  };
@@ -252,7 +252,7 @@ void RemoteBitrateEstimatorAbsSendTime::IncomingPacketInfo(
252
252
  uint32_t timestamp = send_time_24bits << kAbsSendTimeInterArrivalUpshift;
253
253
  int64_t send_time_ms = static_cast<int64_t>(timestamp) * kTimestampToMs;
254
254
 
255
- int64_t now_ms = DepLibUV::GetTimeMsInt64();
255
+ int64_t now_ms = DepLibUV::GetTimeMs();
256
256
  // TODO(holmer): SSRCs are only needed for REMB, should be broken out from
257
257
  // here.
258
258
 
@@ -94,7 +94,7 @@ table RtpEncodingParameters {
94
94
  rtx: Rtx;
95
95
  dtx: bool = false;
96
96
  scalability_mode: string;
97
- max_bitrate: uint32 = null;
97
+ max_bitrate: uint64 = null;
98
98
  }
99
99
 
100
100
  table RtcpParameters {
@@ -119,7 +119,6 @@ table CodecMapping {
119
119
  table EncodingMapping {
120
120
  rid: string;
121
121
  ssrc: uint32 = null;
122
- scalability_mode: string;
123
122
  mapped_ssrc: uint32;
124
123
  }
125
124
 
@@ -30,7 +30,7 @@ table Dump {
30
30
 
31
31
  table BitrateByLayer {
32
32
  layer: string (required);
33
- bitrate: uint32;
33
+ bitrate: uint64;
34
34
  }
35
35
 
36
36
  union StatsData {
@@ -69,7 +69,7 @@ table RecvStats {
69
69
  base: Stats (required);
70
70
  packet_count: uint64;
71
71
  byte_count: uint64;
72
- bitrate: uint32;
72
+ bitrate: uint64;
73
73
  bitrate_by_layer: [BitrateByLayer] (required);
74
74
  }
75
75
 
@@ -77,6 +77,6 @@ table SendStats {
77
77
  base: Stats (required);
78
78
  packet_count: uint64;
79
79
  byte_count: uint64;
80
- bitrate: uint32;
80
+ bitrate: uint64;
81
81
  }
82
82
 
@@ -123,7 +123,7 @@ table RecvRtpHeaderExtensions {
123
123
 
124
124
  table Options {
125
125
  direct: bool = false;
126
- initial_available_outgoing_bitrate: uint32 = null;
126
+ initial_available_outgoing_bitrate: uint64 = null;
127
127
  enable_sctp: bool = false;
128
128
  max_send_message_size: uint32;
129
129
  max_receive_message_size: uint32;
@@ -164,38 +164,38 @@ table Stats {
164
164
  timestamp: uint64;
165
165
  sctp_state: FBS.SctpAssociation.SctpState = null;
166
166
  bytes_received: uint64;
167
- recv_bitrate: uint32;
167
+ recv_bitrate: uint64;
168
168
  bytes_sent: uint64;
169
- send_bitrate: uint32;
169
+ send_bitrate: uint64;
170
170
  rtp_bytes_received: uint64;
171
- rtp_recv_bitrate: uint32;
171
+ rtp_recv_bitrate: uint64;
172
172
  rtp_bytes_sent: uint64;
173
- rtp_send_bitrate: uint32;
173
+ rtp_send_bitrate: uint64;
174
174
  rtx_bytes_received: uint64;
175
- rtx_recv_bitrate: uint32;
175
+ rtx_recv_bitrate: uint64;
176
176
  rtx_bytes_sent: uint64;
177
- rtx_send_bitrate: uint32;
177
+ rtx_send_bitrate: uint64;
178
178
  probation_bytes_sent: uint64;
179
- probation_send_bitrate: uint32;
180
- available_outgoing_bitrate: uint32 = null;
181
- available_incoming_bitrate: uint32 = null;
182
- max_incoming_bitrate: uint32 = null;
183
- max_outgoing_bitrate: uint32 = null;
184
- min_outgoing_bitrate: uint32 = null;
179
+ probation_send_bitrate: uint64;
180
+ available_outgoing_bitrate: uint64 = null;
181
+ available_incoming_bitrate: uint64 = null;
182
+ max_incoming_bitrate: uint64 = null;
183
+ max_outgoing_bitrate: uint64 = null;
184
+ min_outgoing_bitrate: uint64 = null;
185
185
  rtp_packet_loss_received: float64 = null;
186
186
  rtp_packet_loss_sent: float64 = null;
187
187
  }
188
188
 
189
189
  table SetMaxIncomingBitrateRequest {
190
- max_incoming_bitrate: uint32;
190
+ max_incoming_bitrate: uint64;
191
191
  }
192
192
 
193
193
  table SetMaxOutgoingBitrateRequest {
194
- max_outgoing_bitrate: uint32;
194
+ max_outgoing_bitrate: uint64;
195
195
  }
196
196
 
197
197
  table SetMinOutgoingBitrateRequest {
198
- min_outgoing_bitrate: uint32;
198
+ min_outgoing_bitrate: uint64;
199
199
  }
200
200
 
201
201
  table EnableTraceEventRequest {
@@ -245,13 +245,13 @@ enum BweType: uint8 {
245
245
 
246
246
  table BweTraceInfo {
247
247
  bwe_type: BweType;
248
- desired_bitrate: uint32;
249
- effective_desired_bitrate: uint32;
250
- min_bitrate: uint32;
251
- max_bitrate: uint32;
252
- start_bitrate: uint32;
253
- max_padding_bitrate: uint32;
254
- available_bitrate: uint32;
248
+ desired_bitrate: uint64;
249
+ effective_desired_bitrate: uint64;
250
+ min_bitrate: uint64;
251
+ max_bitrate: uint64;
252
+ start_bitrate: uint64;
253
+ max_padding_bitrate: uint64;
254
+ available_bitrate: uint64;
255
255
  }
256
256
 
257
257
  table TraceNotification {
@@ -24,7 +24,10 @@ namespace FuzzerRtcDtlsTransport
24
24
  void OnDtlsTransportSendData(
25
25
  const RTC::DtlsTransport* dtlsTransport, const uint8_t* data, size_t len) override;
26
26
  void OnDtlsTransportApplicationDataReceived(
27
- const RTC::DtlsTransport* dtlsTransport, const uint8_t* data, size_t len) override;
27
+ const RTC::DtlsTransport* dtlsTransport,
28
+ const uint8_t* data,
29
+ size_t len,
30
+ int64_t receivedAtUs) override;
28
31
  };
29
32
 
30
33
  void Fuzz(const uint8_t* data, size_t len);
@@ -92,8 +92,10 @@ void FuzzerUtils::Fuzz(const uint8_t* data, size_t len)
92
92
 
93
93
  /* Time class. */
94
94
 
95
- auto ntp = Utils::Time::TimeMs2Ntp(static_cast<uint64_t>(len));
95
+ auto ntp = Utils::Time::TimeUs2Ntp(static_cast<int64_t>(len));
96
96
 
97
- Utils::Time::Ntp2TimeMs(ntp);
98
- Utils::Time::TimeMsToAbsSendTime(static_cast<uint64_t>(len));
97
+ Utils::Time::Ntp2TimeUs(ntp);
98
+ Utils::Time::TimeUsToAbsSendTime(static_cast<int64_t>(len));
99
+ Utils::Time::Q32x32ToTimeUs(static_cast<int64_t>(len));
100
+ Utils::Time::TimeUs2Q32x32(static_cast<int64_t>(len));
99
101
  }