agora-electron-sdk 4.2.6 → 4.3.0-dev.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (172) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/js/Private/AgoraBase.js +139 -174
  3. package/js/Private/AgoraMediaBase.js +49 -20
  4. package/js/Private/AgoraMediaPlayerTypes.js +32 -23
  5. package/js/Private/IAgoraH265Transcoder.js +39 -0
  6. package/js/Private/IAgoraMediaStreamingSource.js +32 -32
  7. package/js/Private/IAgoraMusicContentCenter.js +19 -19
  8. package/js/Private/IAgoraRhythmPlayer.js +9 -9
  9. package/js/Private/IAgoraRtcEngine.js +12 -12
  10. package/js/Private/IAgoraSpatialAudio.js +3 -31
  11. package/js/Private/extension/IAgoraH265TranscoderExtension.js +2 -0
  12. package/js/Private/impl/AgoraMediaBaseImpl.js +26 -2
  13. package/js/Private/impl/IAgoraH265TranscoderImpl.js +119 -0
  14. package/js/Private/impl/IAgoraMediaEngineImpl.js +13 -13
  15. package/js/Private/impl/IAgoraMediaPlayerImpl.js +92 -74
  16. package/js/Private/impl/IAgoraMediaPlayerSourceImpl.js +12 -2
  17. package/js/Private/impl/IAgoraMediaRecorderImpl.js +2 -2
  18. package/js/Private/impl/IAgoraMusicContentCenterImpl.js +20 -20
  19. package/js/Private/impl/IAgoraRtcEngineExImpl.js +66 -84
  20. package/js/Private/impl/IAgoraRtcEngineImpl.js +456 -440
  21. package/js/Private/impl/IAgoraSpatialAudioImpl.js +157 -181
  22. package/js/Private/impl/IAudioDeviceManagerImpl.js +22 -22
  23. package/js/Private/internal/AgoraH265TranscoderInternal.js +86 -0
  24. package/js/Private/internal/AgoraMediaBaseInternal.js +34 -0
  25. package/js/Private/internal/IrisApiEngine.js +35 -20
  26. package/js/Private/internal/LocalSpatialAudioEngineInternal.js +0 -39
  27. package/js/Private/internal/MediaPlayerInternal.js +22 -21
  28. package/js/Private/internal/MusicContentCenterInternal.js +1 -4
  29. package/js/Private/internal/RtcEngineExInternal.js +101 -134
  30. package/js/Private/ti/AgoraMediaBase-ti.js +1 -1
  31. package/js/Private/ti/IAgoraH265Transcoder-ti.js +40 -0
  32. package/js/Private/ti/IAgoraMediaPlayerSource-ti.js +4 -2
  33. package/js/Private/ti/IAgoraMusicContentCenter-ti.js +5 -5
  34. package/js/Private/ti/IAgoraRtcEngine-ti.js +12 -11
  35. package/js/Renderer/AgoraView.js +28 -14
  36. package/js/Renderer/IRenderer.js +65 -17
  37. package/js/Renderer/IRendererManager.js +230 -0
  38. package/js/Renderer/RendererCache.js +170 -0
  39. package/js/Renderer/RendererManager.js +49 -460
  40. package/js/Renderer/WebGLRenderer/index.js +82 -234
  41. package/js/Renderer/YUVCanvasRenderer/index.js +27 -147
  42. package/js/Types.js +6 -6
  43. package/js/Utils.js +37 -88
  44. package/package.json +4 -3
  45. package/scripts/clean.js +12 -0
  46. package/scripts/synclib.js +8 -2
  47. package/ts/Private/AgoraBase.ts +225 -201
  48. package/ts/Private/AgoraMediaBase.ts +63 -25
  49. package/ts/Private/AgoraMediaPlayerTypes.ts +67 -24
  50. package/ts/Private/IAgoraH265Transcoder.ts +73 -0
  51. package/ts/Private/IAgoraLog.ts +1 -0
  52. package/ts/Private/IAgoraMediaEngine.ts +12 -7
  53. package/ts/Private/IAgoraMediaPlayer.ts +47 -21
  54. package/ts/Private/IAgoraMediaPlayerSource.ts +27 -6
  55. package/ts/Private/IAgoraMediaStreamingSource.ts +38 -37
  56. package/ts/Private/IAgoraMusicContentCenter.ts +20 -20
  57. package/ts/Private/IAgoraRhythmPlayer.ts +7 -6
  58. package/ts/Private/IAgoraRtcEngine.ts +407 -364
  59. package/ts/Private/IAgoraRtcEngineEx.ts +25 -61
  60. package/ts/Private/IAgoraSpatialAudio.ts +80 -191
  61. package/ts/Private/IAudioDeviceManager.ts +27 -14
  62. package/ts/Private/extension/IAgoraH265TranscoderExtension.ts +39 -0
  63. package/ts/Private/impl/AgoraMediaBaseImpl.ts +25 -1
  64. package/ts/Private/impl/IAgoraH265TranscoderImpl.ts +152 -0
  65. package/ts/Private/impl/IAgoraMediaEngineImpl.ts +13 -13
  66. package/ts/Private/impl/IAgoraMediaPlayerImpl.ts +110 -81
  67. package/ts/Private/impl/IAgoraMediaPlayerSourceImpl.ts +17 -2
  68. package/ts/Private/impl/IAgoraMediaRecorderImpl.ts +2 -2
  69. package/ts/Private/impl/IAgoraMusicContentCenterImpl.ts +21 -21
  70. package/ts/Private/impl/IAgoraRtcEngineExImpl.ts +71 -106
  71. package/ts/Private/impl/IAgoraRtcEngineImpl.ts +589 -572
  72. package/ts/Private/impl/IAgoraSpatialAudioImpl.ts +211 -218
  73. package/ts/Private/impl/IAudioDeviceManagerImpl.ts +22 -22
  74. package/ts/Private/internal/AgoraH265TranscoderInternal.ts +97 -0
  75. package/ts/Private/internal/AgoraMediaBaseInternal.ts +15 -0
  76. package/ts/Private/internal/IrisApiEngine.ts +42 -27
  77. package/ts/Private/internal/LocalSpatialAudioEngineInternal.ts +1 -86
  78. package/ts/Private/internal/MediaPlayerInternal.ts +20 -29
  79. package/ts/Private/internal/MusicContentCenterInternal.ts +1 -5
  80. package/ts/Private/internal/RtcEngineExInternal.ts +91 -204
  81. package/ts/Private/ti/AgoraMediaBase-ti.ts +1 -1
  82. package/ts/Private/ti/IAgoraH265Transcoder-ti.ts +16 -0
  83. package/ts/Private/ti/IAgoraMediaPlayerSource-ti.ts +4 -2
  84. package/ts/Private/ti/IAgoraMusicContentCenter-ti.ts +5 -5
  85. package/ts/Private/ti/IAgoraRtcEngine-ti.ts +12 -11
  86. package/ts/Renderer/AgoraView.ts +29 -19
  87. package/ts/Renderer/IRenderer.ts +71 -22
  88. package/ts/Renderer/IRendererManager.ts +273 -19
  89. package/ts/Renderer/RendererCache.ts +167 -0
  90. package/ts/Renderer/RendererManager.ts +62 -607
  91. package/ts/Renderer/WebGLRenderer/index.ts +117 -295
  92. package/ts/Renderer/YUVCanvasRenderer/index.ts +45 -198
  93. package/ts/Types.ts +17 -194
  94. package/ts/Utils.ts +36 -100
  95. package/types/Private/AgoraBase.d.ts +219 -200
  96. package/types/Private/AgoraBase.d.ts.map +1 -1
  97. package/types/Private/AgoraMediaBase.d.ts +63 -27
  98. package/types/Private/AgoraMediaBase.d.ts.map +1 -1
  99. package/types/Private/AgoraMediaPlayerTypes.d.ts +65 -24
  100. package/types/Private/AgoraMediaPlayerTypes.d.ts.map +1 -1
  101. package/types/Private/IAgoraH265Transcoder.d.ts +28 -0
  102. package/types/Private/IAgoraH265Transcoder.d.ts.map +1 -0
  103. package/types/Private/IAgoraLog.d.ts.map +1 -1
  104. package/types/Private/IAgoraMediaEngine.d.ts +11 -6
  105. package/types/Private/IAgoraMediaEngine.d.ts.map +1 -1
  106. package/types/Private/IAgoraMediaPlayer.d.ts +42 -20
  107. package/types/Private/IAgoraMediaPlayer.d.ts.map +1 -1
  108. package/types/Private/IAgoraMediaPlayerSource.d.ts +23 -6
  109. package/types/Private/IAgoraMediaPlayerSource.d.ts.map +1 -1
  110. package/types/Private/IAgoraMediaStreamingSource.d.ts.map +1 -1
  111. package/types/Private/IAgoraMusicContentCenter.d.ts +19 -19
  112. package/types/Private/IAgoraMusicContentCenter.d.ts.map +1 -1
  113. package/types/Private/IAgoraRhythmPlayer.d.ts +6 -6
  114. package/types/Private/IAgoraRhythmPlayer.d.ts.map +1 -1
  115. package/types/Private/IAgoraRtcEngine.d.ts +329 -293
  116. package/types/Private/IAgoraRtcEngine.d.ts.map +1 -1
  117. package/types/Private/IAgoraRtcEngineEx.d.ts +21 -53
  118. package/types/Private/IAgoraRtcEngineEx.d.ts.map +1 -1
  119. package/types/Private/IAgoraSpatialAudio.d.ts +56 -167
  120. package/types/Private/IAgoraSpatialAudio.d.ts.map +1 -1
  121. package/types/Private/IAudioDeviceManager.d.ts +27 -14
  122. package/types/Private/IAudioDeviceManager.d.ts.map +1 -1
  123. package/types/Private/extension/IAgoraH265TranscoderExtension.d.ts +24 -0
  124. package/types/Private/extension/IAgoraH265TranscoderExtension.d.ts.map +1 -0
  125. package/types/Private/impl/AgoraMediaBaseImpl.d.ts +5 -1
  126. package/types/Private/impl/AgoraMediaBaseImpl.d.ts.map +1 -1
  127. package/types/Private/impl/IAgoraH265TranscoderImpl.d.ts +15 -0
  128. package/types/Private/impl/IAgoraH265TranscoderImpl.d.ts.map +1 -0
  129. package/types/Private/impl/IAgoraMediaPlayerImpl.d.ts +6 -4
  130. package/types/Private/impl/IAgoraMediaPlayerImpl.d.ts.map +1 -1
  131. package/types/Private/impl/IAgoraMediaPlayerSourceImpl.d.ts.map +1 -1
  132. package/types/Private/impl/IAgoraRtcEngineExImpl.d.ts +2 -4
  133. package/types/Private/impl/IAgoraRtcEngineExImpl.d.ts.map +1 -1
  134. package/types/Private/impl/IAgoraRtcEngineImpl.d.ts +30 -25
  135. package/types/Private/impl/IAgoraRtcEngineImpl.d.ts.map +1 -1
  136. package/types/Private/impl/IAgoraSpatialAudioImpl.d.ts +20 -22
  137. package/types/Private/impl/IAgoraSpatialAudioImpl.d.ts.map +1 -1
  138. package/types/Private/internal/AgoraH265TranscoderInternal.d.ts +14 -0
  139. package/types/Private/internal/AgoraH265TranscoderInternal.d.ts.map +1 -0
  140. package/types/Private/internal/AgoraMediaBaseInternal.d.ts +8 -0
  141. package/types/Private/internal/AgoraMediaBaseInternal.d.ts.map +1 -0
  142. package/types/Private/internal/IrisApiEngine.d.ts +5 -2
  143. package/types/Private/internal/IrisApiEngine.d.ts.map +1 -1
  144. package/types/Private/internal/LocalSpatialAudioEngineInternal.d.ts +0 -15
  145. package/types/Private/internal/LocalSpatialAudioEngineInternal.d.ts.map +1 -1
  146. package/types/Private/internal/MediaPlayerInternal.d.ts.map +1 -1
  147. package/types/Private/internal/MusicContentCenterInternal.d.ts +0 -1
  148. package/types/Private/internal/MusicContentCenterInternal.d.ts.map +1 -1
  149. package/types/Private/internal/RtcEngineExInternal.d.ts +7 -13
  150. package/types/Private/internal/RtcEngineExInternal.d.ts.map +1 -1
  151. package/types/Private/ti/IAgoraH265Transcoder-ti.d.ts +8 -0
  152. package/types/Private/ti/IAgoraH265Transcoder-ti.d.ts.map +1 -0
  153. package/types/Private/ti/IAgoraMediaPlayerSource-ti.d.ts.map +1 -1
  154. package/types/Private/ti/IAgoraRtcEngine-ti.d.ts.map +1 -1
  155. package/types/Renderer/AgoraView.d.ts +4 -4
  156. package/types/Renderer/AgoraView.d.ts.map +1 -1
  157. package/types/Renderer/IRenderer.d.ts +11 -9
  158. package/types/Renderer/IRenderer.d.ts.map +1 -1
  159. package/types/Renderer/IRendererManager.d.ts +50 -12
  160. package/types/Renderer/IRendererManager.d.ts.map +1 -1
  161. package/types/Renderer/RendererCache.d.ts +36 -0
  162. package/types/Renderer/RendererCache.d.ts.map +1 -0
  163. package/types/Renderer/RendererManager.d.ts +13 -139
  164. package/types/Renderer/RendererManager.d.ts.map +1 -1
  165. package/types/Renderer/WebGLRenderer/index.d.ts +3 -18
  166. package/types/Renderer/WebGLRenderer/index.d.ts.map +1 -1
  167. package/types/Renderer/YUVCanvasRenderer/index.d.ts +4 -10
  168. package/types/Renderer/YUVCanvasRenderer/index.d.ts.map +1 -1
  169. package/types/Types.d.ts +11 -187
  170. package/types/Types.d.ts.map +1 -1
  171. package/types/Utils.d.ts +3 -20
  172. package/types/Utils.d.ts.map +1 -1
