agora-electron-sdk 4.1.1-rc.1 → 4.2.0-dev.13

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 (358) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +143 -143
  3. package/gulpfile.js +5 -4
  4. package/js/AgoraSdk.js +62 -60
  5. package/js/Private/AgoraBase.js +4575 -3269
  6. package/js/Private/AgoraMediaBase.js +968 -564
  7. package/js/Private/AgoraMediaPlayerTypes.js +422 -310
  8. package/js/Private/IAgoraLog.js +86 -74
  9. package/js/Private/IAgoraMediaEngine.js +32 -32
  10. package/js/Private/IAgoraMediaPlayer.js +16 -16
  11. package/js/Private/IAgoraMediaPlayerSource.js +3 -3
  12. package/js/Private/IAgoraMediaRecorder.js +12 -12
  13. package/js/Private/IAgoraMediaStreamingSource.js +84 -0
  14. package/js/Private/IAgoraMusicContentCenter.js +239 -81
  15. package/js/Private/IAgoraRhythmPlayer.js +70 -62
  16. package/js/Private/IAgoraRtcEngine.js +1807 -948
  17. package/js/Private/IAgoraRtcEngineEx.js +26 -18
  18. package/js/Private/IAgoraSpatialAudio.js +74 -30
  19. package/js/Private/IAudioDeviceManager.js +20 -20
  20. package/js/Private/extension/AgoraBaseExtension.js +2 -2
  21. package/js/Private/extension/AgoraMediaBaseExtension.js +2 -2
  22. package/js/Private/extension/AgoraMediaPlayerTypesExtension.js +2 -2
  23. package/js/Private/extension/IAgoraLogExtension.js +2 -2
  24. package/js/Private/extension/IAgoraMediaEngineExtension.js +2 -2
  25. package/js/Private/extension/IAgoraMediaPlayerExtension.js +2 -2
  26. package/js/Private/extension/IAgoraMediaPlayerSourceExtension.js +2 -2
  27. package/js/Private/extension/IAgoraMediaRecorderExtension.js +2 -2
  28. package/js/Private/extension/IAgoraMusicContentCenterExtension.js +2 -2
  29. package/js/Private/extension/IAgoraRhythmPlayerExtension.js +2 -2
  30. package/js/Private/extension/IAgoraRtcEngineExExtension.js +2 -2
  31. package/js/Private/extension/IAgoraRtcEngineExtension.js +2 -2
  32. package/js/Private/extension/IAgoraSpatialAudioExtension.js +2 -2
  33. package/js/Private/extension/IAudioDeviceManagerExtension.js +2 -2
  34. package/js/Private/impl/AgoraBaseImpl.js +23 -23
  35. package/js/Private/impl/AgoraMediaBaseImpl.js +118 -138
  36. package/js/Private/impl/IAgoraMediaEngineImpl.js +287 -325
  37. package/js/Private/impl/IAgoraMediaPlayerImpl.js +932 -938
  38. package/js/Private/impl/IAgoraMediaPlayerSourceImpl.js +63 -63
  39. package/js/Private/impl/IAgoraMediaRecorderImpl.js +47 -67
  40. package/js/Private/impl/IAgoraMusicContentCenterImpl.js +353 -323
  41. package/js/Private/impl/IAgoraRtcEngineExImpl.js +945 -907
  42. package/js/Private/impl/IAgoraRtcEngineImpl.js +4742 -4702
  43. package/js/Private/impl/IAgoraSpatialAudioImpl.js +362 -362
  44. package/js/Private/impl/IAudioDeviceManagerImpl.js +375 -375
  45. package/js/Private/internal/AudioDeviceManagerInternal.js +44 -44
  46. package/js/Private/internal/IrisApiEngine.js +391 -382
  47. package/js/Private/internal/LocalSpatialAudioEngineInternal.js +46 -46
  48. package/js/Private/internal/MediaEngineInternal.js +119 -123
  49. package/js/Private/internal/MediaPlayerInternal.js +215 -213
  50. package/js/Private/internal/MediaRecorderInternal.js +82 -81
  51. package/js/Private/internal/MusicContentCenterInternal.js +128 -130
  52. package/js/Private/internal/RtcEngineExInternal.js +422 -363
  53. package/js/Private/internal/emitter/EventEmitter.js +111 -111
  54. package/js/Private/ti/AgoraBase-ti.js +40 -40
  55. package/js/Private/ti/AgoraMediaBase-ti.js +71 -73
  56. package/js/Private/ti/AgoraMediaPlayerTypes-ti.js +5 -5
  57. package/js/Private/ti/IAgoraLog-ti.js +5 -5
  58. package/js/Private/ti/IAgoraMediaEngine-ti.js +5 -5
  59. package/js/Private/ti/IAgoraMediaPlayer-ti.js +38 -42
  60. package/js/Private/ti/IAgoraMediaPlayerSource-ti.js +48 -48
  61. package/js/Private/ti/IAgoraMediaRecorder-ti.js +5 -5
  62. package/js/Private/ti/IAgoraMediaStreamingSource-ti.js +5 -0
  63. package/js/Private/ti/IAgoraMusicContentCenter-ti.js +41 -41
  64. package/js/Private/ti/IAgoraRhythmPlayer-ti.js +5 -5
  65. package/js/Private/ti/IAgoraRtcEngine-ti.js +139 -139
  66. package/js/Private/ti/IAgoraRtcEngineEx-ti.js +5 -5
  67. package/js/Private/ti/IAgoraSpatialAudio-ti.js +5 -5
  68. package/js/Private/ti/IAudioDeviceManager-ti.js +5 -5
  69. package/js/Renderer/AgoraView.js +128 -131
  70. package/js/Renderer/IRenderer.js +40 -48
  71. package/js/Renderer/IRendererManager.js +9 -0
  72. package/js/Renderer/RendererManager.js +479 -392
  73. package/js/Renderer/{GlRenderer → WebGLRenderer}/index.js +469 -473
  74. package/js/Renderer/{GlRenderer → WebGLRenderer}/webgl-utils.js +1337 -1337
  75. package/js/Renderer/YUVCanvasRenderer/index.js +195 -185
  76. package/js/Renderer/index.js +18 -0
  77. package/js/Types.js +17 -29
  78. package/js/Utils.js +168 -173
  79. package/package.json +61 -103
  80. package/scripts/bootstrap.js +1 -1
  81. package/scripts/build.js +1 -0
  82. package/scripts/buildJS.js +3 -3
  83. package/scripts/clean.js +2 -1
  84. package/scripts/downloadPrebuild.js +5 -5
  85. package/scripts/getConfig.js +3 -2
  86. package/scripts/synclib.js +8 -5
  87. package/scripts/util.js +3 -2
  88. package/scripts/zipBuild.js +2 -1
  89. package/ts/AgoraSdk.ts +9 -6
  90. package/ts/Private/AgoraBase.ts +278 -173
  91. package/ts/Private/AgoraMediaBase.ts +167 -100
  92. package/ts/Private/AgoraMediaPlayerTypes.ts +1 -1
  93. package/ts/Private/IAgoraMediaEngine.ts +43 -56
  94. package/ts/Private/IAgoraMediaPlayer.ts +90 -104
  95. package/ts/Private/IAgoraMediaPlayerSource.ts +3 -8
  96. package/ts/Private/IAgoraMediaRecorder.ts +8 -35
  97. package/ts/Private/IAgoraMediaStreamingSource.ts +80 -0
  98. package/ts/Private/IAgoraMusicContentCenter.ts +93 -12
  99. package/ts/Private/IAgoraRtcEngine.ts +807 -910
  100. package/ts/Private/IAgoraRtcEngineEx.ts +187 -191
  101. package/ts/Private/IAgoraSpatialAudio.ts +40 -22
  102. package/ts/Private/IAudioDeviceManager.ts +35 -13
  103. package/ts/Private/extension/IAgoraMediaEngineExtension.ts +1 -1
  104. package/ts/Private/extension/IAgoraMediaPlayerExtension.ts +4 -7
  105. package/ts/Private/extension/IAgoraMediaRecorderExtension.ts +6 -1
  106. package/ts/Private/extension/IAgoraMusicContentCenterExtension.ts +1 -1
  107. package/ts/Private/extension/IAgoraRtcEngineExtension.ts +4 -4
  108. package/ts/Private/impl/AgoraBaseImpl.ts +3 -3
  109. package/ts/Private/impl/AgoraMediaBaseImpl.ts +36 -42
  110. package/ts/Private/impl/IAgoraMediaEngineImpl.ts +79 -127
  111. package/ts/Private/impl/IAgoraMediaPlayerImpl.ts +106 -106
  112. package/ts/Private/impl/IAgoraMediaRecorderImpl.ts +13 -45
  113. package/ts/Private/impl/IAgoraMusicContentCenterImpl.ts +61 -16
  114. package/ts/Private/impl/IAgoraRtcEngineExImpl.ts +129 -59
  115. package/ts/Private/impl/IAgoraRtcEngineImpl.ts +490 -416
  116. package/ts/Private/impl/IAgoraSpatialAudioImpl.ts +5 -3
  117. package/ts/Private/impl/IAudioDeviceManagerImpl.ts +4 -2
  118. package/ts/Private/internal/AudioDeviceManagerInternal.ts +6 -5
  119. package/ts/Private/internal/IrisApiEngine.ts +41 -32
  120. package/ts/Private/internal/LocalSpatialAudioEngineInternal.ts +17 -13
  121. package/ts/Private/internal/MediaEngineInternal.ts +9 -11
  122. package/ts/Private/internal/MediaPlayerInternal.ts +42 -31
  123. package/ts/Private/internal/MediaRecorderInternal.ts +24 -22
  124. package/ts/Private/internal/MusicContentCenterInternal.ts +16 -18
  125. package/ts/Private/internal/RtcEngineExInternal.ts +189 -66
  126. package/ts/Private/ti/AgoraMediaBase-ti.ts +9 -10
  127. package/ts/Private/ti/IAgoraMediaPlayer-ti.ts +0 -5
  128. package/{js/Private/ti/AgoraMediaPlayerTypes-ti.d.ts → ts/Private/ti/IAgoraMediaStreamingSource-ti.ts} +11 -6
  129. package/ts/Private/ti/IAgoraMusicContentCenter-ti.ts +4 -4
  130. package/ts/Private/ti/IAgoraRtcEngine-ti.ts +4 -4
  131. package/ts/Renderer/AgoraView.ts +12 -7
  132. package/ts/Renderer/IRenderer.ts +11 -16
  133. package/ts/Renderer/IRendererManager.ts +35 -0
  134. package/ts/Renderer/RendererManager.ts +146 -82
  135. package/ts/Renderer/{GlRenderer → WebGLRenderer}/index.ts +36 -51
  136. package/ts/Renderer/YUVCanvasRenderer/index.ts +41 -25
  137. package/ts/Renderer/index.ts +2 -0
  138. package/ts/Types.ts +43 -23
  139. package/ts/Utils.ts +7 -12
  140. package/types/AgoraSdk.d.ts +38 -36
  141. package/types/AgoraSdk.d.ts.map +1 -0
  142. package/types/Private/AgoraBase.d.ts +4455 -4358
  143. package/types/Private/AgoraBase.d.ts.map +1 -0
  144. package/types/Private/AgoraMediaBase.d.ts +1125 -1070
  145. package/types/Private/AgoraMediaBase.d.ts.map +1 -0
  146. package/types/Private/AgoraMediaPlayerTypes.d.ts +409 -408
  147. package/types/Private/AgoraMediaPlayerTypes.d.ts.map +1 -0
  148. package/types/Private/IAgoraLog.d.ts +81 -80
  149. package/types/Private/IAgoraLog.d.ts.map +1 -0
  150. package/types/Private/IAgoraMediaEngine.d.ts +184 -193
  151. package/types/Private/IAgoraMediaEngine.d.ts.map +1 -0
  152. package/types/Private/IAgoraMediaPlayer.d.ts +533 -546
  153. package/types/Private/IAgoraMediaPlayer.d.ts.map +1 -0
  154. package/types/Private/IAgoraMediaPlayerSource.d.ts +83 -88
  155. package/types/Private/IAgoraMediaPlayerSource.d.ts.map +1 -0
  156. package/types/Private/IAgoraMediaRecorder.d.ts +29 -49
  157. package/types/Private/IAgoraMediaRecorder.d.ts.map +1 -0
  158. package/types/Private/IAgoraMediaStreamingSource.d.ts +42 -0
  159. package/types/Private/IAgoraMediaStreamingSource.d.ts.map +1 -0
  160. package/types/Private/IAgoraMusicContentCenter.d.ts +336 -255
  161. package/types/Private/IAgoraMusicContentCenter.d.ts.map +1 -0
  162. package/types/Private/IAgoraRhythmPlayer.d.ts +65 -64
  163. package/types/Private/IAgoraRhythmPlayer.d.ts.map +1 -0
  164. package/types/Private/IAgoraRtcEngine.d.ts +4948 -5058
  165. package/types/Private/IAgoraRtcEngine.d.ts.map +1 -0
  166. package/types/Private/IAgoraRtcEngineEx.d.ts +554 -570
  167. package/types/Private/IAgoraRtcEngineEx.d.ts.map +1 -0
  168. package/types/Private/IAgoraSpatialAudio.d.ts +266 -248
  169. package/types/Private/IAgoraSpatialAudio.d.ts.map +1 -0
  170. package/types/Private/IAudioDeviceManager.d.ts +255 -233
  171. package/types/Private/IAudioDeviceManager.d.ts.map +1 -0
  172. package/types/Private/extension/AgoraBaseExtension.d.ts +2 -1
  173. package/types/Private/extension/AgoraBaseExtension.d.ts.map +1 -0
  174. package/types/Private/extension/AgoraMediaBaseExtension.d.ts +2 -1
  175. package/types/Private/extension/AgoraMediaBaseExtension.d.ts.map +1 -0
  176. package/types/Private/extension/AgoraMediaPlayerTypesExtension.d.ts +2 -1
  177. package/types/Private/extension/AgoraMediaPlayerTypesExtension.d.ts.map +1 -0
  178. package/types/Private/extension/IAgoraLogExtension.d.ts +2 -1
  179. package/types/Private/extension/IAgoraLogExtension.d.ts.map +1 -0
  180. package/types/Private/extension/IAgoraMediaEngineExtension.d.ts +41 -40
  181. package/types/Private/extension/IAgoraMediaEngineExtension.d.ts.map +1 -0
  182. package/types/Private/extension/IAgoraMediaPlayerExtension.d.ts +47 -46
  183. package/types/Private/extension/IAgoraMediaPlayerExtension.d.ts.map +1 -0
  184. package/types/Private/extension/IAgoraMediaPlayerSourceExtension.d.ts +2 -1
  185. package/types/Private/extension/IAgoraMediaPlayerSourceExtension.d.ts.map +1 -0
  186. package/types/Private/extension/IAgoraMediaRecorderExtension.d.ts +45 -40
  187. package/types/Private/extension/IAgoraMediaRecorderExtension.d.ts.map +1 -0
  188. package/types/Private/extension/IAgoraMusicContentCenterExtension.d.ts +21 -20
  189. package/types/Private/extension/IAgoraMusicContentCenterExtension.d.ts.map +1 -0
  190. package/types/Private/extension/IAgoraRhythmPlayerExtension.d.ts +2 -1
  191. package/types/Private/extension/IAgoraRhythmPlayerExtension.d.ts.map +1 -0
  192. package/types/Private/extension/IAgoraRtcEngineExExtension.d.ts +2 -1
  193. package/types/Private/extension/IAgoraRtcEngineExExtension.d.ts.map +1 -0
  194. package/types/Private/extension/IAgoraRtcEngineExtension.d.ts +43 -42
  195. package/types/Private/extension/IAgoraRtcEngineExtension.d.ts.map +1 -0
  196. package/types/Private/extension/IAgoraSpatialAudioExtension.d.ts +2 -1
  197. package/types/Private/extension/IAgoraSpatialAudioExtension.d.ts.map +1 -0
  198. package/types/Private/extension/IAudioDeviceManagerExtension.d.ts +2 -1
  199. package/types/Private/extension/IAudioDeviceManagerExtension.d.ts.map +1 -0
  200. package/types/Private/impl/AgoraBaseImpl.d.ts +3 -2
  201. package/types/Private/impl/AgoraBaseImpl.d.ts.map +1 -0
  202. package/types/Private/impl/AgoraMediaBaseImpl.d.ts +9 -7
  203. package/types/Private/impl/AgoraMediaBaseImpl.d.ts.map +1 -0
  204. package/types/Private/impl/IAgoraMediaEngineImpl.d.ts +40 -43
  205. package/types/Private/impl/IAgoraMediaEngineImpl.d.ts.map +1 -0
  206. package/types/Private/impl/IAgoraMediaPlayerImpl.d.ts +141 -141
  207. package/types/Private/impl/IAgoraMediaPlayerImpl.d.ts.map +1 -0
  208. package/types/Private/impl/IAgoraMediaPlayerSourceImpl.d.ts +3 -2
  209. package/types/Private/impl/IAgoraMediaPlayerSourceImpl.d.ts.map +1 -0
  210. package/types/Private/impl/IAgoraMediaRecorderImpl.d.ts +11 -13
  211. package/types/Private/impl/IAgoraMediaRecorderImpl.d.ts.map +1 -0
  212. package/types/Private/impl/IAgoraMusicContentCenterImpl.d.ts +59 -51
  213. package/types/Private/impl/IAgoraMusicContentCenterImpl.d.ts.map +1 -0
  214. package/types/Private/impl/IAgoraRtcEngineExImpl.d.ts +106 -101
  215. package/types/Private/impl/IAgoraRtcEngineExImpl.d.ts.map +1 -0
  216. package/types/Private/impl/IAgoraRtcEngineImpl.d.ts +570 -566
  217. package/types/Private/impl/IAgoraRtcEngineImpl.d.ts.map +1 -0
  218. package/types/Private/impl/IAgoraSpatialAudioImpl.d.ts +49 -48
  219. package/types/Private/impl/IAgoraSpatialAudioImpl.d.ts.map +1 -0
  220. package/types/Private/impl/IAudioDeviceManagerImpl.d.ts +65 -64
  221. package/types/Private/impl/IAudioDeviceManagerImpl.d.ts.map +1 -0
  222. package/types/Private/internal/AudioDeviceManagerInternal.d.ts +9 -8
  223. package/types/Private/internal/AudioDeviceManagerInternal.d.ts.map +1 -0
  224. package/types/Private/internal/IrisApiEngine.d.ts +148 -146
  225. package/types/Private/internal/IrisApiEngine.d.ts.map +1 -0
  226. package/types/Private/internal/LocalSpatialAudioEngineInternal.d.ts +19 -18
  227. package/types/Private/internal/LocalSpatialAudioEngineInternal.d.ts.map +1 -0
  228. package/types/Private/internal/MediaEngineInternal.d.ts +22 -21
  229. package/types/Private/internal/MediaEngineInternal.d.ts.map +1 -0
  230. package/types/Private/internal/MediaPlayerInternal.d.ts +34 -33
  231. package/types/Private/internal/MediaPlayerInternal.d.ts.map +1 -0
  232. package/types/Private/internal/MediaRecorderInternal.d.ts +18 -15
  233. package/types/Private/internal/MediaRecorderInternal.d.ts.map +1 -0
  234. package/types/Private/internal/MusicContentCenterInternal.d.ts +40 -39
  235. package/types/Private/internal/MusicContentCenterInternal.d.ts.map +1 -0
  236. package/types/Private/internal/RtcEngineExInternal.d.ts +80 -73
  237. package/types/Private/internal/RtcEngineExInternal.d.ts.map +1 -0
  238. package/{js → types}/Private/internal/emitter/EventEmitter.d.ts +60 -59
  239. package/types/Private/internal/emitter/EventEmitter.d.ts.map +1 -0
  240. package/types/Private/ti/AgoraBase-ti.d.ts +8 -7
  241. package/types/Private/ti/AgoraBase-ti.d.ts.map +1 -0
  242. package/types/Private/ti/AgoraMediaBase-ti.d.ts +14 -12
  243. package/types/Private/ti/AgoraMediaBase-ti.d.ts.map +1 -0
  244. package/types/Private/ti/AgoraMediaPlayerTypes-ti.d.ts +7 -6
  245. package/types/Private/ti/AgoraMediaPlayerTypes-ti.d.ts.map +1 -0
  246. package/types/Private/ti/IAgoraLog-ti.d.ts +7 -6
  247. package/types/Private/ti/IAgoraLog-ti.d.ts.map +1 -0
  248. package/types/Private/ti/IAgoraMediaEngine-ti.d.ts +7 -6
  249. package/types/Private/ti/IAgoraMediaEngine-ti.d.ts.map +1 -0
  250. package/types/Private/ti/IAgoraMediaPlayer-ti.d.ts +8 -8
  251. package/types/Private/ti/IAgoraMediaPlayer-ti.d.ts.map +1 -0
  252. package/types/Private/ti/IAgoraMediaPlayerSource-ti.d.ts +8 -7
  253. package/types/Private/ti/IAgoraMediaPlayerSource-ti.d.ts.map +1 -0
  254. package/types/Private/ti/IAgoraMediaRecorder-ti.d.ts +7 -6
  255. package/types/Private/ti/IAgoraMediaRecorder-ti.d.ts.map +1 -0
  256. package/{js/Private/ti/IAgoraMediaRecorder-ti.d.ts → types/Private/ti/IAgoraMediaStreamingSource-ti.d.ts} +7 -6
  257. package/types/Private/ti/IAgoraMediaStreamingSource-ti.d.ts.map +1 -0
  258. package/types/Private/ti/IAgoraMusicContentCenter-ti.d.ts +8 -7
  259. package/types/Private/ti/IAgoraMusicContentCenter-ti.d.ts.map +1 -0
  260. package/types/Private/ti/IAgoraRhythmPlayer-ti.d.ts +7 -6
  261. package/types/Private/ti/IAgoraRhythmPlayer-ti.d.ts.map +1 -0
  262. package/types/Private/ti/IAgoraRtcEngine-ti.d.ts +10 -9
  263. package/types/Private/ti/IAgoraRtcEngine-ti.d.ts.map +1 -0
  264. package/types/Private/ti/IAgoraRtcEngineEx-ti.d.ts +7 -6
  265. package/types/Private/ti/IAgoraRtcEngineEx-ti.d.ts.map +1 -0
  266. package/types/Private/ti/IAgoraSpatialAudio-ti.d.ts +7 -6
  267. package/types/Private/ti/IAgoraSpatialAudio-ti.d.ts.map +1 -0
  268. package/types/Private/ti/IAudioDeviceManager-ti.d.ts +7 -6
  269. package/types/Private/ti/IAudioDeviceManager-ti.d.ts.map +1 -0
  270. package/types/Renderer/AgoraView.d.ts +70 -70
  271. package/types/Renderer/AgoraView.d.ts.map +1 -0
  272. package/types/Renderer/IRenderer.d.ts +22 -21
  273. package/types/Renderer/IRenderer.d.ts.map +1 -0
  274. package/types/Renderer/IRendererManager.d.ts +18 -0
  275. package/types/Renderer/IRendererManager.d.ts.map +1 -0
  276. package/types/Renderer/RendererManager.d.ts +154 -71
  277. package/types/Renderer/RendererManager.d.ts.map +1 -0
  278. package/types/Renderer/{GlRenderer → WebGLRenderer}/index.d.ts +49 -59
  279. package/types/Renderer/WebGLRenderer/index.d.ts.map +1 -0
  280. package/types/Renderer/WebGLRenderer/webgl-utils.d.ts +1 -0
  281. package/types/Renderer/WebGLRenderer/webgl-utils.d.ts.map +1 -0
  282. package/types/Renderer/YUVCanvasRenderer/index.d.ts +16 -16
  283. package/types/Renderer/YUVCanvasRenderer/index.d.ts.map +1 -0
  284. package/types/Renderer/index.d.ts +3 -0
  285. package/types/Renderer/index.d.ts.map +1 -0
  286. package/types/Types.d.ts +280 -260
  287. package/types/Types.d.ts.map +1 -0
  288. package/types/Utils.d.ts +59 -58
  289. package/types/Utils.d.ts.map +1 -0
  290. package/js/AgoraSdk.d.ts +0 -36
  291. package/js/Private/AgoraBase.d.ts +0 -4358
  292. package/js/Private/AgoraMediaBase.d.ts +0 -1070
  293. package/js/Private/AgoraMediaPlayerTypes.d.ts +0 -408
  294. package/js/Private/IAgoraLog.d.ts +0 -80
  295. package/js/Private/IAgoraMediaEngine.d.ts +0 -193
  296. package/js/Private/IAgoraMediaPlayer.d.ts +0 -546
  297. package/js/Private/IAgoraMediaPlayerSource.d.ts +0 -88
  298. package/js/Private/IAgoraMediaRecorder.d.ts +0 -49
  299. package/js/Private/IAgoraMusicContentCenter.d.ts +0 -255
  300. package/js/Private/IAgoraRhythmPlayer.d.ts +0 -64
  301. package/js/Private/IAgoraRtcEngine.d.ts +0 -5058
  302. package/js/Private/IAgoraRtcEngineEx.d.ts +0 -570
  303. package/js/Private/IAgoraSpatialAudio.d.ts +0 -248
  304. package/js/Private/IAudioDeviceManager.d.ts +0 -233
  305. package/js/Private/extension/AgoraBaseExtension.d.ts +0 -1
  306. package/js/Private/extension/AgoraMediaBaseExtension.d.ts +0 -1
  307. package/js/Private/extension/AgoraMediaPlayerTypesExtension.d.ts +0 -1
  308. package/js/Private/extension/IAgoraLogExtension.d.ts +0 -1
  309. package/js/Private/extension/IAgoraMediaEngineExtension.d.ts +0 -40
  310. package/js/Private/extension/IAgoraMediaPlayerExtension.d.ts +0 -46
  311. package/js/Private/extension/IAgoraMediaPlayerSourceExtension.d.ts +0 -1
  312. package/js/Private/extension/IAgoraMediaRecorderExtension.d.ts +0 -40
  313. package/js/Private/extension/IAgoraMusicContentCenterExtension.d.ts +0 -20
  314. package/js/Private/extension/IAgoraRhythmPlayerExtension.d.ts +0 -1
  315. package/js/Private/extension/IAgoraRtcEngineExExtension.d.ts +0 -1
  316. package/js/Private/extension/IAgoraRtcEngineExtension.d.ts +0 -42
  317. package/js/Private/extension/IAgoraSpatialAudioExtension.d.ts +0 -1
  318. package/js/Private/extension/IAudioDeviceManagerExtension.d.ts +0 -1
  319. package/js/Private/impl/AgoraBaseImpl.d.ts +0 -2
  320. package/js/Private/impl/AgoraMediaBaseImpl.d.ts +0 -7
  321. package/js/Private/impl/IAgoraMediaEngineImpl.d.ts +0 -43
  322. package/js/Private/impl/IAgoraMediaPlayerImpl.d.ts +0 -141
  323. package/js/Private/impl/IAgoraMediaPlayerSourceImpl.d.ts +0 -2
  324. package/js/Private/impl/IAgoraMediaRecorderImpl.d.ts +0 -13
  325. package/js/Private/impl/IAgoraMusicContentCenterImpl.d.ts +0 -51
  326. package/js/Private/impl/IAgoraRtcEngineExImpl.d.ts +0 -101
  327. package/js/Private/impl/IAgoraRtcEngineImpl.d.ts +0 -566
  328. package/js/Private/impl/IAgoraSpatialAudioImpl.d.ts +0 -48
  329. package/js/Private/impl/IAudioDeviceManagerImpl.d.ts +0 -64
  330. package/js/Private/internal/AudioDeviceManagerInternal.d.ts +0 -8
  331. package/js/Private/internal/IrisApiEngine.d.ts +0 -146
  332. package/js/Private/internal/LocalSpatialAudioEngineInternal.d.ts +0 -18
  333. package/js/Private/internal/MediaEngineInternal.d.ts +0 -21
  334. package/js/Private/internal/MediaPlayerInternal.d.ts +0 -33
  335. package/js/Private/internal/MediaRecorderInternal.d.ts +0 -15
  336. package/js/Private/internal/MusicContentCenterInternal.d.ts +0 -39
  337. package/js/Private/internal/RtcEngineExInternal.d.ts +0 -73
  338. package/js/Private/ti/AgoraBase-ti.d.ts +0 -7
  339. package/js/Private/ti/AgoraMediaBase-ti.d.ts +0 -12
  340. package/js/Private/ti/IAgoraLog-ti.d.ts +0 -6
  341. package/js/Private/ti/IAgoraMediaEngine-ti.d.ts +0 -6
  342. package/js/Private/ti/IAgoraMediaPlayer-ti.d.ts +0 -8
  343. package/js/Private/ti/IAgoraMediaPlayerSource-ti.d.ts +0 -7
  344. package/js/Private/ti/IAgoraMusicContentCenter-ti.d.ts +0 -7
  345. package/js/Private/ti/IAgoraRhythmPlayer-ti.d.ts +0 -6
  346. package/js/Private/ti/IAgoraRtcEngine-ti.d.ts +0 -9
  347. package/js/Private/ti/IAgoraRtcEngineEx-ti.d.ts +0 -6
  348. package/js/Private/ti/IAgoraSpatialAudio-ti.d.ts +0 -6
  349. package/js/Private/ti/IAudioDeviceManager-ti.d.ts +0 -6
  350. package/js/Renderer/AgoraView.d.ts +0 -70
  351. package/js/Renderer/GlRenderer/index.d.ts +0 -59
  352. package/js/Renderer/GlRenderer/webgl-utils.d.ts +0 -0
  353. package/js/Renderer/IRenderer.d.ts +0 -21
  354. package/js/Renderer/RendererManager.d.ts +0 -71
  355. package/js/Renderer/YUVCanvasRenderer/index.d.ts +0 -16
  356. package/js/Types.d.ts +0 -260
  357. package/js/Utils.d.ts +0 -58
  358. /package/ts/Renderer/{GlRenderer → WebGLRenderer}/webgl-utils.js +0 -0
