@sbhjt-gr/react-native-webrtc 124.0.2 → 124.0.4

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 (363) hide show
  1. package/.clang-format +11 -11
  2. package/.eslintignore +6 -6
  3. package/.nvmrc +1 -1
  4. package/ISSUE_TEMPLATE.md +40 -40
  5. package/LICENSE +22 -22
  6. package/README.md +103 -103
  7. package/android/build.gradle +37 -37
  8. package/android/consumer-rules.pro +3 -3
  9. package/android/src/main/AndroidManifest.xml +11 -11
  10. package/android/src/main/java/com/oney/WebRTCModule/AbstractVideoCaptureController.java +113 -113
  11. package/android/src/main/java/com/oney/WebRTCModule/CameraCaptureController.java +338 -338
  12. package/android/src/main/java/com/oney/WebRTCModule/CameraEventsHandler.java +49 -49
  13. package/android/src/main/java/com/oney/WebRTCModule/DataChannelWrapper.java +99 -99
  14. package/android/src/main/java/com/oney/WebRTCModule/DataPacketCryptorManager.java +62 -62
  15. package/android/src/main/java/com/oney/WebRTCModule/DisplayUtils.java +16 -16
  16. package/android/src/main/java/com/oney/WebRTCModule/EglUtils.java +66 -66
  17. package/android/src/main/java/com/oney/WebRTCModule/GetUserMediaImpl.java +539 -539
  18. package/android/src/main/java/com/oney/WebRTCModule/LibraryLoader.java +21 -21
  19. package/android/src/main/java/com/oney/WebRTCModule/MediaProjectionNotification.java +70 -70
  20. package/android/src/main/java/com/oney/WebRTCModule/MediaProjectionService.java +82 -82
  21. package/android/src/main/java/com/oney/WebRTCModule/PeerConnectionObserver.java +588 -588
  22. package/android/src/main/java/com/oney/WebRTCModule/RTCCryptoManager.java +493 -493
  23. package/android/src/main/java/com/oney/WebRTCModule/RTCVideoViewManager.java +98 -98
  24. package/android/src/main/java/com/oney/WebRTCModule/ReactBridgeUtil.java +35 -35
  25. package/android/src/main/java/com/oney/WebRTCModule/ScreenCaptureController.java +94 -94
  26. package/android/src/main/java/com/oney/WebRTCModule/SerializeUtils.java +342 -342
  27. package/android/src/main/java/com/oney/WebRTCModule/StringUtils.java +100 -100
  28. package/android/src/main/java/com/oney/WebRTCModule/ThreadUtils.java +41 -41
  29. package/android/src/main/java/com/oney/WebRTCModule/TrackCapturerEventsEmitter.java +34 -34
  30. package/android/src/main/java/com/oney/WebRTCModule/VideoTrackAdapter.java +137 -137
  31. package/android/src/main/java/com/oney/WebRTCModule/WebRTCModule.java +1649 -1643
  32. package/android/src/main/java/com/oney/WebRTCModule/WebRTCModuleOptions.java +33 -33
  33. package/android/src/main/java/com/oney/WebRTCModule/WebRTCModulePackage.java +21 -21
  34. package/android/src/main/java/com/oney/WebRTCModule/WebRTCView.java +583 -583
  35. package/android/src/main/java/com/oney/WebRTCModule/palabra/PalabraClient.java +529 -464
  36. package/android/src/main/java/com/oney/WebRTCModule/palabra/PalabraConfig.java +17 -17
  37. package/android/src/main/java/com/oney/WebRTCModule/palabra/PalabraListener.java +7 -7
  38. package/android/src/main/java/com/oney/WebRTCModule/videoEffects/ProcessorProvider.java +38 -38
  39. package/android/src/main/java/com/oney/WebRTCModule/videoEffects/VideoEffectProcessor.java +59 -59
  40. package/android/src/main/java/com/oney/WebRTCModule/videoEffects/VideoFrameProcessor.java +19 -19
  41. package/android/src/main/java/com/oney/WebRTCModule/videoEffects/VideoFrameProcessorFactoryInterface.java +12 -12
  42. package/android/src/main/java/com/oney/WebRTCModule/webrtcutils/H264AndSoftwareVideoDecoderFactory.java +73 -73
  43. package/android/src/main/java/com/oney/WebRTCModule/webrtcutils/H264AndSoftwareVideoEncoderFactory.java +73 -73
  44. package/android/src/main/java/com/oney/WebRTCModule/webrtcutils/SoftwareVideoDecoderFactoryProxy.java +36 -36
  45. package/android/src/main/java/com/oney/WebRTCModule/webrtcutils/SoftwareVideoEncoderFactoryProxy.java +36 -36
  46. package/android/src/main/java/org/webrtc/Camera1Helper.java +54 -54
  47. package/android/src/main/java/org/webrtc/Camera2Helper.java +52 -52
  48. package/android/src/main/res/values/strings.xml +5 -5
  49. package/android/src/main/res/values/styles.xml +8 -8
  50. package/ios/RCTWebRTC/CaptureController.h +18 -18
  51. package/ios/RCTWebRTC/CaptureController.m +28 -28
  52. package/ios/RCTWebRTC/CapturerEventsDelegate.h +12 -12
  53. package/ios/RCTWebRTC/DataChannelWrapper.h +27 -27
  54. package/ios/RCTWebRTC/DataChannelWrapper.m +42 -42
  55. package/ios/RCTWebRTC/I420Converter.h +22 -22
  56. package/ios/RCTWebRTC/I420Converter.m +164 -164
  57. package/ios/RCTWebRTC/PIPController.h +24 -24
  58. package/ios/RCTWebRTC/PIPController.m +234 -234
  59. package/ios/RCTWebRTC/PalabraAudioSink.h +13 -13
  60. package/ios/RCTWebRTC/PalabraAudioSink.m +18 -18
  61. package/ios/RCTWebRTC/PalabraClient.h +42 -36
  62. package/ios/RCTWebRTC/PalabraClient.m +680 -584
  63. package/ios/RCTWebRTC/RCTConvert+WebRTC.h +16 -16
  64. package/ios/RCTWebRTC/RCTConvert+WebRTC.m +206 -206
  65. package/ios/RCTWebRTC/RTCMediaStreamTrack+React.h +10 -10
  66. package/ios/RCTWebRTC/RTCMediaStreamTrack+React.m +16 -16
  67. package/ios/RCTWebRTC/RTCVideoViewManager.h +29 -29
  68. package/ios/RCTWebRTC/RTCVideoViewManager.m +411 -411
  69. package/ios/RCTWebRTC/SampleBufferVideoCallView.h +12 -12
  70. package/ios/RCTWebRTC/SampleBufferVideoCallView.m +178 -178
  71. package/ios/RCTWebRTC/ScreenCaptureController.h +20 -20
  72. package/ios/RCTWebRTC/ScreenCaptureController.m +82 -82
  73. package/ios/RCTWebRTC/ScreenCapturePickerViewManager.h +7 -7
  74. package/ios/RCTWebRTC/ScreenCapturePickerViewManager.m +59 -59
  75. package/ios/RCTWebRTC/ScreenCapturer.h +19 -19
  76. package/ios/RCTWebRTC/ScreenCapturer.m +263 -263
  77. package/ios/RCTWebRTC/SerializeUtils.h +28 -28
  78. package/ios/RCTWebRTC/SerializeUtils.m +314 -314
  79. package/ios/RCTWebRTC/SocketConnection.h +13 -13
  80. package/ios/RCTWebRTC/SocketConnection.m +137 -137
  81. package/ios/RCTWebRTC/TrackCapturerEventsEmitter.h +14 -14
  82. package/ios/RCTWebRTC/TrackCapturerEventsEmitter.m +36 -36
  83. package/ios/RCTWebRTC/VideoCaptureController.h +21 -21
  84. package/ios/RCTWebRTC/VideoCaptureController.m +328 -328
  85. package/ios/RCTWebRTC/WLVAudioDevice.h +12 -12
  86. package/ios/RCTWebRTC/WLVAudioDevice.m +137 -137
  87. package/ios/RCTWebRTC/WebRTCModule+Palabra.h +4 -4
  88. package/ios/RCTWebRTC/WebRTCModule+Palabra.m +92 -83
  89. package/ios/RCTWebRTC/WebRTCModule+Permissions.m +75 -75
  90. package/ios/RCTWebRTC/WebRTCModule+RTCAudioSession.m +20 -20
  91. package/ios/RCTWebRTC/WebRTCModule+RTCDataChannel.h +14 -14
  92. package/ios/RCTWebRTC/WebRTCModule+RTCDataChannel.m +165 -165
  93. package/ios/RCTWebRTC/WebRTCModule+RTCFrameCryptor.m +611 -611
  94. package/ios/RCTWebRTC/WebRTCModule+RTCMediaStream.h +13 -13
  95. package/ios/RCTWebRTC/WebRTCModule+RTCMediaStream.m +728 -728
  96. package/ios/RCTWebRTC/WebRTCModule+RTCPeerConnection.h +24 -24
  97. package/ios/RCTWebRTC/WebRTCModule+RTCPeerConnection.m +1004 -1004
  98. package/ios/RCTWebRTC/WebRTCModule+Transceivers.m +267 -267
  99. package/ios/RCTWebRTC/WebRTCModule+VideoTrackAdapter.h +12 -12
  100. package/ios/RCTWebRTC/WebRTCModule+VideoTrackAdapter.m +166 -166
  101. package/ios/RCTWebRTC/WebRTCModule.h +58 -58
  102. package/ios/RCTWebRTC/WebRTCModule.m +169 -169
  103. package/ios/RCTWebRTC/WebRTCModuleOptions.h +24 -24
  104. package/ios/RCTWebRTC/WebRTCModuleOptions.m +31 -31
  105. package/ios/RCTWebRTC/videoEffects/ProcessorProvider.h +9 -9
  106. package/ios/RCTWebRTC/videoEffects/ProcessorProvider.m +23 -23
  107. package/ios/RCTWebRTC/videoEffects/VideoEffectProcessor.h +13 -13
  108. package/ios/RCTWebRTC/videoEffects/VideoEffectProcessor.m +23 -23
  109. package/ios/RCTWebRTC/videoEffects/VideoFrameProcessor.h +8 -8
  110. package/ios/RCTWebRTC.xcodeproj/project.pbxproj +404 -404
  111. package/ios/RCTWebRTC.xcworkspace/contents.xcworkspacedata +10 -10
  112. package/lib/commonjs/Constraints.js.map +1 -1
  113. package/lib/commonjs/EventEmitter.js.map +1 -1
  114. package/lib/commonjs/Logger.js.map +1 -1
  115. package/lib/commonjs/MediaDevices.js +17 -17
  116. package/lib/commonjs/MediaDevices.js.map +1 -1
  117. package/lib/commonjs/MediaStream.js +19 -19
  118. package/lib/commonjs/MediaStream.js.map +1 -1
  119. package/lib/commonjs/MediaStreamError.js.map +1 -1
  120. package/lib/commonjs/MediaStreamErrorEvent.js.map +1 -1
  121. package/lib/commonjs/MediaStreamTrack.js +28 -28
  122. package/lib/commonjs/MediaStreamTrack.js.map +1 -1
  123. package/lib/commonjs/MediaStreamTrackEvent.js +6 -6
  124. package/lib/commonjs/MediaStreamTrackEvent.js.map +1 -1
  125. package/lib/commonjs/MessageEvent.js +7 -7
  126. package/lib/commonjs/MessageEvent.js.map +1 -1
  127. package/lib/commonjs/Permissions.js +28 -28
  128. package/lib/commonjs/Permissions.js.map +1 -1
  129. package/lib/commonjs/RTCAudioSession.js +4 -4
  130. package/lib/commonjs/RTCAudioSession.js.map +1 -1
  131. package/lib/commonjs/RTCDataChannel.js +2 -2
  132. package/lib/commonjs/RTCDataChannel.js.map +1 -1
  133. package/lib/commonjs/RTCDataChannelEvent.js +6 -6
  134. package/lib/commonjs/RTCDataChannelEvent.js.map +1 -1
  135. package/lib/commonjs/RTCDataPacketCryptor.js.map +1 -1
  136. package/lib/commonjs/RTCDataPacketCryptorFactory.js.map +1 -1
  137. package/lib/commonjs/RTCErrorEvent.js +3 -3
  138. package/lib/commonjs/RTCErrorEvent.js.map +1 -1
  139. package/lib/commonjs/RTCFrameCryptor.js +8 -8
  140. package/lib/commonjs/RTCFrameCryptor.js.map +1 -1
  141. package/lib/commonjs/RTCFrameCryptorFactory.js.map +1 -1
  142. package/lib/commonjs/RTCIceCandidate.js.map +1 -1
  143. package/lib/commonjs/RTCIceCandidateEvent.js +7 -7
  144. package/lib/commonjs/RTCIceCandidateEvent.js.map +1 -1
  145. package/lib/commonjs/RTCKeyProvider.js.map +1 -1
  146. package/lib/commonjs/RTCPIPView.js +2 -2
  147. package/lib/commonjs/RTCPIPView.js.map +1 -1
  148. package/lib/commonjs/RTCPIPView.web.js.map +1 -1
  149. package/lib/commonjs/RTCPeerConnection.js +146 -41
  150. package/lib/commonjs/RTCPeerConnection.js.map +1 -1
  151. package/lib/commonjs/RTCRtcpParameters.js.map +1 -1
  152. package/lib/commonjs/RTCRtpCapabilities.js +2 -2
  153. package/lib/commonjs/RTCRtpCapabilities.js.map +1 -1
  154. package/lib/commonjs/RTCRtpCodecCapability.js.map +1 -1
  155. package/lib/commonjs/RTCRtpCodecParameters.js.map +1 -1
  156. package/lib/commonjs/RTCRtpEncodingParameters.js.map +1 -1
  157. package/lib/commonjs/RTCRtpHeaderExtension.js.map +1 -1
  158. package/lib/commonjs/RTCRtpParameters.js.map +1 -1
  159. package/lib/commonjs/RTCRtpReceiveParameters.js.map +1 -1
  160. package/lib/commonjs/RTCRtpReceiver.js +7 -7
  161. package/lib/commonjs/RTCRtpReceiver.js.map +1 -1
  162. package/lib/commonjs/RTCRtpSendParameters.js +3 -3
  163. package/lib/commonjs/RTCRtpSendParameters.js.map +1 -1
  164. package/lib/commonjs/RTCRtpSender.js +7 -7
  165. package/lib/commonjs/RTCRtpSender.js.map +1 -1
  166. package/lib/commonjs/RTCRtpTransceiver.js.map +1 -1
  167. package/lib/commonjs/RTCSessionDescription.js.map +1 -1
  168. package/lib/commonjs/RTCTrackEvent.js +6 -6
  169. package/lib/commonjs/RTCTrackEvent.js.map +1 -1
  170. package/lib/commonjs/RTCUtil.js +28 -28
  171. package/lib/commonjs/RTCUtil.js.map +1 -1
  172. package/lib/commonjs/RTCView.js +5 -5
  173. package/lib/commonjs/RTCView.js.map +1 -1
  174. package/lib/commonjs/RTCView.web.js.map +1 -1
  175. package/lib/commonjs/ScreenCapturePickerView.js.map +1 -1
  176. package/lib/commonjs/ScreenCapturePickerView.web.js.map +1 -1
  177. package/lib/commonjs/getDisplayMedia.js.map +1 -1
  178. package/lib/commonjs/getUserMedia.js +23 -0
  179. package/lib/commonjs/getUserMedia.js.map +1 -1
  180. package/lib/commonjs/index.js.map +1 -1
  181. package/lib/commonjs/index.web.js.map +1 -1
  182. package/lib/commonjs/webStream.js.map +1 -1
  183. package/lib/module/Constraints.js.map +1 -1
  184. package/lib/module/EventEmitter.js.map +1 -1
  185. package/lib/module/Logger.js.map +1 -1
  186. package/lib/module/MediaDevices.js +17 -17
  187. package/lib/module/MediaDevices.js.map +1 -1
  188. package/lib/module/MediaStream.js +19 -19
  189. package/lib/module/MediaStream.js.map +1 -1
  190. package/lib/module/MediaStreamError.js.map +1 -1
  191. package/lib/module/MediaStreamErrorEvent.js.map +1 -1
  192. package/lib/module/MediaStreamTrack.js +28 -28
  193. package/lib/module/MediaStreamTrack.js.map +1 -1
  194. package/lib/module/MediaStreamTrackEvent.js +6 -6
  195. package/lib/module/MediaStreamTrackEvent.js.map +1 -1
  196. package/lib/module/MessageEvent.js +7 -7
  197. package/lib/module/MessageEvent.js.map +1 -1
  198. package/lib/module/Permissions.js +28 -28
  199. package/lib/module/Permissions.js.map +1 -1
  200. package/lib/module/RTCAudioSession.js +4 -4
  201. package/lib/module/RTCAudioSession.js.map +1 -1
  202. package/lib/module/RTCDataChannel.js +2 -2
  203. package/lib/module/RTCDataChannel.js.map +1 -1
  204. package/lib/module/RTCDataChannelEvent.js +6 -6
  205. package/lib/module/RTCDataChannelEvent.js.map +1 -1
  206. package/lib/module/RTCDataPacketCryptor.js.map +1 -1
  207. package/lib/module/RTCDataPacketCryptorFactory.js.map +1 -1
  208. package/lib/module/RTCErrorEvent.js +3 -3
  209. package/lib/module/RTCErrorEvent.js.map +1 -1
  210. package/lib/module/RTCFrameCryptor.js +8 -8
  211. package/lib/module/RTCFrameCryptor.js.map +1 -1
  212. package/lib/module/RTCFrameCryptorFactory.js.map +1 -1
  213. package/lib/module/RTCIceCandidate.js.map +1 -1
  214. package/lib/module/RTCIceCandidateEvent.js +7 -7
  215. package/lib/module/RTCIceCandidateEvent.js.map +1 -1
  216. package/lib/module/RTCKeyProvider.js.map +1 -1
  217. package/lib/module/RTCPIPView.js +2 -2
  218. package/lib/module/RTCPIPView.js.map +1 -1
  219. package/lib/module/RTCPIPView.web.js.map +1 -1
  220. package/lib/module/RTCPeerConnection.js +146 -41
  221. package/lib/module/RTCPeerConnection.js.map +1 -1
  222. package/lib/module/RTCRtcpParameters.js.map +1 -1
  223. package/lib/module/RTCRtpCapabilities.js +2 -2
  224. package/lib/module/RTCRtpCapabilities.js.map +1 -1
  225. package/lib/module/RTCRtpCodecCapability.js.map +1 -1
  226. package/lib/module/RTCRtpCodecParameters.js.map +1 -1
  227. package/lib/module/RTCRtpEncodingParameters.js.map +1 -1
  228. package/lib/module/RTCRtpHeaderExtension.js.map +1 -1
  229. package/lib/module/RTCRtpParameters.js.map +1 -1
  230. package/lib/module/RTCRtpReceiveParameters.js.map +1 -1
  231. package/lib/module/RTCRtpReceiver.js +7 -7
  232. package/lib/module/RTCRtpReceiver.js.map +1 -1
  233. package/lib/module/RTCRtpSendParameters.js +3 -3
  234. package/lib/module/RTCRtpSendParameters.js.map +1 -1
  235. package/lib/module/RTCRtpSender.js +7 -7
  236. package/lib/module/RTCRtpSender.js.map +1 -1
  237. package/lib/module/RTCRtpTransceiver.js.map +1 -1
  238. package/lib/module/RTCSessionDescription.js.map +1 -1
  239. package/lib/module/RTCTrackEvent.js +6 -6
  240. package/lib/module/RTCTrackEvent.js.map +1 -1
  241. package/lib/module/RTCUtil.js +28 -28
  242. package/lib/module/RTCUtil.js.map +1 -1
  243. package/lib/module/RTCView.js +5 -5
  244. package/lib/module/RTCView.js.map +1 -1
  245. package/lib/module/RTCView.web.js.map +1 -1
  246. package/lib/module/ScreenCapturePickerView.js.map +1 -1
  247. package/lib/module/ScreenCapturePickerView.web.js.map +1 -1
  248. package/lib/module/getDisplayMedia.js.map +1 -1
  249. package/lib/module/getUserMedia.js +23 -0
  250. package/lib/module/getUserMedia.js.map +1 -1
  251. package/lib/module/index.js.map +1 -1
  252. package/lib/module/index.web.js.map +1 -1
  253. package/lib/module/webStream.js.map +1 -1
  254. package/lib/typescript/Constraints.d.ts +19 -19
  255. package/lib/typescript/EventEmitter.d.ts +6 -6
  256. package/lib/typescript/Logger.d.ts +13 -13
  257. package/lib/typescript/MediaDevices.d.ts +30 -30
  258. package/lib/typescript/MediaStream.d.ts +48 -48
  259. package/lib/typescript/MediaStreamError.d.ts +6 -6
  260. package/lib/typescript/MediaStreamErrorEvent.d.ts +6 -6
  261. package/lib/typescript/MediaStreamTrack.d.ts +101 -101
  262. package/lib/typescript/MediaStreamTrackEvent.d.ts +19 -19
  263. package/lib/typescript/MessageEvent.d.ts +20 -20
  264. package/lib/typescript/Permissions.d.ts +55 -55
  265. package/lib/typescript/RTCAudioSession.d.ts +10 -10
  266. package/lib/typescript/RTCDataChannel.d.ts +43 -43
  267. package/lib/typescript/RTCDataChannelEvent.d.ts +19 -19
  268. package/lib/typescript/RTCDataPacketCryptor.d.ts +12 -12
  269. package/lib/typescript/RTCDataPacketCryptorFactory.d.ts +6 -6
  270. package/lib/typescript/RTCErrorEvent.d.ts +12 -12
  271. package/lib/typescript/RTCFrameCryptor.d.ts +47 -47
  272. package/lib/typescript/RTCFrameCryptorFactory.d.ts +21 -21
  273. package/lib/typescript/RTCIceCandidate.d.ts +17 -17
  274. package/lib/typescript/RTCIceCandidateEvent.d.ts +20 -20
  275. package/lib/typescript/RTCKeyProvider.d.ts +21 -21
  276. package/lib/typescript/RTCPIPView.d.ts +15 -15
  277. package/lib/typescript/RTCPIPView.web.d.ts +13 -13
  278. package/lib/typescript/RTCPeerConnection.d.ts +117 -117
  279. package/lib/typescript/RTCRtcpParameters.d.ts +10 -10
  280. package/lib/typescript/RTCRtpCapabilities.d.ts +9 -9
  281. package/lib/typescript/RTCRtpCodecCapability.d.ts +7 -7
  282. package/lib/typescript/RTCRtpCodecParameters.d.ts +16 -16
  283. package/lib/typescript/RTCRtpEncodingParameters.d.ts +23 -23
  284. package/lib/typescript/RTCRtpHeaderExtension.d.ts +12 -12
  285. package/lib/typescript/RTCRtpParameters.d.ts +19 -19
  286. package/lib/typescript/RTCRtpReceiveParameters.d.ts +4 -4
  287. package/lib/typescript/RTCRtpReceiver.d.ts +21 -21
  288. package/lib/typescript/RTCRtpSendParameters.d.ts +20 -20
  289. package/lib/typescript/RTCRtpSender.d.ts +22 -22
  290. package/lib/typescript/RTCRtpTransceiver.d.ts +31 -31
  291. package/lib/typescript/RTCSessionDescription.d.ts +12 -12
  292. package/lib/typescript/RTCTrackEvent.d.ts +29 -29
  293. package/lib/typescript/RTCUtil.d.ts +37 -37
  294. package/lib/typescript/RTCView.d.ts +117 -117
  295. package/lib/typescript/RTCView.web.d.ts +25 -25
  296. package/lib/typescript/ScreenCapturePickerView.d.ts +2 -2
  297. package/lib/typescript/ScreenCapturePickerView.web.d.ts +1 -1
  298. package/lib/typescript/getDisplayMedia.d.ts +2 -2
  299. package/lib/typescript/getUserMedia.d.ts +7 -7
  300. package/lib/typescript/index.d.ts +22 -22
  301. package/lib/typescript/index.web.d.ts +101 -101
  302. package/lib/typescript/webStream.d.ts +3 -3
  303. package/livekit-react-native-webrtc.podspec +29 -29
  304. package/macos/RCTWebRTC.xcodeproj/project.pbxproj +324 -324
  305. package/macos/RCTWebRTC.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -7
  306. package/macos/RCTWebRTC.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -8
  307. package/metro.config.js +7 -7
  308. package/metro.config.macos.js +14 -14
  309. package/package.json +66 -66
  310. package/react-native.config.js +11 -11
  311. package/src/.eslintrc.cjs +67 -67
  312. package/src/Constraints.ts +20 -20
  313. package/src/EventEmitter.ts +65 -65
  314. package/src/Logger.ts +49 -49
  315. package/src/MediaDevices.ts +53 -53
  316. package/src/MediaStream.ts +161 -161
  317. package/src/MediaStreamError.ts +12 -12
  318. package/src/MediaStreamErrorEvent.ts +11 -11
  319. package/src/MediaStreamTrack.ts +282 -282
  320. package/src/MediaStreamTrackEvent.ts +25 -25
  321. package/src/MessageEvent.ts +26 -26
  322. package/src/Permissions.ts +133 -133
  323. package/src/RTCAudioSession.ts +25 -25
  324. package/src/RTCDataChannel.ts +190 -190
  325. package/src/RTCDataChannelEvent.ts +28 -28
  326. package/src/RTCDataPacketCryptor.ts +90 -90
  327. package/src/RTCDataPacketCryptorFactory.ts +24 -24
  328. package/src/RTCErrorEvent.ts +20 -20
  329. package/src/RTCFrameCryptor.ts +162 -162
  330. package/src/RTCFrameCryptorFactory.ts +101 -101
  331. package/src/RTCIceCandidate.ts +29 -29
  332. package/src/RTCIceCandidateEvent.ts +26 -26
  333. package/src/RTCKeyProvider.ts +117 -117
  334. package/src/RTCPIPView.tsx +46 -46
  335. package/src/RTCPIPView.web.tsx +18 -18
  336. package/src/RTCPeerConnection.ts +935 -832
  337. package/src/RTCRtcpParameters.ts +23 -23
  338. package/src/RTCRtpCapabilities.ts +16 -16
  339. package/src/RTCRtpCodecCapability.ts +12 -12
  340. package/src/RTCRtpCodecParameters.ts +44 -44
  341. package/src/RTCRtpEncodingParameters.ts +90 -90
  342. package/src/RTCRtpHeaderExtension.ts +27 -27
  343. package/src/RTCRtpParameters.ts +37 -37
  344. package/src/RTCRtpReceiveParameters.ts +7 -7
  345. package/src/RTCRtpReceiver.ts +60 -60
  346. package/src/RTCRtpSendParameters.ts +63 -63
  347. package/src/RTCRtpSender.ts +78 -78
  348. package/src/RTCRtpTransceiver.ts +107 -107
  349. package/src/RTCSessionDescription.ts +30 -30
  350. package/src/RTCTrackEvent.ts +42 -42
  351. package/src/RTCUtil.ts +211 -211
  352. package/src/RTCView.ts +122 -122
  353. package/src/RTCView.web.tsx +80 -80
  354. package/src/ScreenCapturePickerView.ts +4 -4
  355. package/src/ScreenCapturePickerView.web.tsx +3 -3
  356. package/src/getDisplayMedia.ts +30 -30
  357. package/src/getUserMedia.ts +136 -111
  358. package/src/index.ts +107 -107
  359. package/src/index.web.ts +191 -191
  360. package/src/webStream.ts +31 -31
  361. package/tools/format.sh +6 -6
  362. package/tools/release.sh +45 -45
  363. package/tsconfig.json +17 -17