@@ -0,0 +1,39 @@
1
+ import { IH265TranscoderObserver } from '../IAgoraH265Transcoder';
2
+
3
+ export type IH265TranscoderEvent = IH265TranscoderObserver;
4
+
5
+ declare module '../IAgoraH265Transcoder' {
6
+ interface IH265Transcoder {
7
+ _addListenerPreCheck<EventType extends keyof IH265TranscoderEvent>(
8
+ eventType: EventType
9
+ ): boolean;
10
+
11
+ /**
12
+ * @ignore
13
+ */
14
+ addListener<EventType extends keyof IH265TranscoderEvent>(
15
+ eventType: EventType,
16
+ listener: IH265TranscoderEvent[EventType]
17
+ ): void;
18
+
19
+ /**
20
+ * @ignore
21
+ */
22
+ removeListener<EventType extends keyof IH265TranscoderEvent>(
23
+ eventType: EventType,
24
+ listener?: IH265TranscoderEvent[EventType]
25
+ ): void;
26
+
27
+ /**
28
+ * @ignore
29
+ */
30
+ removeAllListeners<EventType extends keyof IH265TranscoderEvent>(
31
+ eventType?: EventType
32
+ ): void;
33
+
34
+ /**
35
+ * @ignore
36
+ */
37
+ release(): void;
38
+ }
39
+ }
@@ -5,8 +5,30 @@ import {
5
5
  IAudioSpectrumObserver,
6
6
  IMediaRecorderObserver,
7
7
  IVideoEncodedFrameObserver,
8
+ IVideoFrameMetaInfo,
8
9
  IVideoFrameObserver,
10
+ MetaInfoKey,
9
11
  } from '../AgoraMediaBase';