@@ -1,363 +1,422 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.RtcEngineExInternal = void 0;
7
- const ts_interface_checker_1 = require("ts-interface-checker");
8
- const Utils_1 = require("../../Utils");
9
- const AgoraBase_1 = require("../AgoraBase");
10
- const AgoraBaseImpl_1 = require("../impl/AgoraBaseImpl");
11
- const AgoraMediaBaseImpl_1 = require("../impl/AgoraMediaBaseImpl");
12
- const IAgoraRtcEngineExImpl_1 = require("../impl/IAgoraRtcEngineExImpl");
13
- const IAgoraRtcEngineImpl_1 = require("../impl/IAgoraRtcEngineImpl");
14
- const AgoraBase_ti_1 = __importDefault(require("../ti/AgoraBase-ti"));
15
- const AgoraMediaBase_ti_1 = __importDefault(require("../ti/AgoraMediaBase-ti"));
16
- const IAgoraRtcEngine_ti_1 = __importDefault(require("../ti/IAgoraRtcEngine-ti"));
17
- const checkers = (0, ts_interface_checker_1.createCheckers)(AgoraBase_ti_1.default, AgoraMediaBase_ti_1.default, IAgoraRtcEngine_ti_1.default);
18
- const AudioDeviceManagerInternal_1 = require("./AudioDeviceManagerInternal");
19
- const LocalSpatialAudioEngineInternal_1 = require("./LocalSpatialAudioEngineInternal");
20
- const MediaEngineInternal_1 = require("./MediaEngineInternal");
21
- const MediaPlayerInternal_1 = require("./MediaPlayerInternal");
22
- const MediaRecorderInternal_1 = require("./MediaRecorderInternal");
23
- const MusicContentCenterInternal_1 = require("./MusicContentCenterInternal");
24
- const IrisApiEngine_1 = require("./IrisApiEngine");
25
- class RtcEngineExInternal extends IAgoraRtcEngineExImpl_1.IRtcEngineExImpl {
26
- constructor() {
27
- super(...arguments);
28
- this._audio_device_manager = new AudioDeviceManagerInternal_1.AudioDeviceManagerInternal();
29
- this._video_device_manager = new IAgoraRtcEngineImpl_1.IVideoDeviceManagerImpl();
30
- this._media_engine = new MediaEngineInternal_1.MediaEngineInternal();
31
- this._media_recorder = new MediaRecorderInternal_1.MediaRecorderInternal();
32
- this._music_content_center = new MusicContentCenterInternal_1.MusicContentCenterInternal();
33
- this._local_spatial_audio_engine = new LocalSpatialAudioEngineInternal_1.LocalSpatialAudioEngineInternal();
34
- this._events = new Map();
35
- }
36
- initialize(context) {
37
- var _a;
38
- (_a = Utils_1.AgoraEnv.AgoraRendererManager) === null || _a === void 0 ? void 0 : _a.enableRender();
39
- const ret = super.initialize(context);
40
- IrisApiEngine_1.callIrisApi.call(this, 'RtcEngine_setAppType', {
41
- appType: 3,
42
- });
43
- return ret;
44
- }
45
- release(sync = false) {
46
- var _a;
47
- (_a = Utils_1.AgoraEnv.AgoraRendererManager) === null || _a === void 0 ? void 0 : _a.enableRender(false);
48
- this._audio_device_manager.release();
49
- this._video_device_manager.release();
50
- this._media_engine.release();
51
- this._media_recorder.release();
52
- this._local_spatial_audio_engine.release();
53
- RtcEngineExInternal._event_handlers = [];
54
- RtcEngineExInternal._direct_cdn_streaming_event_handler = [];
55
- RtcEngineExInternal._metadata_observer = [];
56
- RtcEngineExInternal._audio_encoded_frame_observers = [];
57
- RtcEngineExInternal._audio_spectrum_observers = [];
58
- MediaPlayerInternal_1.MediaPlayerInternal._source_observers.clear();
59
- MediaPlayerInternal_1.MediaPlayerInternal._audio_frame_observers.clear();
60
- MediaPlayerInternal_1.MediaPlayerInternal._video_frame_observers.clear();
61
- MediaPlayerInternal_1.MediaPlayerInternal._audio_spectrum_observers.clear();
62
- this.removeAllListeners();
63
- super.release(sync);
64
- }
65
- _addListenerPreCheck(eventType) {
66
- var _a, _b, _c, _d, _e;
67
- if ((_a = checkers.IRtcEngineEventHandler) === null || _a === void 0 ? void 0 : _a.strictTest({ [eventType]: undefined })) {
68
- if (RtcEngineExInternal._event_handlers.length === 0) {
69
- this.registerEventHandler({});
70
- }
71
- }
72
- if ((_b = checkers.IDirectCdnStreamingEventHandler) === null || _b === void 0 ? void 0 : _b.strictTest({
73
- [eventType]: undefined,
74
- })) {
75
- if (RtcEngineExInternal._direct_cdn_streaming_event_handler.length === 0) {
76
- console.error('Please call `startDirectCdnStreaming` before you want to receive event by `addListener`');
77
- return false;
78
- }
79
- }
80
- if ((_c = checkers.IMetadataObserver) === null || _c === void 0 ? void 0 : _c.strictTest({
81
- [eventType]: undefined,
82
- })) {
83
- if (RtcEngineExInternal._metadata_observer.length === 0) {
84
- console.error('Please call `registerMediaMetadataObserver` before you want to receive event by `addListener`');
85
- return false;
86
- }
87
- }
88
- if ((_d = checkers.IAudioEncodedFrameObserver) === null || _d === void 0 ? void 0 : _d.strictTest({
89
- [eventType]: undefined,
90
- })) {
91
- if (RtcEngineExInternal._audio_encoded_frame_observers.length === 0) {
92
- console.error('Please call `registerAudioEncodedFrameObserver` before you want to receive event by `addListener`');
93
- return false;
94
- }
95
- }
96
- if ((_e = checkers.IAudioSpectrumObserver) === null || _e === void 0 ? void 0 : _e.strictTest({
97
- [eventType]: undefined,
98
- })) {
99
- if (RtcEngineExInternal._audio_spectrum_observers.length === 0) {
100
- this.registerAudioSpectrumObserver({});
101
- }
102
- }
103
- return true;
104
- }
105
- addListener(eventType, listener) {
106
- this._addListenerPreCheck(eventType);
107
- const callback = (...data) => {
108
- if (data[0] !== IrisApiEngine_1.EVENT_TYPE.IRtcEngine) {
109
- return;
110
- }
111
- (0, IAgoraRtcEngineImpl_1.processIRtcEngineEventHandler)({ [eventType]: listener }, eventType, data[1]);
112
- (0, IAgoraRtcEngineImpl_1.processIDirectCdnStreamingEventHandler)({ [eventType]: listener }, eventType, data[1]);
113
- (0, IAgoraRtcEngineImpl_1.processIMetadataObserver)({ [eventType]: listener }, eventType, data[1]);
114
- (0, AgoraBaseImpl_1.processIAudioEncodedFrameObserver)({ [eventType]: listener }, eventType, data[1]);
115
- (0, AgoraMediaBaseImpl_1.processIAudioSpectrumObserver)({ [eventType]: listener }, eventType, data[1]);
116
- };
117
- const subscription = IrisApiEngine_1.DeviceEventEmitter.addListener(eventType, callback);
118
- this._events.set(listener, { eventType, subscription });
119
- return subscription;
120
- }
121
- removeListener(eventType, listener) {
122
- if (!this._events.has(listener))
123
- return;
124
- IrisApiEngine_1.DeviceEventEmitter.removeSubscription(this._events.get(listener).subscription);
125
- this._events.delete(listener);
126
- }
127
- removeAllListeners(eventType) {
128
- if (eventType === undefined) {
129
- this._events.forEach((value) => {
130
- IrisApiEngine_1.DeviceEventEmitter.removeAllListeners(value.eventType);
131
- });
132
- this._events.clear();
133
- }
134
- else {
135
- IrisApiEngine_1.DeviceEventEmitter.removeAllListeners(eventType);
136
- this._events.forEach((value, key) => {
137
- if (value.eventType === eventType) {
138
- this._events.delete(key);
139
- }
140
- });
141
- }
142
- }
143
- getVersion() {
144
- const apiType = 'RtcEngine_getVersion';
145
- const jsonParams = {};
146
- const jsonResults = IrisApiEngine_1.callIrisApi.call(this, apiType, jsonParams);
147
- return {
148
- build: jsonResults.build,
149
- version: jsonResults.result,
150
- };
151
- }
152
- registerEventHandler(eventHandler) {
153
- if (!RtcEngineExInternal._event_handlers.find((value) => value === eventHandler)) {
154
- RtcEngineExInternal._event_handlers.push(eventHandler);
155
- }
156
- return super.registerEventHandler(eventHandler);
157
- }
158
- unregisterEventHandler(eventHandler) {
159
- RtcEngineExInternal._event_handlers =
160
- RtcEngineExInternal._event_handlers.filter((value) => value !== eventHandler);
161
- return super.unregisterEventHandler(eventHandler);
162
- }
163
- createMediaPlayer() {
164
- // @ts-ignore
165
- const mediaPlayerId = super.createMediaPlayer();
166
- return new MediaPlayerInternal_1.MediaPlayerInternal(mediaPlayerId);
167
- }
168
- destroyMediaPlayer(mediaPlayer) {
169
- var _a;
170
- const ret = super.destroyMediaPlayer(mediaPlayer);
171
- (_a = mediaPlayer.release) === null || _a === void 0 ? void 0 : _a.call(mediaPlayer);
172
- return ret;
173
- }
174
- startDirectCdnStreaming(eventHandler, publishUrl, options) {
175
- if (!RtcEngineExInternal._direct_cdn_streaming_event_handler.find((value) => value === eventHandler)) {
176
- RtcEngineExInternal._direct_cdn_streaming_event_handler.push(eventHandler);
177
- }
178
- return super.startDirectCdnStreaming(eventHandler, publishUrl, options);
179
- }
180
- registerMediaMetadataObserver(observer, type) {
181
- if (!RtcEngineExInternal._metadata_observer.find((value) => value === observer)) {
182
- RtcEngineExInternal._metadata_observer.push(observer);
183
- }
184
- return super.registerMediaMetadataObserver(observer, type);
185
- }
186
- unregisterMediaMetadataObserver(observer, type) {
187
- RtcEngineExInternal._metadata_observer =
188
- RtcEngineExInternal._metadata_observer.filter((value) => value !== observer);
189
- return super.unregisterMediaMetadataObserver(observer, type);
190
- }
191
- getApiTypeFromJoinChannel(token, channelId, uid, options) {
192
- return 'RtcEngine_joinChannel2';
193
- }
194
- getApiTypeFromLeaveChannel(options) {
195
- return options === undefined
196
- ? 'RtcEngine_leaveChannel'
197
- : 'RtcEngine_leaveChannel2';
198
- }
199
- getApiTypeFromSetClientRole(role, options) {
200
- return options === undefined
201
- ? 'RtcEngine_setClientRole'
202
- : 'RtcEngine_setClientRole2';
203
- }
204
- getApiTypeFromStartEchoTest(intervalInSeconds = 10) {
205
- return 'RtcEngine_startEchoTest2';
206
- }
207
- getApiTypeFromStartPreview(sourceType = AgoraBase_1.VideoSourceType.VideoSourceCameraPrimary) {
208
- return 'RtcEngine_startPreview2';
209
- }
210
- getApiTypeFromStopPreview(sourceType = AgoraBase_1.VideoSourceType.VideoSourceCameraPrimary) {
211
- return 'RtcEngine_stopPreview2';
212
- }
213
- getApiTypeFromStartAudioRecording(config) {
214
- return 'RtcEngine_startAudioRecording3';
215
- }
216
- getApiTypeFromStartAudioMixing(filePath, loopback, cycle, startPos = 0) {
217
- return 'RtcEngine_startAudioMixing2';
218
- }
219
- getApiTypeFromEnableDualStreamMode(enabled, streamConfig) {
220
- return streamConfig === undefined
221
- ? 'RtcEngine_enableDualStreamMode'
222
- : 'RtcEngine_enableDualStreamMode2';
223
- }
224
- getApiTypeFromSetDualStreamMode(mode, streamConfig) {
225
- return streamConfig === undefined
226
- ? 'RtcEngine_setDualStreamMode'
227
- : 'RtcEngine_setDualStreamMode2';
228
- }
229
- getApiTypeFromLeaveChannelEx(connection, options) {
230
- return 'RtcEngineEx_leaveChannelEx2';
231
- }
232
- getApiTypeFromCreateDataStream(config) {
233
- return 'RtcEngine_createDataStream2';
234
- }
235
- getApiTypeFromAddVideoWatermark(watermarkUrl, options) {
236
- return 'RtcEngine_addVideoWatermark2';
237
- }
238
- getApiTypeFromJoinChannelWithUserAccount(token, channelId, userAccount, options) {
239
- return options === undefined
240
- ? 'RtcEngine_joinChannelWithUserAccount'
241
- : 'RtcEngine_joinChannelWithUserAccount2';
242
- }
243
- getApiTypeFromCreateDataStreamEx(config, connection) {
244
- return 'RtcEngineEx_createDataStreamEx2';
245
- }
246
- getAudioDeviceManager() {
247
- return this._audio_device_manager;
248
- }
249
- getVideoDeviceManager() {
250
- return this._video_device_manager;
251
- }
252
- getMediaEngine() {
253
- return this._media_engine;
254
- }
255
- getMediaRecorder() {
256
- return this._media_recorder;
257
- }
258
- getMusicContentCenter() {
259
- return this._music_content_center;
260
- }
261
- getLocalSpatialAudioEngine() {
262
- return this._local_spatial_audio_engine;
263
- }
264
- registerAudioEncodedFrameObserver(config, observer) {
265
- if (!RtcEngineExInternal._audio_encoded_frame_observers.find((value) => value === observer)) {
266
- RtcEngineExInternal._audio_encoded_frame_observers.push(observer);
267
- }
268
- return super.registerAudioEncodedFrameObserver(config, observer);
269
- }
270
- unregisterAudioEncodedFrameObserver(observer) {
271
- RtcEngineExInternal._audio_encoded_frame_observers =
272
- RtcEngineExInternal._audio_encoded_frame_observers.filter((value) => value !== observer);
273
- return super.unregisterAudioEncodedFrameObserver(observer);
274
- }
275
- registerAudioSpectrumObserver(observer) {
276
- if (!RtcEngineExInternal._audio_spectrum_observers.find((value) => value === observer)) {
277
- RtcEngineExInternal._audio_spectrum_observers.push(observer);
278
- }
279
- return super.registerAudioSpectrumObserver(observer);
280
- }
281
- unregisterAudioSpectrumObserver(observer) {
282
- RtcEngineExInternal._audio_spectrum_observers =
283
- RtcEngineExInternal._audio_spectrum_observers.filter((value) => value !== observer);
284
- return super.unregisterAudioSpectrumObserver(observer);
285
- }
286
- getScreenCaptureSources(thumbSize, iconSize, includeScreen) {
287
- return super
288
- .getScreenCaptureSources(thumbSize, iconSize, includeScreen)
289
- .map((value) => {
290
- var _a;
291
- if (value.thumbImage.buffer == 0) {
292
- value.thumbImage.buffer = undefined;
293
- }
294
- else {
295
- value.thumbImage.buffer = Utils_1.AgoraEnv.AgoraElectronBridge.GetBuffer(value.thumbImage.buffer, (_a = value.thumbImage) === null || _a === void 0 ? void 0 : _a.length);
296
- }
297
- if (value.iconImage.buffer == 0) {
298
- value.iconImage.buffer = undefined;
299
- }
300
- else {
301
- value.iconImage.buffer = Utils_1.AgoraEnv.AgoraElectronBridge.GetBuffer(value.iconImage.buffer, value.iconImage.length);
302
- }
303
- return value;
304
- });
305
- }
306
- setupLocalVideo(canvas) {
307
- var _a, _b;
308
- const { sourceType = AgoraBase_1.VideoSourceType.VideoSourceCamera, uid, view, renderMode, mirrorMode, } = canvas;
309
- return ((_b = (_a = Utils_1.AgoraEnv.AgoraRendererManager) === null || _a === void 0 ? void 0 : _a.setupLocalVideo({
310
- videoSourceType: sourceType,
311
- channelId: '',
312
- uid,
313
- view,
314
- rendererOptions: {
315
- contentMode: renderMode,
316
- mirror: mirrorMode === AgoraBase_1.VideoMirrorModeType.VideoMirrorModeEnabled,
317
- },
318
- })) !== null && _b !== void 0 ? _b : -AgoraBase_1.ErrorCodeType.ErrNotInitialized);
319
- }
320
- setupRemoteVideo(canvas) {
321
- var _a, _b;
322
- const { sourceType = AgoraBase_1.VideoSourceType.VideoSourceRemote, uid, view, renderMode, mirrorMode, } = canvas;
323
- return ((_b = (_a = Utils_1.AgoraEnv.AgoraRendererManager) === null || _a === void 0 ? void 0 : _a.setupRemoteVideo({
324
- videoSourceType: sourceType,
325
- channelId: '',
326
- uid,
327
- view,
328
- rendererOptions: {
329
- contentMode: renderMode,
330
- mirror: mirrorMode === AgoraBase_1.VideoMirrorModeType.VideoMirrorModeEnabled,
331
- },
332
- })) !== null && _b !== void 0 ? _b : -AgoraBase_1.ErrorCodeType.ErrNotInitialized);
333
- }
334
- setupRemoteVideoEx(canvas, connection) {
335
- var _a, _b;
336
- const { sourceType = AgoraBase_1.VideoSourceType.VideoSourceRemote, uid, view, renderMode, mirrorMode, } = canvas;
337
- const { channelId } = connection;
338
- return ((_b = (_a = Utils_1.AgoraEnv.AgoraRendererManager) === null || _a === void 0 ? void 0 : _a.setupRemoteVideo({
339
- videoSourceType: sourceType,
340
- channelId,
341
- uid,
342
- view,
343
- rendererOptions: {
344
- contentMode: renderMode,
345
- mirror: mirrorMode === AgoraBase_1.VideoMirrorModeType.VideoMirrorModeEnabled,
346
- },
347
- })) !== null && _b !== void 0 ? _b : -AgoraBase_1.ErrorCodeType.ErrNotInitialized);
348
- }
349
- destroyRendererByView(view) {
350
- var _a;
351
- (_a = Utils_1.AgoraEnv.AgoraRendererManager) === null || _a === void 0 ? void 0 : _a.destroyRendererByView(view);
352
- }
353
- destroyRendererByConfig(videoSourceType, channelId, uid) {
354
- var _a;
355
- (_a = Utils_1.AgoraEnv.AgoraRendererManager) === null || _a === void 0 ? void 0 : _a.destroyRenderersByConfig(videoSourceType, channelId, uid);
356
- }
357
- }
358
- exports.RtcEngineExInternal = RtcEngineExInternal;
359
- RtcEngineExInternal._event_handlers = [];
360
- RtcEngineExInternal._direct_cdn_streaming_event_handler = [];
361
- RtcEngineExInternal._metadata_observer = [];
362
- RtcEngineExInternal._audio_encoded_frame_observers = [];
363
- RtcEngineExInternal._audio_spectrum_observers = [];
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.RtcEngineExInternal = void 0;
7
+ const ts_interface_checker_1 = require("ts-interface-checker");
8
+ const Utils_1 = require("../../Utils");
9
+ const AgoraBase_1 = require("../AgoraBase");
10
+ const AgoraMediaBase_1 = require("../AgoraMediaBase");
11
+ const AgoraBaseImpl_1 = require("../impl/AgoraBaseImpl");
12
+ const AgoraMediaBaseImpl_1 = require("../impl/AgoraMediaBaseImpl");
13
+ const IAgoraRtcEngineExImpl_1 = require("../impl/IAgoraRtcEngineExImpl");
14
+ const IAgoraRtcEngineImpl_1 = require("../impl/IAgoraRtcEngineImpl");
15
+ const AgoraBase_ti_1 = __importDefault(require("../ti/AgoraBase-ti"));
16
+ const AgoraMediaBase_ti_1 = __importDefault(require("../ti/AgoraMediaBase-ti"));
17
+ const IAgoraRtcEngine_ti_1 = __importDefault(require("../ti/IAgoraRtcEngine-ti"));
18
+ const AudioDeviceManagerInternal_1 = require("./AudioDeviceManagerInternal");
19
+ const IrisApiEngine_1 = require("./IrisApiEngine");
20
+ const LocalSpatialAudioEngineInternal_1 = require("./LocalSpatialAudioEngineInternal");
21
+ const MediaEngineInternal_1 = require("./MediaEngineInternal");
22
+ const MediaPlayerInternal_1 = require("./MediaPlayerInternal");
23
+ const MediaRecorderInternal_1 = require("./MediaRecorderInternal");
24
+ const MusicContentCenterInternal_1 = require("./MusicContentCenterInternal");
25
+ const checkers = (0, ts_interface_checker_1.createCheckers)(AgoraBase_ti_1.default, AgoraMediaBase_ti_1.default, IAgoraRtcEngine_ti_1.default);
26
+ class RtcEngineExInternal extends IAgoraRtcEngineExImpl_1.IRtcEngineExImpl {
27
+ static _event_handlers = [];
28
+ static _direct_cdn_streaming_event_handler = [];
29
+ static _metadata_observer = [];
30
+ static _audio_encoded_frame_observers = [];
31
+ static _audio_spectrum_observers = [];
32
+ _audio_device_manager = new AudioDeviceManagerInternal_1.AudioDeviceManagerInternal();
33
+ _video_device_manager = new IAgoraRtcEngineImpl_1.IVideoDeviceManagerImpl();
34
+ _media_engine = new MediaEngineInternal_1.MediaEngineInternal();
35
+ _music_content_center = new MusicContentCenterInternal_1.MusicContentCenterInternal();
36
+ _local_spatial_audio_engine = new LocalSpatialAudioEngineInternal_1.LocalSpatialAudioEngineInternal();
37
+ _events = new Map();
38
+ initialize(context) {
39
+ if (Utils_1.AgoraEnv.webEnvReady) {
40
+ const { RendererManager } = require('../../Renderer/RendererManager');
41
+ Utils_1.AgoraEnv.AgoraRendererManager = new RendererManager();
42
+ }
43
+ Utils_1.AgoraEnv.AgoraRendererManager?.enableRender();
44
+ const ret = super.initialize(context);
45
+ IrisApiEngine_1.callIrisApi.call(this, 'RtcEngine_setAppType', {
46
+ appType: 3,
47
+ });
48
+ return ret;
49
+ }
50
+ release(sync = false) {
51
+ Utils_1.AgoraEnv.AgoraElectronBridge.ReleaseRenderer();
52
+ Utils_1.AgoraEnv.AgoraRendererManager?.clear();
53
+ Utils_1.AgoraEnv.AgoraRendererManager = undefined;
54
+ this._audio_device_manager.release();
55
+ this._video_device_manager.release();
56
+ this._media_engine.release();
57
+ this._local_spatial_audio_engine.release();
58
+ RtcEngineExInternal._event_handlers = [];
59
+ RtcEngineExInternal._direct_cdn_streaming_event_handler = [];
60
+ RtcEngineExInternal._metadata_observer = [];
61
+ RtcEngineExInternal._audio_encoded_frame_observers = [];
62
+ RtcEngineExInternal._audio_spectrum_observers = [];
63
+ MediaPlayerInternal_1.MediaPlayerInternal._source_observers.clear();
64
+ MediaPlayerInternal_1.MediaPlayerInternal._audio_frame_observers.clear();
65
+ MediaPlayerInternal_1.MediaPlayerInternal._video_frame_observers.clear();
66
+ MediaPlayerInternal_1.MediaPlayerInternal._audio_spectrum_observers.clear();
67
+ this.removeAllListeners();
68
+ super.release(sync);
69
+ }
70
+ _addListenerPreCheck(eventType) {
71
+ if (checkers.IRtcEngineEventHandler?.strictTest({ [eventType]: undefined })) {
72
+ if (RtcEngineExInternal._event_handlers.length === 0) {
73
+ this.registerEventHandler({});
74
+ }
75
+ }
76
+ if (checkers.IDirectCdnStreamingEventHandler?.strictTest({
77
+ [eventType]: undefined,
78
+ })) {
79
+ if (RtcEngineExInternal._direct_cdn_streaming_event_handler.length === 0) {
80
+ console.error('Please call `startDirectCdnStreaming` before you want to receive event by `addListener`');
81
+ return false;
82
+ }
83
+ }
84
+ if (checkers.IMetadataObserver?.strictTest({
85
+ [eventType]: undefined,
86
+ })) {
87
+ if (RtcEngineExInternal._metadata_observer.length === 0) {
88
+ console.error('Please call `registerMediaMetadataObserver` before you want to receive event by `addListener`');
89
+ return false;
90
+ }
91
+ }
92
+ if (checkers.IAudioEncodedFrameObserver?.strictTest({
93
+ [eventType]: undefined,
94
+ })) {
95
+ if (RtcEngineExInternal._audio_encoded_frame_observers.length === 0) {
96
+ console.error('Please call `registerAudioEncodedFrameObserver` before you want to receive event by `addListener`');
97
+ return false;
98
+ }
99
+ }
100
+ if (checkers.IAudioSpectrumObserver?.strictTest({
101
+ [eventType]: undefined,
102
+ })) {
103
+ if (RtcEngineExInternal._audio_spectrum_observers.length === 0) {
104
+ this.registerAudioSpectrumObserver({});
105
+ }
106
+ }
107
+ return true;
108
+ }
109
+ addListener(eventType, listener) {
110
+ this._addListenerPreCheck(eventType);
111
+ const callback = (...data) => {
112
+ if (data[0] !== IrisApiEngine_1.EVENT_TYPE.IRtcEngine) {
113
+ return;
114
+ }
115
+ (0, IAgoraRtcEngineImpl_1.processIRtcEngineEventHandler)({ [eventType]: listener }, eventType, data[1]);
116
+ (0, IAgoraRtcEngineImpl_1.processIDirectCdnStreamingEventHandler)({ [eventType]: listener }, eventType, data[1]);
117
+ (0, IAgoraRtcEngineImpl_1.processIMetadataObserver)({ [eventType]: listener }, eventType, data[1]);
118
+ (0, AgoraBaseImpl_1.processIAudioEncodedFrameObserver)({ [eventType]: listener }, eventType, data[1]);
119
+ (0, AgoraMediaBaseImpl_1.processIAudioSpectrumObserver)({ [eventType]: listener }, eventType, data[1]);
120
+ };
121
+ const subscription = IrisApiEngine_1.DeviceEventEmitter.addListener(eventType, callback);
122
+ this._events.set(listener, { eventType, subscription });
123
+ return subscription;
124
+ }
125
+ removeListener(eventType, listener) {
126
+ if (!this._events.has(listener))
127
+ return;
128
+ this._events.get(listener).subscription.remove();
129
+ this._events.delete(listener);
130
+ }
131
+ removeAllListeners(eventType) {
132
+ if (eventType === undefined) {
133
+ this._events.forEach((value) => {
134
+ IrisApiEngine_1.DeviceEventEmitter.removeAllListeners(value.eventType);
135
+ });
136
+ this._events.clear();
137
+ }
138
+ else {
139
+ IrisApiEngine_1.DeviceEventEmitter.removeAllListeners(eventType);
140
+ this._events.forEach((value, key) => {
141
+ if (value.eventType === eventType) {
142
+ this._events.delete(key);
143
+ }
144
+ });
145
+ }
146
+ }
147
+ getVersion() {
148
+ const apiType = 'RtcEngine_getVersion';
149
+ const jsonParams = {};
150
+ const jsonResults = IrisApiEngine_1.callIrisApi.call(this, apiType, jsonParams);
151
+ return {
152
+ build: jsonResults.build,
153
+ version: jsonResults.result,
154
+ };
155
+ }
156
+ registerEventHandler(eventHandler) {
157
+ if (!RtcEngineExInternal._event_handlers.find((value) => value === eventHandler)) {
158
+ RtcEngineExInternal._event_handlers.push(eventHandler);
159
+ }
160
+ return super.registerEventHandler(eventHandler);
161
+ }
162
+ unregisterEventHandler(eventHandler) {
163
+ RtcEngineExInternal._event_handlers =
164
+ RtcEngineExInternal._event_handlers.filter((value) => value !== eventHandler);
165
+ return super.unregisterEventHandler(eventHandler);
166
+ }
167
+ createMediaPlayer() {
168
+ // @ts-ignore
169
+ const mediaPlayerId = super.createMediaPlayer();
170
+ return new MediaPlayerInternal_1.MediaPlayerInternal(mediaPlayerId);
171
+ }
172
+ destroyMediaPlayer(mediaPlayer) {
173
+ const ret = super.destroyMediaPlayer(mediaPlayer);
174
+ mediaPlayer.release?.call(mediaPlayer);
175
+ return ret;
176
+ }
177
+ createMediaRecorder(info) {
178
+ // @ts-ignore
179
+ const nativeHandle = super.createMediaRecorder(info);
180
+ return new MediaRecorderInternal_1.MediaRecorderInternal(nativeHandle);
181
+ }
182
+ destroyMediaRecorder(mediaRecorder) {
183
+ const ret = super.destroyMediaRecorder(mediaRecorder);
184
+ mediaRecorder.release?.call(mediaRecorder);
185
+ return ret;
186
+ }
187
+ startDirectCdnStreaming(eventHandler, publishUrl, options) {
188
+ if (!RtcEngineExInternal._direct_cdn_streaming_event_handler.find((value) => value === eventHandler)) {
189
+ RtcEngineExInternal._direct_cdn_streaming_event_handler.push(eventHandler);
190
+ }
191
+ return super.startDirectCdnStreaming(eventHandler, publishUrl, options);
192
+ }
193
+ registerMediaMetadataObserver(observer, type) {
194
+ if (!RtcEngineExInternal._metadata_observer.find((value) => value === observer)) {
195
+ RtcEngineExInternal._metadata_observer.push(observer);
196
+ }
197
+ return super.registerMediaMetadataObserver(observer, type);
198
+ }
199
+ unregisterMediaMetadataObserver(observer, type) {
200
+ RtcEngineExInternal._metadata_observer =
201
+ RtcEngineExInternal._metadata_observer.filter((value) => value !== observer);
202
+ return super.unregisterMediaMetadataObserver(observer, type);
203
+ }
204
+ getApiTypeFromJoinChannel(token, channelId, uid, options) {
205
+ if (Utils_1.AgoraEnv.AgoraRendererManager) {
206
+ Utils_1.AgoraEnv.AgoraRendererManager.defaultRenderConfig.channelId = channelId;
207
+ }
208
+ return 'RtcEngine_joinChannel2';
209
+ }
210
+ getApiTypeFromLeaveChannel(options) {
211
+ return options === undefined
212
+ ? 'RtcEngine_leaveChannel'
213
+ : 'RtcEngine_leaveChannel2';
214
+ }
215
+ getApiTypeFromSetClientRole(role, options) {
216
+ return options === undefined
217
+ ? 'RtcEngine_setClientRole'
218
+ : 'RtcEngine_setClientRole2';
219
+ }
220
+ getApiTypeFromStartEchoTest(config) {
221
+ return 'RtcEngine_startEchoTest3';
222
+ }
223
+ getApiTypeFromStartPreview(sourceType = AgoraMediaBase_1.VideoSourceType.VideoSourceCameraPrimary) {
224
+ return 'RtcEngine_startPreview2';
225
+ }
226
+ getApiTypeFromStopPreview(sourceType = AgoraMediaBase_1.VideoSourceType.VideoSourceCameraPrimary) {
227
+ return 'RtcEngine_stopPreview2';
228
+ }
229
+ getApiTypeFromStartAudioRecording(config) {
230
+ return 'RtcEngine_startAudioRecording3';
231
+ }
232
+ getApiTypeFromStartAudioMixing(filePath, loopback, cycle, startPos = 0) {
233
+ return 'RtcEngine_startAudioMixing2';
234
+ }
235
+ getApiTypeFromEnableDualStreamMode(enabled, streamConfig) {
236
+ return streamConfig === undefined
237
+ ? 'RtcEngine_enableDualStreamMode'
238
+ : 'RtcEngine_enableDualStreamMode2';
239
+ }
240
+ getApiTypeFromSetDualStreamMode(mode, streamConfig) {
241
+ return streamConfig === undefined
242
+ ? 'RtcEngine_setDualStreamMode'
243
+ : 'RtcEngine_setDualStreamMode2';
244
+ }
245
+ getApiTypeFromLeaveChannelEx(connection, options) {
246
+ return 'RtcEngineEx_leaveChannelEx2';
247
+ }
248
+ getApiTypeFromCreateDataStream(config) {
249
+ return 'RtcEngine_createDataStream2';
250
+ }
251
+ getApiTypeFromAddVideoWatermark(watermarkUrl, options) {
252
+ return 'RtcEngine_addVideoWatermark2';
253
+ }
254
+ getApiTypeFromJoinChannelWithUserAccount(token, channelId, userAccount, options) {
255
+ if (Utils_1.AgoraEnv.AgoraRendererManager) {
256
+ Utils_1.AgoraEnv.AgoraRendererManager.defaultRenderConfig.channelId = channelId;
257
+ }
258
+ return options === undefined
259
+ ? 'RtcEngine_joinChannelWithUserAccount'
260
+ : 'RtcEngine_joinChannelWithUserAccount2';
261
+ }
262
+ getApiTypeFromCreateDataStreamEx(config, connection) {
263
+ return 'RtcEngineEx_createDataStreamEx2';
264
+ }
265
+ getApiTypeFromStartScreenCaptureBySourceType(sourceType, config) {
266
+ return 'RtcEngine_startScreenCapture2';
267
+ }
268
+ getApiTypeFromStopScreenCaptureBySourceType(sourceType) {
269
+ return 'RtcEngine_stopScreenCapture2';
270
+ }
271
+ getAudioDeviceManager() {
272
+ return this._audio_device_manager;
273
+ }
274
+ getVideoDeviceManager() {
275
+ return this._video_device_manager;
276
+ }
277
+ getMediaEngine() {
278
+ return this._media_engine;
279
+ }
280
+ getMusicContentCenter() {
281
+ return this._music_content_center;
282
+ }
283
+ getLocalSpatialAudioEngine() {
284
+ return this._local_spatial_audio_engine;
285
+ }
286
+ registerAudioEncodedFrameObserver(config, observer) {
287
+ if (!RtcEngineExInternal._audio_encoded_frame_observers.find((value) => value === observer)) {
288
+ RtcEngineExInternal._audio_encoded_frame_observers.push(observer);
289
+ }
290
+ return super.registerAudioEncodedFrameObserver(config, observer);
291
+ }
292
+ unregisterAudioEncodedFrameObserver(observer) {
293
+ RtcEngineExInternal._audio_encoded_frame_observers =
294
+ RtcEngineExInternal._audio_encoded_frame_observers.filter((value) => value !== observer);
295
+ return super.unregisterAudioEncodedFrameObserver(observer);
296
+ }
297
+ registerAudioSpectrumObserver(observer) {
298
+ if (!RtcEngineExInternal._audio_spectrum_observers.find((value) => value === observer)) {
299
+ RtcEngineExInternal._audio_spectrum_observers.push(observer);
300
+ }
301
+ return super.registerAudioSpectrumObserver(observer);
302
+ }
303
+ unregisterAudioSpectrumObserver(observer) {
304
+ RtcEngineExInternal._audio_spectrum_observers =
305
+ RtcEngineExInternal._audio_spectrum_observers.filter((value) => value !== observer);
306
+ return super.unregisterAudioSpectrumObserver(observer);
307
+ }
308
+ getScreenCaptureSources(thumbSize, iconSize, includeScreen) {
309
+ return super
310
+ .getScreenCaptureSources(thumbSize, iconSize, includeScreen)
311
+ .map((value) => {
312
+ if (value.thumbImage.buffer == 0) {
313
+ value.thumbImage.buffer = undefined;
314
+ }
315
+ else {
316
+ value.thumbImage.buffer = Utils_1.AgoraEnv.AgoraElectronBridge.GetBuffer(value.thumbImage.buffer, value.thumbImage?.length);
317
+ }
318
+ if (value.iconImage.buffer == 0) {
319
+ value.iconImage.buffer = undefined;
320
+ }
321
+ else {
322
+ value.iconImage.buffer = Utils_1.AgoraEnv.AgoraElectronBridge.GetBuffer(value.iconImage.buffer, value.iconImage.length);
323
+ }
324
+ return value;
325
+ });
326
+ }
327
+ setupLocalVideo(canvas) {
328
+ let { sourceType = AgoraMediaBase_1.VideoSourceType.VideoSourceCamera, uid, mediaPlayerId, view, renderMode, mirrorMode, } = canvas;
329
+ if (sourceType === AgoraMediaBase_1.VideoSourceType.VideoSourceMediaPlayer &&
330
+ mediaPlayerId !== undefined) {
331
+ uid = mediaPlayerId;
332
+ }
333
+ return (Utils_1.AgoraEnv.AgoraRendererManager?.setupLocalVideo({
334
+ videoSourceType: sourceType,
335
+ channelId: '',
336
+ uid,
337
+ view,
338
+ rendererOptions: {
339
+ contentMode: renderMode,
340
+ mirror: mirrorMode === AgoraBase_1.VideoMirrorModeType.VideoMirrorModeEnabled,
341
+ },
342
+ }) ?? -AgoraBase_1.ErrorCodeType.ErrNotInitialized);
343
+ }
344
+ setupRemoteVideo(canvas) {
345
+ const { sourceType = AgoraMediaBase_1.VideoSourceType.VideoSourceRemote, uid, view, renderMode, mirrorMode, } = canvas;
346
+ return (Utils_1.AgoraEnv.AgoraRendererManager?.setupRemoteVideo({
347
+ videoSourceType: sourceType,
348
+ channelId: Utils_1.AgoraEnv.AgoraRendererManager?.defaultRenderConfig?.channelId,
349
+ uid,
350
+ view,
351
+ rendererOptions: {
352
+ contentMode: renderMode,
353
+ mirror: mirrorMode === AgoraBase_1.VideoMirrorModeType.VideoMirrorModeEnabled,
354
+ },
355
+ }) ?? -AgoraBase_1.ErrorCodeType.ErrNotInitialized);
356
+ }
357
+ setupRemoteVideoEx(canvas, connection) {
358
+ const { sourceType = AgoraMediaBase_1.VideoSourceType.VideoSourceRemote, uid, view, renderMode, mirrorMode, } = canvas;
359
+ const { channelId } = connection;
360
+ return (Utils_1.AgoraEnv.AgoraRendererManager?.setupRemoteVideo({
361
+ videoSourceType: sourceType,
362
+ channelId,
363
+ uid,
364
+ view,
365
+ rendererOptions: {
366
+ contentMode: renderMode,
367
+ mirror: mirrorMode === AgoraBase_1.VideoMirrorModeType.VideoMirrorModeEnabled,
368
+ },
369
+ }) ?? -AgoraBase_1.ErrorCodeType.ErrNotInitialized);
370
+ }
371
+ setLocalRenderMode(renderMode, mirrorMode = AgoraBase_1.VideoMirrorModeType.VideoMirrorModeAuto) {
372
+ return (Utils_1.AgoraEnv.AgoraRendererManager?.setRenderOptionByConfig({
373
+ videoSourceType: AgoraMediaBase_1.VideoSourceType.VideoSourceCamera,
374
+ channelId: '',
375
+ uid: 0,
376
+ rendererOptions: {
377
+ contentMode: renderMode,
378
+ mirror: mirrorMode === AgoraBase_1.VideoMirrorModeType.VideoMirrorModeEnabled,
379
+ },
380
+ }) ?? -AgoraBase_1.ErrorCodeType.ErrNotInitialized);
381
+ }
382
+ setRemoteRenderMode(uid, renderMode, mirrorMode) {
383
+ return (Utils_1.AgoraEnv.AgoraRendererManager?.setRenderOptionByConfig({
384
+ videoSourceType: AgoraMediaBase_1.VideoSourceType.VideoSourceRemote,
385
+ channelId: Utils_1.AgoraEnv.AgoraRendererManager?.defaultRenderConfig.channelId,
386
+ uid,
387
+ rendererOptions: {
388
+ contentMode: renderMode,
389
+ mirror: mirrorMode === AgoraBase_1.VideoMirrorModeType.VideoMirrorModeEnabled,
390
+ },
391
+ }) ?? -AgoraBase_1.ErrorCodeType.ErrNotInitialized);
392
+ }
393
+ setRemoteRenderModeEx(uid, renderMode, mirrorMode, connection) {
394
+ const { channelId } = connection;
395
+ return (Utils_1.AgoraEnv.AgoraRendererManager?.setRenderOptionByConfig({
396
+ videoSourceType: AgoraMediaBase_1.VideoSourceType.VideoSourceRemote,
397
+ channelId,
398
+ uid,
399
+ rendererOptions: {
400
+ contentMode: renderMode,
401
+ mirror: mirrorMode === AgoraBase_1.VideoMirrorModeType.VideoMirrorModeEnabled,
402
+ },
403
+ }) ?? -AgoraBase_1.ErrorCodeType.ErrNotInitialized);
404
+ }
405
+ setLocalVideoMirrorMode(mirrorMode) {
406
+ return (Utils_1.AgoraEnv.AgoraRendererManager?.setRenderOptionByConfig({
407
+ videoSourceType: AgoraMediaBase_1.VideoSourceType.VideoSourceCamera,
408
+ channelId: '',
409
+ uid: 0,
410
+ rendererOptions: {
411
+ mirror: mirrorMode === AgoraBase_1.VideoMirrorModeType.VideoMirrorModeEnabled,
412
+ },
413
+ }) ?? -AgoraBase_1.ErrorCodeType.ErrNotInitialized);
414
+ }
415
+ destroyRendererByView(view) {
416
+ Utils_1.AgoraEnv.AgoraRendererManager?.destroyRendererByView(view);
417
+ }
418
+ destroyRendererByConfig(videoSourceType, channelId, uid) {
419
+ Utils_1.AgoraEnv.AgoraRendererManager?.destroyRenderersByConfig(videoSourceType, channelId, uid);
420
+ }
421
+ }
422
+ exports.RtcEngineExInternal = RtcEngineExInternal;