package/.clang-format CHANGED
@@ -1,11 +1,11 @@
1
- ---
2
- BasedOnStyle: Chromium
3
- BinPackArguments: 'false'
4
- ColumnLimit: '120'
5
- IndentWidth: '4'
6
- ObjCBlockIndentWidth: '4'
7
- ObjCSpaceBeforeProtocolList: 'false'
8
- PointerAlignment: Right
9
- UseTab: Never
10
-
11
- ...
1
+ ---
2
+ BasedOnStyle: Chromium
3
+ BinPackArguments: 'false'
4
+ ColumnLimit: '120'
5
+ IndentWidth: '4'
6
+ ObjCBlockIndentWidth: '4'
7
+ ObjCSpaceBeforeProtocolList: 'false'
8
+ PointerAlignment: Right
9
+ UseTab: Never
10
+
11
+ ...
package/.eslintignore CHANGED
@@ -1,6 +1,6 @@
1
- examples
2
- lib
3
- tools
4
-
5
- metro.*.js
6
- react-native.config.js
1
+ examples
2
+ lib
3
+ tools
4
+
5
+ metro.*.js
6
+ react-native.config.js
package/.nvmrc CHANGED
@@ -1 +1 @@
1
- 22
1
+ 22
package/ISSUE_TEMPLATE.md CHANGED
@@ -1,40 +1,40 @@
1
- <!--
2
- If you have any questions then please use our Community Discourse: https://react-native-webrtc.discourse.group/
3
- Otherwise you are in the right place for reporting bugs.
4
-
5
- Please include as much information as possible and make the issue title as descriptive as you can.
6
- But most of all please take your time and explain to the best of your abilities.
7
-
8
- Code samples can be very helpful but even more so if displayed correctly.
9
- Here is an example of how you can use syntax highlighting.
10
-
11
- ```javascript
12
-
13
- console.log( 'Hello World' );
14
-
15
- ```
16
-
17
- More info can be found over here.
18
- https://docs.github.com/en/get-started/writing-on-github/working-with-advanced-formatting/creating-and-highlighting-code-blocks#syntax-highlighting
19
- -->
20
-
21
- #### Expected Behavior:
22
- <!--
23
- Explain what you expect to happen.
24
- -->
25
-
26
- #### Observed Behavior:
27
- <!--
28
- Explain what is actually happening.
29
- -->
30
-
31
- #### Steps to reproduce the issue:
32
- <!--
33
- Explain how the issue can be reproduced.
34
- If we manage to reproduce the issue then it is more likely to be addressed in an update.
35
- -->
36
-
37
- #### Platform Information
38
- * **React Native Version**:
39
- * **WebRTC Module Version**:
40
- * **Platform OS + Version**: <!-- Android / iOS / macOS / Web / Expo -->
1
+ <!--
2
+ If you have any questions then please use our Community Discourse: https://react-native-webrtc.discourse.group/
3
+ Otherwise you are in the right place for reporting bugs.
4
+
5
+ Please include as much information as possible and make the issue title as descriptive as you can.
6
+ But most of all please take your time and explain to the best of your abilities.
7
+
8
+ Code samples can be very helpful but even more so if displayed correctly.
9
+ Here is an example of how you can use syntax highlighting.
10
+
11
+ ```javascript
12
+
13
+ console.log( 'Hello World' );
14
+
15
+ ```
16
+
17
+ More info can be found over here.
18
+ https://docs.github.com/en/get-started/writing-on-github/working-with-advanced-formatting/creating-and-highlighting-code-blocks#syntax-highlighting
19
+ -->
20
+
21
+ #### Expected Behavior:
22
+ <!--
23
+ Explain what you expect to happen.
24
+ -->
25
+
26
+ #### Observed Behavior:
27
+ <!--
28
+ Explain what is actually happening.
29
+ -->
30
+
31
+ #### Steps to reproduce the issue:
32
+ <!--
33
+ Explain how the issue can be reproduced.
34
+ If we manage to reproduce the issue then it is more likely to be addressed in an update.
35
+ -->
36
+
37
+ #### Platform Information
38
+ * **React Native Version**:
39
+ * **WebRTC Module Version**:
40
+ * **Platform OS + Version**: <!-- Android / iOS / macOS / Web / Expo -->
package/LICENSE CHANGED
@@ -1,22 +1,22 @@
1
- The MIT License (MIT)
2
-
3
- Copyright (c) 2017-present React Native WebRTC Community
4
- Copyright (c) 2015-2017 Howard Yang
5
-
6
- Permission is hereby granted, free of charge, to any person obtaining a copy
7
- of this software and associated documentation files (the "Software"), to deal
8
- in the Software without restriction, including without limitation the rights
9
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
- copies of the Software, and to permit persons to whom the Software is
11
- furnished to do so, subject to the following conditions:
12
-
13
- The above copyright notice and this permission notice shall be included in all
14
- copies or substantial portions of the Software.
15
-
16
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
- SOFTWARE.
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2017-present React Native WebRTC Community
4
+ Copyright (c) 2015-2017 Howard Yang
5
+
6
+ Permission is hereby granted, free of charge, to any person obtaining a copy
7
+ of this software and associated documentation files (the "Software"), to deal
8
+ in the Software without restriction, including without limitation the rights
9
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
+ copies of the Software, and to permit persons to whom the Software is
11
+ furnished to do so, subject to the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be included in all
14
+ copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
+ SOFTWARE.
package/README.md CHANGED
@@ -1,103 +1,103 @@
1
- [<img src="https://avatars.githubusercontent.com/u/42463376" alt="React Native WebRTC" style="height: 6em;" />](https://github.com/react-native-webrtc/react-native-webrtc)
2
-
3
- # React-Native-WebRTC for LiveKit (WiLang Fork)
4
- [![npm version](https://img.shields.io/npm/v/@sbhjt-gr/react-native-webrtc)](https://www.npmjs.com/package/@sbhjt-gr/react-native-webrtc)
5
- [![Discourse topics](https://img.shields.io/discourse/topics?server=https%3A%2F%2Freact-native-webrtc.discourse.group%2F)](https://react-native-webrtc.discourse.group/)
6
-
7
- A WebRTC module for React Native with native Palabra AI translation support.
8
-
9
- > [!NOTE]
10
- > This is a fork with integrated Palabra translation for real-time speech-to-speech translation during WebRTC calls.
11
- > Used by WiLang app for video/voice call translation.
12
-
13
- ## Palabra Translation
14
-
15
- This fork adds native Palabra AI integration for translating remote peer audio in real-time:
16
-
17
- ```javascript
18
- import { startPalabraTranslation, stopPalabraTranslation } from '@sbhjt-gr/react-native-webrtc';
19
-
20
- await startPalabraTranslation(
21
- peerConnectionId,
22
- remoteAudioTrackId,
23
- PALABRA_CLIENT_ID,
24
- PALABRA_CLIENT_SECRET,
25
- 'en',
26
- 'es',
27
- 'https://api.palabra.ai'
28
- );
29
-
30
- await stopPalabraTranslation();
31
- ```
32
-
33
- ## Feature Overview
34
-
35
- | | Android | iOS | tvOS | macOS* | Windows* | Web* | Expo* |
36
- | :- | :-: | :-: | :-: | :-: | :-: | :-: | :-: |
37
- | Audio/Video | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | - | - | :heavy_check_mark: | :heavy_check_mark: |
38
- | Data Channels | :heavy_check_mark: | :heavy_check_mark: | - | - | - | :heavy_check_mark: | :heavy_check_mark: |
39
- | Screen Capture | :heavy_check_mark: | :heavy_check_mark: | - | - | - | :heavy_check_mark: | :heavy_check_mark: |
40
- | Plan B | - | - | - | - | - | - | - |
41
- | Unified Plan* | :heavy_check_mark: | :heavy_check_mark: | - | - | - | :heavy_check_mark: | :heavy_check_mark: |
42
- | Simulcast* | :heavy_check_mark: | :heavy_check_mark: | - | - | - | :heavy_check_mark: | :heavy_check_mark: |
43
-
44
- > **macOS** - We don't currently actively support macOS at this time.
45
- Support might return in the future.
46
-
47
- > **Windows** - We don't currently support the [react-native-windows](https://github.com/microsoft/react-native-windows) platform at this time.
48
- Anyone interested in getting the ball rolling? We're open to contributions.
49
-
50
- > **Web** - The [react-native-webrtc-web-shim](https://github.com/react-native-webrtc/react-native-webrtc-web-shim) project provides a shim for [react-native-web](https://github.com/necolas/react-native-web) support.
51
- Which will allow you to use [(almost)](https://github.com/react-native-webrtc/react-native-webrtc-web-shim/tree/main#setup) the exact same code in your [react-native-web](https://github.com/necolas/react-native-web) project as you would with [react-native](https://reactnative.dev/) directly.
52
-
53
- > **Expo** - As this module includes native code it is not available in the [Expo Go](https://expo.dev/client) app by default.
54
- However you can get things working via the [expo-dev-client](https://docs.expo.dev/development/getting-started/) library and out-of-tree [config-plugins/react-native-webrtc](https://github.com/expo/config-plugins/tree/master/packages/react-native-webrtc) package.
55
-
56
- > **Unified Plan** - As of version 106.0.0 Unified Plan is the only supported mode.
57
- Those still in need of Plan B will need to use an older release.
58
-
59
- > **Simulcast** - As of version 111.0.0 Simulcast is now possible with ease.
60
- Software encode/decode factories have been enabled by default.
61
-
62
- ## WebRTC Revision
63
-
64
- * Currently used revision: [M125](https://github.com/webrtc-sdk/webrtc/tree/m125_release)
65
- * Supported architectures
66
- * Android: armeabi-v7a, arm64-v8a, x86, x86_64
67
- * iOS: arm64, x86_64
68
- * tvOS: arm64
69
- * macOS: arm64, x86_64
70
-
71
- ## Getting Started
72
-
73
- Use one of the following preferred package install methods to immediately get going.
74
- Don't forget to follow platform guides below to cover any extra required steps.
75
-
76
- **npm:** `npm install @sbhjt-gr/react-native-webrtc --save`
77
- **yarn:** `yarn add @sbhjt-gr/react-native-webrtc`
78
- **pnpm:** `pnpm install @sbhjt-gr/react-native-webrtc`
79
-
80
- ## Guides
81
-
82
- - [Android Install](./Documentation/AndroidInstallation.md)
83
- - [iOS Install](./Documentation/iOSInstallation.md)
84
- - [tvOS Install](./Documentation/tvOSInstallation.md)
85
- - [Basic Usage](./Documentation/BasicUsage.md)
86
- - [Step by Step Call Guide](./Documentation/CallGuide.md)
87
- - [Improving Call Reliability](./Documentation/ImprovingCallReliability.md)
88
- - [Migrating to Unified Plan](https://docs.google.com/document/d/1-ZfikoUtoJa9k-GZG1daN0BU3IjIanQ_JSscHxQesvU/edit#heading=h.wuu7dx8tnifl)
89
-
90
- ## Example Projects
91
-
92
- We have some very basic example projects included in the [examples](./examples) directory.
93
- Don't worry, there are plans to include a much more broader example with backend included.
94
-
95
- ## Community
96
-
97
- Come join our [Discourse Community](https://react-native-webrtc.discourse.group/) if you want to discuss any React Native and WebRTC related topics.
98
- Everyone is welcome and every little helps.
99
-
100
- ## Related Projects
101
-
102
- Looking for extra functionality coverage?
103
- The [react-native-webrtc](https://github.com/react-native-webrtc) organization provides a number of packages which are more than useful when developing Real Time Communication applications.
1
+ [<img src="https://avatars.githubusercontent.com/u/42463376" alt="React Native WebRTC" style="height: 6em;" />](https://github.com/react-native-webrtc/react-native-webrtc)
2
+
3
+ # React-Native-WebRTC for LiveKit (WiLang Fork)
4
+ [![npm version](https://img.shields.io/npm/v/@sbhjt-gr/react-native-webrtc)](https://www.npmjs.com/package/@sbhjt-gr/react-native-webrtc)
5
+ [![Discourse topics](https://img.shields.io/discourse/topics?server=https%3A%2F%2Freact-native-webrtc.discourse.group%2F)](https://react-native-webrtc.discourse.group/)
6
+
7
+ A WebRTC module for React Native with native Palabra AI translation support.
8
+
9
+ > [!NOTE]
10
+ > This is a fork with integrated Palabra translation for real-time speech-to-speech translation during WebRTC calls.
11
+ > Used by WiLang app for video/voice call translation.
12
+
13
+ ## Palabra Translation
14
+
15
+ This fork adds native Palabra AI integration for translating remote peer audio in real-time:
16
+
17
+ ```javascript
18
+ import { startPalabraTranslation, stopPalabraTranslation } from '@sbhjt-gr/react-native-webrtc';
19
+
20
+ await startPalabraTranslation(
21
+ peerConnectionId,
22
+ remoteAudioTrackId,
23
+ PALABRA_CLIENT_ID,
24
+ PALABRA_CLIENT_SECRET,
25
+ 'en',
26
+ 'es',
27
+ 'https://api.palabra.ai'
28
+ );
29
+
30
+ await stopPalabraTranslation();
31
+ ```
32
+
33
+ ## Feature Overview
34
+
35
+ | | Android | iOS | tvOS | macOS* | Windows* | Web* | Expo* |
36
+ | :- | :-: | :-: | :-: | :-: | :-: | :-: | :-: |
37
+ | Audio/Video | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | - | - | :heavy_check_mark: | :heavy_check_mark: |
38
+ | Data Channels | :heavy_check_mark: | :heavy_check_mark: | - | - | - | :heavy_check_mark: | :heavy_check_mark: |
39
+ | Screen Capture | :heavy_check_mark: | :heavy_check_mark: | - | - | - | :heavy_check_mark: | :heavy_check_mark: |
40
+ | Plan B | - | - | - | - | - | - | - |
41
+ | Unified Plan* | :heavy_check_mark: | :heavy_check_mark: | - | - | - | :heavy_check_mark: | :heavy_check_mark: |
42
+ | Simulcast* | :heavy_check_mark: | :heavy_check_mark: | - | - | - | :heavy_check_mark: | :heavy_check_mark: |
43
+
44
+ > **macOS** - We don't currently actively support macOS at this time.
45
+ Support might return in the future.
46
+
47
+ > **Windows** - We don't currently support the [react-native-windows](https://github.com/microsoft/react-native-windows) platform at this time.
48
+ Anyone interested in getting the ball rolling? We're open to contributions.
49
+
50
+ > **Web** - The [react-native-webrtc-web-shim](https://github.com/react-native-webrtc/react-native-webrtc-web-shim) project provides a shim for [react-native-web](https://github.com/necolas/react-native-web) support.
51
+ Which will allow you to use [(almost)](https://github.com/react-native-webrtc/react-native-webrtc-web-shim/tree/main#setup) the exact same code in your [react-native-web](https://github.com/necolas/react-native-web) project as you would with [react-native](https://reactnative.dev/) directly.
52
+
53
+ > **Expo** - As this module includes native code it is not available in the [Expo Go](https://expo.dev/client) app by default.
54
+ However you can get things working via the [expo-dev-client](https://docs.expo.dev/development/getting-started/) library and out-of-tree [config-plugins/react-native-webrtc](https://github.com/expo/config-plugins/tree/master/packages/react-native-webrtc) package.
55
+
56
+ > **Unified Plan** - As of version 106.0.0 Unified Plan is the only supported mode.
57
+ Those still in need of Plan B will need to use an older release.
58
+
59
+ > **Simulcast** - As of version 111.0.0 Simulcast is now possible with ease.
60
+ Software encode/decode factories have been enabled by default.
61
+
62
+ ## WebRTC Revision
63
+
64
+ * Currently used revision: [M125](https://github.com/webrtc-sdk/webrtc/tree/m125_release)
65
+ * Supported architectures
66
+ * Android: armeabi-v7a, arm64-v8a, x86, x86_64
67
+ * iOS: arm64, x86_64
68
+ * tvOS: arm64
69
+ * macOS: arm64, x86_64
70
+
71
+ ## Getting Started
72
+
73
+ Use one of the following preferred package install methods to immediately get going.
74
+ Don't forget to follow platform guides below to cover any extra required steps.
75
+
76
+ **npm:** `npm install @sbhjt-gr/react-native-webrtc --save`
77
+ **yarn:** `yarn add @sbhjt-gr/react-native-webrtc`
78
+ **pnpm:** `pnpm install @sbhjt-gr/react-native-webrtc`
79
+
80
+ ## Guides
81
+
82
+ - [Android Install](./Documentation/AndroidInstallation.md)
83
+ - [iOS Install](./Documentation/iOSInstallation.md)
84
+ - [tvOS Install](./Documentation/tvOSInstallation.md)
85
+ - [Basic Usage](./Documentation/BasicUsage.md)
86
+ - [Step by Step Call Guide](./Documentation/CallGuide.md)
87
+ - [Improving Call Reliability](./Documentation/ImprovingCallReliability.md)
88
+ - [Migrating to Unified Plan](https://docs.google.com/document/d/1-ZfikoUtoJa9k-GZG1daN0BU3IjIanQ_JSscHxQesvU/edit#heading=h.wuu7dx8tnifl)
89
+
90
+ ## Example Projects
91
+
92
+ We have some very basic example projects included in the [examples](./examples) directory.
93
+ Don't worry, there are plans to include a much more broader example with backend included.
94
+
95
+ ## Community
96
+
97
+ Come join our [Discourse Community](https://react-native-webrtc.discourse.group/) if you want to discuss any React Native and WebRTC related topics.
98
+ Everyone is welcome and every little helps.
99
+
100
+ ## Related Projects
101
+
102
+ Looking for extra functionality coverage?
103
+ The [react-native-webrtc](https://github.com/react-native-webrtc) organization provides a number of packages which are more than useful when developing Real Time Communication applications.
@@ -1,37 +1,37 @@
1
- apply plugin: 'com.android.library'
2
-
3
- def safeExtGet(prop, fallback) {
4
- rootProject.ext.has(prop) ? rootProject.ext.get(prop) : fallback
5
- }
6
-
7
- android {
8
- def agpVersion = com.android.Version.ANDROID_GRADLE_PLUGIN_VERSION
9
- if (agpVersion.tokenize('.')[0].toInteger() >= 7) {
10
- namespace "com.oney.WebRTCModule"
11
- }
12
-
13
- compileSdkVersion safeExtGet('compileSdkVersion', 24)
14
- buildToolsVersion safeExtGet('buildToolsVersion', "23.0.1")
15
-
16
- defaultConfig {
17
- minSdkVersion 24
18
- targetSdkVersion safeExtGet('targetSdkVersion', 24)
19
- versionCode 1
20
- versionName "1.0"
21
- consumerProguardFiles 'consumer-rules.pro'
22
- }
23
-
24
- // WebRTC requires Java 8 features
25
- // https://groups.google.com/forum/?utm_medium=email&utm_source=footer#!msg/discuss-webrtc/V1h2uQMDCkA/RA-uzncVAAAJ
26
- compileOptions {
27
- sourceCompatibility JavaVersion.VERSION_1_8
28
- targetCompatibility JavaVersion.VERSION_1_8
29
- }
30
- }
31
-
32
- dependencies {
33
- implementation "com.facebook.react:react-android:+"
34
- api 'io.github.webrtc-sdk:android:137.7151.04'
35
- implementation "androidx.core:core:1.7.0"
36
- implementation "com.squareup.okhttp3:okhttp:4.12.0"
37
- }
1
+ apply plugin: 'com.android.library'
2
+
3
+ def safeExtGet(prop, fallback) {
4
+ rootProject.ext.has(prop) ? rootProject.ext.get(prop) : fallback
5
+ }
6
+
7
+ android {
8
+ def agpVersion = com.android.Version.ANDROID_GRADLE_PLUGIN_VERSION
9
+ if (agpVersion.tokenize('.')[0].toInteger() >= 7) {
10
+ namespace "com.oney.WebRTCModule"
11
+ }
12
+
13
+ compileSdkVersion safeExtGet('compileSdkVersion', 24)
14
+ buildToolsVersion safeExtGet('buildToolsVersion', "23.0.1")
15
+
16
+ defaultConfig {
17
+ minSdkVersion 24
18
+ targetSdkVersion safeExtGet('targetSdkVersion', 24)
19
+ versionCode 1
20
+ versionName "1.0"
21
+ consumerProguardFiles 'consumer-rules.pro'
22
+ }
23
+
24
+ // WebRTC requires Java 8 features
25
+ // https://groups.google.com/forum/?utm_medium=email&utm_source=footer#!msg/discuss-webrtc/V1h2uQMDCkA/RA-uzncVAAAJ
26
+ compileOptions {
27
+ sourceCompatibility JavaVersion.VERSION_1_8
28
+ targetCompatibility JavaVersion.VERSION_1_8
29
+ }
30
+ }
31
+
32
+ dependencies {
33
+ implementation "com.facebook.react:react-android:+"
34
+ api 'io.github.webrtc-sdk:android:137.7151.04'
35
+ implementation "androidx.core:core:1.7.0"
36
+ implementation "com.squareup.okhttp3:okhttp:4.12.0"
37
+ }
@@ -1,3 +1,3 @@
1
- # WebRTC
2
- -keep class org.webrtc.** { *; }
3
- -keep class org.jni_zero.** { *; }
1
+ # WebRTC
2
+ -keep class org.webrtc.** { *; }
3
+ -keep class org.jni_zero.** { *; }
@@ -1,11 +1,11 @@
1
- <manifest xmlns:android="http://schemas.android.com/apk/res/android"
2
- package="com.oney.WebRTCModule"
3
- xmlns:tools="http://schemas.android.com/tools"
4
- >
5
- <application>
6
- <service
7
- android:name=".MediaProjectionService"
8
- android:foregroundServiceType="mediaProjection">
9
- </service>
10
- </application>
11
- </manifest>
1
+ <manifest xmlns:android="http://schemas.android.com/apk/res/android"
2
+ package="com.oney.WebRTCModule"
3
+ xmlns:tools="http://schemas.android.com/tools"
4
+ >
5
+ <application>
6
+ <service
7
+ android:name=".MediaProjectionService"
8
+ android:foregroundServiceType="mediaProjection">
9
+ </service>
10
+ </application>
11
+ </manifest>