12
+ // @ts-ignore
13
+ export class IVideoFrameMetaInfoImpl implements IVideoFrameMetaInfo {
14
+ getMetaInfoStr(key: MetaInfoKey): string {
15
+ const apiType = this.getApiTypeFromGetMetaInfoStr(key);
16
+ const jsonParams = {
17
+ key: key,
18
+ toJSON: () => {
19
+ return {
20
+ key: key,
21
+ };
22
+ },
23
+ };
24
+ const jsonResults = callIrisApi.call(this, apiType, jsonParams);
25
+ return jsonResults.result;
26
+ }
27
+
28
+ protected getApiTypeFromGetMetaInfoStr(key: MetaInfoKey): string {
29
+ return 'VideoFrameMetaInfo_getMetaInfoStr_c81192f';
30
+ }
31
+ }
10
32
 
11
33
  export function processIAudioPcmFrameSink(
12
34
  handler: IAudioPcmFrameSink,
@@ -180,7 +202,7 @@ export function processIMediaRecorderObserver(
180
202
  jsonParams.channelId,
181
203
  jsonParams.uid,
182
204
  jsonParams.state,
183
- jsonParams.error
205
+ jsonParams.reason
184
206
  );
185
207
  }
186
208
  break;
@@ -196,3 +218,5 @@ export function processIMediaRecorderObserver(
196
218
  break;
197
219
  }
