mediasoup 3.19.0 → 3.19.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/node/lib/Router.d.ts.map +1 -1
- package/node/lib/Router.js +2 -0
- package/node/lib/test/test-PipeTransport.js +18 -0
- package/package.json +3 -3
- package/worker/include/RTC/RtpRetransmissionBuffer.hpp +2 -0
- package/worker/src/RTC/RtpRetransmissionBuffer.cpp +1 -0
- package/worker/src/RTC/RtpStreamSend.cpp +3 -0
- package/worker/src/RTC/SvcConsumer.cpp +1 -4
- package/worker/test/src/RTC/TestRtpStreamSend.cpp +19 -16
package/node/lib/Router.d.ts.map
CHANGED
|
@@ -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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"}
|
package/node/lib/Router.js
CHANGED
|
@@ -644,6 +644,8 @@ class RouterImpl extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
644
644
|
}
|
|
645
645
|
}
|
|
646
646
|
else {
|
|
647
|
+
// NOTE: This cannot happen since it's guaranteed that producer or
|
|
648
|
+
// dataProducer exists, but TypeScript is not that smart.
|
|
647
649
|
throw new Error('internal error');
|
|
648
650
|
}
|
|
649
651
|
}
|
|
@@ -929,3 +929,21 @@ test('router.pipeToRouter() called in two Routers passing one to each other as a
|
|
|
929
929
|
expect(pipeTransportsA.size).toBe(0);
|
|
930
930
|
expect(pipeTransportsB.size).toBe(0);
|
|
931
931
|
}, 2000);
|
|
932
|
+
test('router.pipeToRouter() with neither producerId nor dataProducerId fails', async () => {
|
|
933
|
+
const router1bis = await ctx.worker1.createRouter({
|
|
934
|
+
mediaCodecs: ctx.mediaCodecs,
|
|
935
|
+
});
|
|
936
|
+
await expect(ctx.router1.pipeToRouter({
|
|
937
|
+
router: router1bis,
|
|
938
|
+
})).rejects.toThrow(Error);
|
|
939
|
+
}, 2000);
|
|
940
|
+
test('router.pipeToRouter() with both producerId and dataProducerId fails', async () => {
|
|
941
|
+
const router1bis = await ctx.worker1.createRouter({
|
|
942
|
+
mediaCodecs: ctx.mediaCodecs,
|
|
943
|
+
});
|
|
944
|
+
await expect(ctx.router1.pipeToRouter({
|
|
945
|
+
producerId: '1234',
|
|
946
|
+
dataProducerId: '5678',
|
|
947
|
+
router: router1bis,
|
|
948
|
+
})).rejects.toThrow(Error);
|
|
949
|
+
}, 2000);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mediasoup",
|
|
3
|
-
"version": "3.19.
|
|
3
|
+
"version": "3.19.1",
|
|
4
4
|
"description": "Cutting Edge WebRTC Video Conferencing",
|
|
5
5
|
"contributors": [
|
|
6
6
|
"Iñaki Baz Castillo <ibc@aliax.net> (https://inakibaz.me)",
|
|
@@ -110,7 +110,7 @@
|
|
|
110
110
|
"eslint-plugin-jest": "^29.0.1",
|
|
111
111
|
"eslint-plugin-prettier": "^5.5.4",
|
|
112
112
|
"globals": "^16.3.0",
|
|
113
|
-
"jest": "^30.1.
|
|
113
|
+
"jest": "^30.1.3",
|
|
114
114
|
"marked": "^16.2.1",
|
|
115
115
|
"open-cli": "^8.0.0",
|
|
116
116
|
"pick-port": "^2.1.2",
|
|
@@ -118,6 +118,6 @@
|
|
|
118
118
|
"sctp": "^1.0.0",
|
|
119
119
|
"ts-jest": "^29.4.1",
|
|
120
120
|
"typescript": "^5.9.2",
|
|
121
|
-
"typescript-eslint": "^8.
|
|
121
|
+
"typescript-eslint": "^8.42.0"
|
|
122
122
|
}
|
|
123
123
|
}
|
|
@@ -30,6 +30,8 @@ namespace RTC
|
|
|
30
30
|
uint16_t sequenceNumber{ 0u };
|
|
31
31
|
// Correct timestamp since original packet may not have the same.
|
|
32
32
|
uint32_t timestamp{ 0u };
|
|
33
|
+
// Correct marker bit since original packet may not have the same.
|
|
34
|
+
bool marker{ false };
|
|
33
35
|
// Last time this packet was resent.
|
|
34
36
|
uint64_t resentAtMs{ 0u };
|
|
35
37
|
// Number of times this packet was resent.
|
|
@@ -173,12 +173,14 @@ namespace RTC
|
|
|
173
173
|
auto origSsrc = packet->GetSsrc();
|
|
174
174
|
auto origSeq = packet->GetSequenceNumber();
|
|
175
175
|
auto origTimestamp = packet->GetTimestamp();
|
|
176
|
+
auto origMarker = packet->HasMarker();
|
|
176
177
|
std::string origMid;
|
|
177
178
|
|
|
178
179
|
// Put correct info into the packet.
|
|
179
180
|
packet->SetSsrc(item->ssrc);
|
|
180
181
|
packet->SetSequenceNumber(item->sequenceNumber);
|
|
181
182
|
packet->SetTimestamp(item->timestamp);
|
|
183
|
+
packet->SetMarker(item->marker);
|
|
182
184
|
|
|
183
185
|
if (item->encoder != nullptr)
|
|
184
186
|
{
|
|
@@ -237,6 +239,7 @@ namespace RTC
|
|
|
237
239
|
packet->SetSsrc(origSsrc);
|
|
238
240
|
packet->SetSequenceNumber(origSeq);
|
|
239
241
|
packet->SetTimestamp(origTimestamp);
|
|
242
|
+
packet->SetMarker(origMarker);
|
|
240
243
|
}
|
|
241
244
|
}
|
|
242
245
|
|
|
@@ -44,11 +44,12 @@ static void SendRtpPacket(std::vector<std::pair<RtpStreamSend*, uint32_t>> strea
|
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
46
|
|
|
47
|
-
static void CheckRtxPacket(RtpPacket*
|
|
47
|
+
static void CheckRtxPacket(RtpPacket* rtxPacket, RtpPacket* origPacket)
|
|
48
48
|
{
|
|
49
|
-
REQUIRE(
|
|
50
|
-
REQUIRE(
|
|
51
|
-
REQUIRE(
|
|
49
|
+
REQUIRE(rtxPacket);
|
|
50
|
+
REQUIRE(rtxPacket->GetSequenceNumber() == origPacket->GetSequenceNumber());
|
|
51
|
+
REQUIRE(rtxPacket->GetTimestamp() == origPacket->GetTimestamp());
|
|
52
|
+
REQUIRE(rtxPacket->HasMarker() == origPacket->HasMarker());
|
|
52
53
|
}
|
|
53
54
|
|
|
54
55
|
SCENARIO("NACK and RTP packets retransmission", "[rtp][rtcp][nack]")
|
|
@@ -94,12 +95,14 @@ SCENARIO("NACK and RTP packets retransmission", "[rtp][rtcp][nack]")
|
|
|
94
95
|
auto packet1(CreateRtpPacket(rtpBuffer1, sizeof(rtpBuffer1), 21006, 1533790901));
|
|
95
96
|
// packet2 [pt:123, seq:21007, timestamp:1533790901]
|
|
96
97
|
auto packet2(CreateRtpPacket(rtpBuffer2, sizeof(rtpBuffer2), 21007, 1533790901));
|
|
98
|
+
packet2->SetMarker(true);
|
|
97
99
|
// packet3 [pt:123, seq:21008, timestamp:1533793871]
|
|
98
100
|
auto packet3(CreateRtpPacket(rtpBuffer3, sizeof(rtpBuffer3), 21008, 1533793871));
|
|
99
101
|
// packet4 [pt:123, seq:21009, timestamp:1533793871]
|
|
100
102
|
auto packet4(CreateRtpPacket(rtpBuffer4, sizeof(rtpBuffer4), 21009, 1533793871));
|
|
101
103
|
// packet5 [pt:123, seq:21010, timestamp:1533796931]
|
|
102
104
|
auto packet5(CreateRtpPacket(rtpBuffer5, sizeof(rtpBuffer5), 21010, 1533796931));
|
|
105
|
+
packet5->SetMarker(true);
|
|
103
106
|
|
|
104
107
|
// Create a RtpStreamSend instance.
|
|
105
108
|
TestRtpStreamListener testRtpStreamListener;
|
|
@@ -144,11 +147,11 @@ SCENARIO("NACK and RTP packets retransmission", "[rtp][rtcp][nack]")
|
|
|
144
147
|
|
|
145
148
|
testRtpStreamListener.retransmittedPackets.clear();
|
|
146
149
|
|
|
147
|
-
CheckRtxPacket(rtxPacket1, packet1
|
|
148
|
-
CheckRtxPacket(rtxPacket2, packet2
|
|
149
|
-
CheckRtxPacket(rtxPacket3, packet3
|
|
150
|
-
CheckRtxPacket(rtxPacket4, packet4
|
|
151
|
-
CheckRtxPacket(rtxPacket5, packet5
|
|
150
|
+
CheckRtxPacket(rtxPacket1, packet1.get());
|
|
151
|
+
CheckRtxPacket(rtxPacket2, packet2.get());
|
|
152
|
+
CheckRtxPacket(rtxPacket3, packet3.get());
|
|
153
|
+
CheckRtxPacket(rtxPacket4, packet4.get());
|
|
154
|
+
CheckRtxPacket(rtxPacket5, packet5.get());
|
|
152
155
|
}
|
|
153
156
|
|
|
154
157
|
SECTION("receive NACK and get zero retransmitted packets if useNack is not set")
|
|
@@ -306,8 +309,8 @@ SCENARIO("NACK and RTP packets retransmission", "[rtp][rtcp][nack]")
|
|
|
306
309
|
|
|
307
310
|
testRtpStreamListener1.retransmittedPackets.clear();
|
|
308
311
|
|
|
309
|
-
CheckRtxPacket(rtxPacket1, packet1
|
|
310
|
-
CheckRtxPacket(rtxPacket2, packet2
|
|
312
|
+
CheckRtxPacket(rtxPacket1, packet1.get());
|
|
313
|
+
CheckRtxPacket(rtxPacket2, packet2.get());
|
|
311
314
|
|
|
312
315
|
// Process the NACK packet on stream2.
|
|
313
316
|
stream2->ReceiveNack(&nackPacket);
|
|
@@ -319,8 +322,8 @@ SCENARIO("NACK and RTP packets retransmission", "[rtp][rtcp][nack]")
|
|
|
319
322
|
|
|
320
323
|
testRtpStreamListener2.retransmittedPackets.clear();
|
|
321
324
|
|
|
322
|
-
CheckRtxPacket(rtxPacket1, packet1
|
|
323
|
-
CheckRtxPacket(rtxPacket2, packet2
|
|
325
|
+
CheckRtxPacket(rtxPacket1, packet1.get());
|
|
326
|
+
CheckRtxPacket(rtxPacket2, packet2.get());
|
|
324
327
|
}
|
|
325
328
|
|
|
326
329
|
SECTION("retransmitted packets are correctly encoded")
|
|
@@ -531,8 +534,8 @@ SCENARIO("NACK and RTP packets retransmission", "[rtp][rtcp][nack]")
|
|
|
531
534
|
|
|
532
535
|
testRtpStreamListener.retransmittedPackets.clear();
|
|
533
536
|
|
|
534
|
-
CheckRtxPacket(rtxPacket1, packet1
|
|
535
|
-
CheckRtxPacket(rtxPacket2, packet2
|
|
537
|
+
CheckRtxPacket(rtxPacket1, packet1.get());
|
|
538
|
+
CheckRtxPacket(rtxPacket2, packet2.get());
|
|
536
539
|
}
|
|
537
540
|
|
|
538
541
|
SECTION("packets don't get retransmitted if MaxRetransmissionDelayForVideoMs is exceeded")
|
|
@@ -585,7 +588,7 @@ SCENARIO("NACK and RTP packets retransmission", "[rtp][rtcp][nack]")
|
|
|
585
588
|
|
|
586
589
|
testRtpStreamListener.retransmittedPackets.clear();
|
|
587
590
|
|
|
588
|
-
CheckRtxPacket(rtxPacket2, packet2
|
|
591
|
+
CheckRtxPacket(rtxPacket2, packet2.get());
|
|
589
592
|
}
|
|
590
593
|
|
|
591
594
|
SECTION("packets get removed from the retransmission buffer if seq number of the stream is reset")
|