react-native-webrtc-nitro 1.2.0 → 1.3.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.
- package/3rdparty/output/android/libdatachannel/arm64-v8a/include/rtc/configuration.hpp +1 -1
- package/3rdparty/output/android/libdatachannel/arm64-v8a/include/rtc/rtc.h +9 -1
- package/3rdparty/output/android/libdatachannel/arm64-v8a/include/rtc/rtcpreceivingsession.hpp +26 -1
- package/3rdparty/output/android/libdatachannel/arm64-v8a/include/rtc/rtp.hpp +1 -1
- package/3rdparty/output/android/libdatachannel/arm64-v8a/include/rtc/rtppacketizationconfig.hpp +9 -0
- package/3rdparty/output/android/libdatachannel/arm64-v8a/include/rtc/version.h +3 -3
- package/3rdparty/output/android/libdatachannel/arm64-v8a/lib/libdatachannel.so +0 -0
- package/3rdparty/output/android/libdatachannel/armeabi-v7a/include/rtc/configuration.hpp +1 -1
- package/3rdparty/output/android/libdatachannel/armeabi-v7a/include/rtc/rtc.h +9 -1
- package/3rdparty/output/android/libdatachannel/armeabi-v7a/include/rtc/rtcpreceivingsession.hpp +26 -1
- package/3rdparty/output/android/libdatachannel/armeabi-v7a/include/rtc/rtp.hpp +1 -1
- package/3rdparty/output/android/libdatachannel/armeabi-v7a/include/rtc/rtppacketizationconfig.hpp +9 -0
- package/3rdparty/output/android/libdatachannel/armeabi-v7a/include/rtc/version.h +3 -3
- package/3rdparty/output/android/libdatachannel/armeabi-v7a/lib/libdatachannel.so +0 -0
- package/3rdparty/output/android/libdatachannel/x86/include/rtc/configuration.hpp +1 -1
- package/3rdparty/output/android/libdatachannel/x86/include/rtc/rtc.h +9 -1
- package/3rdparty/output/android/libdatachannel/x86/include/rtc/rtcpreceivingsession.hpp +26 -1
- package/3rdparty/output/android/libdatachannel/x86/include/rtc/rtp.hpp +1 -1
- package/3rdparty/output/android/libdatachannel/x86/include/rtc/rtppacketizationconfig.hpp +9 -0
- package/3rdparty/output/android/libdatachannel/x86/include/rtc/version.h +3 -3
- package/3rdparty/output/android/libdatachannel/x86/lib/libdatachannel.so +0 -0
- package/3rdparty/output/android/libdatachannel/x86_64/include/rtc/configuration.hpp +1 -1
- package/3rdparty/output/android/libdatachannel/x86_64/include/rtc/rtc.h +9 -1
- package/3rdparty/output/android/libdatachannel/x86_64/include/rtc/rtcpreceivingsession.hpp +26 -1
- package/3rdparty/output/android/libdatachannel/x86_64/include/rtc/rtp.hpp +1 -1
- package/3rdparty/output/android/libdatachannel/x86_64/include/rtc/rtppacketizationconfig.hpp +9 -0
- package/3rdparty/output/android/libdatachannel/x86_64/include/rtc/version.h +3 -3
- package/3rdparty/output/android/libdatachannel/x86_64/lib/libdatachannel.so +0 -0
- package/3rdparty/output/ios/ffmpeg.xcframework/ios-arm64/libffmpeg.a +0 -0
- package/3rdparty/output/ios/ffmpeg.xcframework/ios-arm64_x86_64-simulator/libffmpeg.a +0 -0
- package/3rdparty/output/ios/libdatachannel.xcframework/Info.plist +5 -5
- package/3rdparty/output/ios/libdatachannel.xcframework/ios-arm64/Headers/rtc/configuration.hpp +1 -1
- package/3rdparty/output/ios/libdatachannel.xcframework/ios-arm64/Headers/rtc/rtc.h +9 -1
- package/3rdparty/output/ios/libdatachannel.xcframework/ios-arm64/Headers/rtc/rtcpreceivingsession.hpp +26 -1
- package/3rdparty/output/ios/libdatachannel.xcframework/ios-arm64/Headers/rtc/rtp.hpp +1 -1
- package/3rdparty/output/ios/libdatachannel.xcframework/ios-arm64/Headers/rtc/rtppacketizationconfig.hpp +9 -0
- package/3rdparty/output/ios/libdatachannel.xcframework/ios-arm64/Headers/rtc/version.h +3 -3
- package/3rdparty/output/ios/libdatachannel.xcframework/ios-arm64/libdatachannel.a +0 -0
- package/3rdparty/output/ios/libdatachannel.xcframework/ios-arm64_x86_64-simulator/Headers/rtc/configuration.hpp +1 -1
- package/3rdparty/output/ios/libdatachannel.xcframework/ios-arm64_x86_64-simulator/Headers/rtc/rtc.h +9 -1
- package/3rdparty/output/ios/libdatachannel.xcframework/ios-arm64_x86_64-simulator/Headers/rtc/rtcpreceivingsession.hpp +26 -1
- package/3rdparty/output/ios/libdatachannel.xcframework/ios-arm64_x86_64-simulator/Headers/rtc/rtp.hpp +1 -1
- package/3rdparty/output/ios/libdatachannel.xcframework/ios-arm64_x86_64-simulator/Headers/rtc/rtppacketizationconfig.hpp +9 -0
- package/3rdparty/output/ios/libdatachannel.xcframework/ios-arm64_x86_64-simulator/Headers/rtc/version.h +3 -3
- package/3rdparty/output/ios/libdatachannel.xcframework/ios-arm64_x86_64-simulator/libdatachannel.a +0 -0
- package/README.md +563 -13
- package/cpp/FFmpeg/Encoder.cpp +0 -8
- package/cpp/Hybrid/HybridMediaStream.cpp +16 -8
- package/cpp/Hybrid/HybridMediaStream.hpp +2 -3
- package/cpp/Hybrid/HybridRTCPeerConnection.cpp +2 -1
- package/cpp/Hybrid/HybridRTCRtpTransceiver.cpp +48 -8
- package/lib/commonjs/specs/RTCPeerConnection.nitro.js.map +1 -1
- package/lib/module/specs/RTCPeerConnection.nitro.js.map +1 -1
- package/lib/typescript/src/specs/RTCPeerConnection.nitro.d.ts +1 -0
- package/lib/typescript/src/specs/RTCPeerConnection.nitro.d.ts.map +1 -1
- package/nitrogen/generated/shared/c++/RTCIceCandidate.hpp +9 -2
- package/package.json +1 -1
- package/src/specs/RTCPeerConnection.nitro.ts +1 -0
|
@@ -104,7 +104,6 @@ void HybridRTCRtpTransceiver::senderOnOpen ()
|
|
|
104
104
|
return;
|
|
105
105
|
}
|
|
106
106
|
|
|
107
|
-
const size_t mtu = 1200;
|
|
108
107
|
auto ssrcs = track->description ().getSSRCs ();
|
|
109
108
|
if (ssrcs.size () != 1)
|
|
110
109
|
{
|
|
@@ -116,31 +115,72 @@ void HybridRTCRtpTransceiver::senderOnOpen ()
|
|
|
116
115
|
auto separator = rtc::NalUnit::Separator::StartSequence;
|
|
117
116
|
if (rtpMap->format == "H265")
|
|
118
117
|
{
|
|
118
|
+
// create RTP configuration
|
|
119
119
|
auto rtpConfig = std::make_shared<rtc::RtpPacketizationConfig> (
|
|
120
120
|
ssrc, track->mid (), rtpMap->payloadType,
|
|
121
121
|
rtc::H265RtpPacketizer::ClockRate);
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
122
|
+
// create packetizer
|
|
123
|
+
auto packetizer
|
|
124
|
+
= std::make_shared<rtc::H265RtpPacketizer> (separator, rtpConfig);
|
|
125
|
+
|
|
126
|
+
// add RTCP SR handler
|
|
127
|
+
auto srReporter = make_shared<rtc::RtcpSrReporter> (rtpConfig);
|
|
128
|
+
packetizer->addToChain (srReporter);
|
|
129
|
+
|
|
130
|
+
// add RTCP NACK handler
|
|
131
|
+
auto nackResponder = make_shared<rtc::RtcpNackResponder> ();
|
|
132
|
+
packetizer->addToChain (nackResponder);
|
|
133
|
+
|
|
134
|
+
// set handler
|
|
135
|
+
track->setMediaHandler (packetizer);
|
|
136
|
+
|
|
125
137
|
avCodecId = AV_CODEC_ID_H265;
|
|
126
138
|
}
|
|
127
139
|
else if (rtpMap->format == "H264")
|
|
128
140
|
{
|
|
141
|
+
// create RTP configuration
|
|
129
142
|
auto rtpConfig = std::make_shared<rtc::RtpPacketizationConfig> (
|
|
130
143
|
ssrc, track->mid (), rtpMap->payloadType,
|
|
131
144
|
rtc::H264RtpPacketizer::ClockRate);
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
145
|
+
|
|
146
|
+
// create packetizer
|
|
147
|
+
auto packetizer
|
|
148
|
+
= std::make_shared<rtc::H264RtpPacketizer> (separator, rtpConfig);
|
|
149
|
+
|
|
150
|
+
// add RTCP SR handler
|
|
151
|
+
auto srReporter = make_shared<rtc::RtcpSrReporter> (rtpConfig);
|
|
152
|
+
packetizer->addToChain (srReporter);
|
|
153
|
+
|
|
154
|
+
// add RTCP NACK handler
|
|
155
|
+
auto nackResponder = make_shared<rtc::RtcpNackResponder> ();
|
|
156
|
+
packetizer->addToChain (nackResponder);
|
|
157
|
+
|
|
158
|
+
// set handler
|
|
159
|
+
track->setMediaHandler (packetizer);
|
|
160
|
+
|
|
135
161
|
avCodecId = AV_CODEC_ID_H264;
|
|
136
162
|
}
|
|
137
163
|
else if (rtpMap->format == "opus")
|
|
138
164
|
{
|
|
165
|
+
// create RTP configuration
|
|
139
166
|
auto rtpConfig = std::make_shared<rtc::RtpPacketizationConfig> (
|
|
140
167
|
ssrc, track->mid (), rtpMap->payloadType,
|
|
141
168
|
rtc::OpusRtpPacketizer::DefaultClockRate);
|
|
169
|
+
|
|
170
|
+
// create packetizer
|
|
142
171
|
auto packetizer = std::make_shared<rtc::OpusRtpPacketizer> (rtpConfig);
|
|
143
|
-
|
|
172
|
+
|
|
173
|
+
// add RTCP SR handler
|
|
174
|
+
auto srReporter = make_shared<rtc::RtcpSrReporter> (rtpConfig);
|
|
175
|
+
packetizer->addToChain (srReporter);
|
|
176
|
+
|
|
177
|
+
// add RTCP NACK handler
|
|
178
|
+
auto nackResponder = make_shared<rtc::RtcpNackResponder> ();
|
|
179
|
+
packetizer->addToChain (nackResponder);
|
|
180
|
+
|
|
181
|
+
// set handler
|
|
182
|
+
track->setMediaHandler (packetizer);
|
|
183
|
+
|
|
144
184
|
avCodecId = AV_CODEC_ID_OPUS;
|
|
145
185
|
}
|
|
146
186
|
else
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNativeNitroModules","require","RTCPeerConnectionConstructor","getHybridObjectConstructor","RTCPeerConnectionExport","exports","RTCPeerConnection","Proxy","construct","target","args","config","instance","setConfiguration"],"sourceRoot":"../../../src","sources":["specs/RTCPeerConnection.nitro.ts"],"mappings":";;;;;;AACA,IAAAA,wBAAA,GAAAC,OAAA;
|
|
1
|
+
{"version":3,"names":["_reactNativeNitroModules","require","RTCPeerConnectionConstructor","getHybridObjectConstructor","RTCPeerConnectionExport","exports","RTCPeerConnection","Proxy","construct","target","args","config","instance","setConfiguration"],"sourceRoot":"../../../src","sources":["specs/RTCPeerConnection.nitro.ts"],"mappings":";;;;;;AACA,IAAAA,wBAAA,GAAAC,OAAA;AA6FA,MAAMC,4BAA4B,GAChC,IAAAC,mDAA0B,EAAoB,mBAAmB,CAAC;AACpE,MAAMC,uBAAuB,GAAAC,OAAA,CAAAC,iBAAA,GAAG,IAAIC,KAAK,CAACL,4BAA4B,EAAE;EACtEM,SAASA,CAACC,MAAM,EAAEC,IAAI,EAAE;IACtB,MAAMC,MAAM,GAAGD,IAAI,CAAC,CAAC,CAAiC;IACtD,MAAME,QAAQ,GAAG,IAAIH,MAAM,CAAC,CAAC;IAC7BG,QAAQ,CAACC,gBAAgB,CAACF,MAAM,CAAC;IACjC,OAAOC,QAAQ;EACjB;AACF,CAAC,CAA2D","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getHybridObjectConstructor","RTCPeerConnectionConstructor","RTCPeerConnectionExport","Proxy","construct","target","args","config","instance","setConfiguration","RTCPeerConnection"],"sourceRoot":"../../../src","sources":["specs/RTCPeerConnection.nitro.ts"],"mappings":";;AACA,SAASA,0BAA0B,QAAQ,4BAA4B;
|
|
1
|
+
{"version":3,"names":["getHybridObjectConstructor","RTCPeerConnectionConstructor","RTCPeerConnectionExport","Proxy","construct","target","args","config","instance","setConfiguration","RTCPeerConnection"],"sourceRoot":"../../../src","sources":["specs/RTCPeerConnection.nitro.ts"],"mappings":";;AACA,SAASA,0BAA0B,QAAQ,4BAA4B;AA6FvE,MAAMC,4BAA4B,GAChCD,0BAA0B,CAAoB,mBAAmB,CAAC;AACpE,MAAME,uBAAuB,GAAG,IAAIC,KAAK,CAACF,4BAA4B,EAAE;EACtEG,SAASA,CAACC,MAAM,EAAEC,IAAI,EAAE;IACtB,MAAMC,MAAM,GAAGD,IAAI,CAAC,CAAC,CAAiC;IACtD,MAAME,QAAQ,GAAG,IAAIH,MAAM,CAAC,CAAC;IAC7BG,QAAQ,CAACC,gBAAgB,CAACF,MAAM,CAAC;IACjC,OAAOC,QAAQ;EACjB;AACF,CAAC,CAA2D;AAE5D,SAASN,uBAAuB,IAAIQ,iBAAiB","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RTCPeerConnection.nitro.d.ts","sourceRoot":"","sources":["../../../../src/specs/RTCPeerConnection.nitro.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAE9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,2BAA2B,CAAA;AAC3E,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAEjD,KAAK,oBAAoB,GAAG,UAAU,GAAG,WAAW,GAAG,KAAK,CAAA;AAC5D,KAAK,sBAAsB,GACvB,QAAQ,GACR,WAAW,GACX,YAAY,GACZ,cAAc,GACd,QAAQ,GACR,KAAK,CAAA;AACT,KAAK,UAAU,GAAG,QAAQ,GAAG,OAAO,GAAG,UAAU,GAAG,UAAU,CAAA;AAE9D,MAAM,WAAW,KAAK;IACpB,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,UAAU,CAAC,EAAE,YAAY,EAAE,CAAA;CAC5B;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,CAAC,EAAE,0BAA0B,CAAA;IACtC,OAAO,CAAC,EAAE,WAAW,EAAE,CAAA;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"RTCPeerConnection.nitro.d.ts","sourceRoot":"","sources":["../../../../src/specs/RTCPeerConnection.nitro.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,6 +26,9 @@
|
|
|
26
26
|
|
|
27
27
|
|
|
28
28
|
#include <string>
|
|
29
|
+
#include <NitroModules/Null.hpp>
|
|
30
|
+
#include <variant>
|
|
31
|
+
#include <optional>
|
|
29
32
|
|
|
30
33
|
namespace margelo::nitro::webrtc {
|
|
31
34
|
|
|
@@ -35,10 +38,11 @@ namespace margelo::nitro::webrtc {
|
|
|
35
38
|
struct RTCIceCandidate {
|
|
36
39
|
public:
|
|
37
40
|
std::string candidate SWIFT_PRIVATE;
|
|
41
|
+
std::optional<std::variant<nitro::NullType, std::string>> sdpMid SWIFT_PRIVATE;
|
|
38
42
|
|
|
39
43
|
public:
|
|
40
44
|
RTCIceCandidate() = default;
|
|
41
|
-
explicit RTCIceCandidate(std::string candidate): candidate(candidate) {}
|
|
45
|
+
explicit RTCIceCandidate(std::string candidate, std::optional<std::variant<nitro::NullType, std::string>> sdpMid): candidate(candidate), sdpMid(sdpMid) {}
|
|
42
46
|
};
|
|
43
47
|
|
|
44
48
|
} // namespace margelo::nitro::webrtc
|
|
@@ -51,12 +55,14 @@ namespace margelo::nitro {
|
|
|
51
55
|
static inline margelo::nitro::webrtc::RTCIceCandidate fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
52
56
|
jsi::Object obj = arg.asObject(runtime);
|
|
53
57
|
return margelo::nitro::webrtc::RTCIceCandidate(
|
|
54
|
-
JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "candidate"))
|
|
58
|
+
JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "candidate")),
|
|
59
|
+
JSIConverter<std::optional<std::variant<nitro::NullType, std::string>>>::fromJSI(runtime, obj.getProperty(runtime, "sdpMid"))
|
|
55
60
|
);
|
|
56
61
|
}
|
|
57
62
|
static inline jsi::Value toJSI(jsi::Runtime& runtime, const margelo::nitro::webrtc::RTCIceCandidate& arg) {
|
|
58
63
|
jsi::Object obj(runtime);
|
|
59
64
|
obj.setProperty(runtime, "candidate", JSIConverter<std::string>::toJSI(runtime, arg.candidate));
|
|
65
|
+
obj.setProperty(runtime, "sdpMid", JSIConverter<std::optional<std::variant<nitro::NullType, std::string>>>::toJSI(runtime, arg.sdpMid));
|
|
60
66
|
return obj;
|
|
61
67
|
}
|
|
62
68
|
static inline bool canConvert(jsi::Runtime& runtime, const jsi::Value& value) {
|
|
@@ -68,6 +74,7 @@ namespace margelo::nitro {
|
|
|
68
74
|
return false;
|
|
69
75
|
}
|
|
70
76
|
if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "candidate"))) return false;
|
|
77
|
+
if (!JSIConverter<std::optional<std::variant<nitro::NullType, std::string>>>::canConvert(runtime, obj.getProperty(runtime, "sdpMid"))) return false;
|
|
71
78
|
return true;
|
|
72
79
|
}
|
|
73
80
|
};
|
package/package.json
CHANGED