198
220
  }
221
+
222
+ import { callIrisApi } from '../internal/IrisApiEngine';
@@ -0,0 +1,152 @@
1
+ import {
2
+ IH265Transcoder,
3
+ IH265TranscoderObserver,
4
+ } from '../IAgoraH265Transcoder';
5
+ export function processIH265TranscoderObserver(
6
+ handler: IH265TranscoderObserver,
7
+ event: string,
8
+ jsonParams: any
9
+ ) {
10
+ switch (event) {
11
+ case 'onEnableTranscode':
12
+ if (handler.onEnableTranscode !== undefined) {
13
+ handler.onEnableTranscode(jsonParams.result);
14
+ }
15
+ break;
16
+
17
+ case 'onQueryChannel':
18
+ if (handler.onQueryChannel !== undefined) {
19
+ handler.onQueryChannel(
20
+ jsonParams.result,
21
+ jsonParams.originChannel,
22
+ jsonParams.transcodeChannel
23
+ );
24
+ }
25
+ break;
26
+
27
+ case 'onTriggerTranscode':
28
+ if (handler.onTriggerTranscode !== undefined) {
29
+ handler.onTriggerTranscode(jsonParams.result);
30
+ }
31
+ break;
32
+ }
33
+ }
34
+
35
+ // @ts-ignore
36
+ export class IH265TranscoderImpl implements IH265Transcoder {
37
+ enableTranscode(token: string, channel: string, uid: number): number {
38
+ const apiType = this.getApiTypeFromEnableTranscode(token, channel, uid);
39
+ const jsonParams = {
40
+ token: token,
41
+ channel: channel,
42
+ uid: uid,
43
+ toJSON: () => {
44
+ return {
45
+ token: token,
46
+ channel: channel,
47
+ uid: uid,
48
+ };
49
+ },
50
+ };
51
+ const jsonResults = callIrisApi.call(this, apiType, jsonParams);
52
+ return jsonResults.result;
53
+ }
54
+
55
+ protected getApiTypeFromEnableTranscode(
56
+ token: string,
57
+ channel: string,
58
+ uid: number
59
+ ): string {
60
+ return 'H265Transcoder_enableTranscode_a0779eb';
61
+ }
62
+
63
+ queryChannel(token: string, channel: string, uid: number): number {
64
+ const apiType = this.getApiTypeFromQueryChannel(token, channel, uid);
65
+ const jsonParams = {
66
+ token: token,
67
+ channel: channel,
68
+ uid: uid,
69
+ toJSON: () => {
70
+ return {
71
+ token: token,
72
+ channel: channel,
73
+ uid: uid,
74
+ };
75
+ },
76
+ };
77
+ const jsonResults = callIrisApi.call(this, apiType, jsonParams);
78
+ return jsonResults.result;
79
+ }
80
+
81
+ protected getApiTypeFromQueryChannel(
82
+ token: string,
83
+ channel: string,
84
+ uid: number
85
+ ): string {
86
+ return 'H265Transcoder_queryChannel_a0779eb';
87
+ }
88
+
89
+ triggerTranscode(token: string, channel: string, uid: number): number {
90
+ const apiType = this.getApiTypeFromTriggerTranscode(token, channel, uid);
91
+ const jsonParams = {
92
+ token: token,
93
+ channel: channel,
94
+ uid: uid,
95
+ toJSON: () => {
96
+ return {
97
+ token: token,
98
+ channel: channel,
99
+ uid: uid,
100
+ };
101
+ },
102
+ };
103
+ const jsonResults = callIrisApi.call(this, apiType, jsonParams);
104
+ return jsonResults.result;
105
+ }
106
+
107
+ protected getApiTypeFromTriggerTranscode(
108
+ token: string,
109
+ channel: string,
110
+ uid: number
111
+ ): string {
112
+ return 'H265Transcoder_triggerTranscode_a0779eb';
113
+ }
114
+
115
+ registerTranscoderObserver(observer: IH265TranscoderObserver): number {
116
+ const apiType = this.getApiTypeFromRegisterTranscoderObserver(observer);
117
+ const jsonParams = {
118
+ observer: observer,
119
+ toJSON: () => {
120
+ return {};
121
+ },
122
+ };
123
+ const jsonResults = callIrisApi.call(this, apiType, jsonParams);
124
+ return jsonResults.result;
125
+ }
126
+
127
+ protected getApiTypeFromRegisterTranscoderObserver(
128
+ observer: IH265TranscoderObserver
129
+ ): string {
130
+ return 'H265Transcoder_registerTranscoderObserver_e1ee996';
131
+ }
132
+
133
+ unregisterTranscoderObserver(observer: IH265TranscoderObserver): number {
134
+ const apiType = this.getApiTypeFromUnregisterTranscoderObserver(observer);
135
+ const jsonParams = {
136
+ observer: observer,
137
+ toJSON: () => {
138
+ return {};
139
+ },
140
+ };
141
+ const jsonResults = callIrisApi.call(this, apiType, jsonParams);
142
+ return jsonResults.result;
143
+ }
144
+
145
+ protected getApiTypeFromUnregisterTranscoderObserver(
146
+ observer: IH265TranscoderObserver
147
+ ): string {
148
+ return 'H265Transcoder_unregisterTranscoderObserver_e1ee996';
149
+ }
150
+ }
151
+
152
+ import { callIrisApi } from '../internal/IrisApiEngine';
@@ -31,7 +31,7 @@ export class IMediaEngineImpl implements IMediaEngine {
31
31
  protected getApiTypeFromRegisterAudioFrameObserver(
32
32
  observer: IAudioFrameObserver
33
33
  ): string {
34
- return 'MediaEngine_registerAudioFrameObserver';
34
+ return 'MediaEngine_registerAudioFrameObserver_d873a64';
35
35
  }
36
36
 
37
37
  registerVideoFrameObserver(observer: IVideoFrameObserver): number {
@@ -49,7 +49,7 @@ export class IMediaEngineImpl implements IMediaEngine {
49
49
  protected getApiTypeFromRegisterVideoFrameObserver(
50
50
  observer: IVideoFrameObserver
51
51
  ): string {
52
- return 'MediaEngine_registerVideoFrameObserver';
52
+ return 'MediaEngine_registerVideoFrameObserver_2cc0ef1';
53
53
  }
54
54
 
55
55
  registerVideoEncodedFrameObserver(
@@ -70,7 +70,7 @@ export class IMediaEngineImpl implements IMediaEngine {
70
70
  protected getApiTypeFromRegisterVideoEncodedFrameObserver(
71
71
  observer: IVideoEncodedFrameObserver
72
72
  ): string {
73
- return 'MediaEngine_registerVideoEncodedFrameObserver';
73
+ return 'MediaEngine_registerVideoEncodedFrameObserver_d45d579';
74
74
  }
75
75
 
76
76
  pushAudioFrame(frame: AudioFrame, trackId: number = 0): number {
@@ -93,7 +93,7 @@ export class IMediaEngineImpl implements IMediaEngine {
93
93
  frame: AudioFrame,
94
94
  trackId: number = 0
95
95
  ): string {
96
- return 'MediaEngine_pushAudioFrame';
96
+ return 'MediaEngine_pushAudioFrame_c71f4ab';
97
97
  }
98
98
 
99
99
  pullAudioFrame(frame: AudioFrame): number {
@@ -111,7 +111,7 @@ export class IMediaEngineImpl implements IMediaEngine {
111
111
  }
112
112
 
113
113
  protected getApiTypeFromPullAudioFrame(frame: AudioFrame): string {
114
- return 'MediaEngine_pullAudioFrame';
114
+ return 'MediaEngine_pullAudioFrame_2c74a9c';
115
115
  }
116
116
 
117
117
  setExternalVideoSource(
@@ -150,7 +150,7 @@ export class IMediaEngineImpl implements IMediaEngine {
150
150
  sourceType: ExternalVideoSourceType = ExternalVideoSourceType.VideoFrame,
151
151
  encodedVideoOption: SenderOptions = new SenderOptions()
152
152
  ): string {
153
- return 'MediaEngine_setExternalVideoSource';
153
+ return 'MediaEngine_setExternalVideoSource_fff99b6';
154
154
  }
155
155
 
156
156
  setExternalAudioSource(
@@ -194,7 +194,7 @@ export class IMediaEngineImpl implements IMediaEngine {
194
194
  localPlayback: boolean = false,
195
195
  publish: boolean = true
196
196
  ): string {
197
- return 'MediaEngine_setExternalAudioSource';
197
+ return 'MediaEngine_setExternalAudioSource_e6538be';
198
198
  }
199
199
 
200
200
  createCustomAudioTrack(
@@ -223,7 +223,7 @@ export class IMediaEngineImpl implements IMediaEngine {
223
223
  trackType: AudioTrackType,
224
224
  config: AudioTrackConfig
225
225
  ): string {
226
- return 'MediaEngine_createCustomAudioTrack';
226
+ return 'MediaEngine_createCustomAudioTrack_5a0bf1a';
227
227
  }
228
228
 
229
229
  destroyCustomAudioTrack(trackId: number): number {
@@ -241,7 +241,7 @@ export class IMediaEngineImpl implements IMediaEngine {
241
241
  }
242
242
 
243
243
  protected getApiTypeFromDestroyCustomAudioTrack(trackId: number): string {
244
- return 'MediaEngine_destroyCustomAudioTrack';
244
+ return 'MediaEngine_destroyCustomAudioTrack_6178b5d';
245
245
  }
246
246
 
247
247
  setExternalAudioSink(
@@ -275,7 +275,7 @@ export class IMediaEngineImpl implements IMediaEngine {
275
275
  sampleRate: number,
276
276
  channels: number
277
277
  ): string {
278
- return 'MediaEngine_setExternalAudioSink';
278
+ return 'MediaEngine_setExternalAudioSink_d275ce0';
279
279
  }
280
280
 
281
281
  enableCustomAudioLocalPlayback(trackId: number, enabled: boolean): number {
@@ -301,7 +301,7 @@ export class IMediaEngineImpl implements IMediaEngine {
301
301
  trackId: number,
302
302
  enabled: boolean
303
303
  ): string {
304
- return 'MediaEngine_enableCustomAudioLocalPlayback';
304
+ return 'MediaEngine_enableCustomAudioLocalPlayback_5f38e8a';
305
305
  }
306
306
 
307
307
  pushVideoFrame(frame: ExternalVideoFrame, videoTrackId: number = 0): number {
@@ -324,7 +324,7 @@ export class IMediaEngineImpl implements IMediaEngine {
324
324
  frame: ExternalVideoFrame,
325
325
  videoTrackId: number = 0
326
326
  ): string {
327
- return 'MediaEngine_pushVideoFrame';
327
+ return 'MediaEngine_pushVideoFrame_4e544e2';
328
328
  }
329
329
 
330
330
  pushEncodedVideoImage(
@@ -362,7 +362,7 @@ export class IMediaEngineImpl implements IMediaEngine {
362
362
  videoEncodedFrameInfo: EncodedVideoFrameInfo,
363
363
  videoTrackId: number = 0
364
364
  ): string {
365
- return 'MediaEngine_pushEncodedVideoImage';
365
+ return 'MediaEngine_pushEncodedVideoImage_e71452b';
366
366
  }
367
367
 
368
368
  release(): void {