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.
- package/CHANGELOG.md +20 -0
- package/js/Private/AgoraBase.js +139 -174
- package/js/Private/AgoraMediaBase.js +49 -20
- package/js/Private/AgoraMediaPlayerTypes.js +32 -23
- package/js/Private/IAgoraH265Transcoder.js +39 -0
- package/js/Private/IAgoraMediaStreamingSource.js +32 -32
- package/js/Private/IAgoraMusicContentCenter.js +19 -19
- package/js/Private/IAgoraRhythmPlayer.js +9 -9
- package/js/Private/IAgoraRtcEngine.js +12 -12
- package/js/Private/IAgoraSpatialAudio.js +3 -31
- package/js/Private/extension/IAgoraH265TranscoderExtension.js +2 -0
- package/js/Private/impl/AgoraMediaBaseImpl.js +26 -2
- package/js/Private/impl/IAgoraH265TranscoderImpl.js +119 -0
- package/js/Private/impl/IAgoraMediaEngineImpl.js +13 -13
- package/js/Private/impl/IAgoraMediaPlayerImpl.js +92 -74
- package/js/Private/impl/IAgoraMediaPlayerSourceImpl.js +12 -2
- package/js/Private/impl/IAgoraMediaRecorderImpl.js +2 -2
- package/js/Private/impl/IAgoraMusicContentCenterImpl.js +20 -20
- package/js/Private/impl/IAgoraRtcEngineExImpl.js +66 -84
- package/js/Private/impl/IAgoraRtcEngineImpl.js +456 -440
- package/js/Private/impl/IAgoraSpatialAudioImpl.js +157 -181
- package/js/Private/impl/IAudioDeviceManagerImpl.js +22 -22
- package/js/Private/internal/AgoraH265TranscoderInternal.js +86 -0
- package/js/Private/internal/AgoraMediaBaseInternal.js +34 -0
- package/js/Private/internal/IrisApiEngine.js +35 -20
- package/js/Private/internal/LocalSpatialAudioEngineInternal.js +0 -39
- package/js/Private/internal/MediaPlayerInternal.js +22 -21
- package/js/Private/internal/MusicContentCenterInternal.js +1 -4
- package/js/Private/internal/RtcEngineExInternal.js +101 -134
- package/js/Private/ti/AgoraMediaBase-ti.js +1 -1
- package/js/Private/ti/IAgoraH265Transcoder-ti.js +40 -0
- package/js/Private/ti/IAgoraMediaPlayerSource-ti.js +4 -2
- package/js/Private/ti/IAgoraMusicContentCenter-ti.js +5 -5
- package/js/Private/ti/IAgoraRtcEngine-ti.js +12 -11
- package/js/Renderer/AgoraView.js +28 -14
- package/js/Renderer/IRenderer.js +65 -17
- package/js/Renderer/IRendererManager.js +230 -0
- package/js/Renderer/RendererCache.js +170 -0
- package/js/Renderer/RendererManager.js +49 -460
- package/js/Renderer/WebGLRenderer/index.js +82 -234
- package/js/Renderer/YUVCanvasRenderer/index.js +27 -147
- package/js/Types.js +6 -6
- package/js/Utils.js +37 -88
- package/package.json +4 -3
- package/scripts/clean.js +12 -0
- package/scripts/synclib.js +8 -2
- package/ts/Private/AgoraBase.ts +225 -201
- package/ts/Private/AgoraMediaBase.ts +63 -25
- package/ts/Private/AgoraMediaPlayerTypes.ts +67 -24
- package/ts/Private/IAgoraH265Transcoder.ts +73 -0
- package/ts/Private/IAgoraLog.ts +1 -0
- package/ts/Private/IAgoraMediaEngine.ts +12 -7
- package/ts/Private/IAgoraMediaPlayer.ts +47 -21
- package/ts/Private/IAgoraMediaPlayerSource.ts +27 -6
- package/ts/Private/IAgoraMediaStreamingSource.ts +38 -37
- package/ts/Private/IAgoraMusicContentCenter.ts +20 -20
- package/ts/Private/IAgoraRhythmPlayer.ts +7 -6
- package/ts/Private/IAgoraRtcEngine.ts +407 -364
- package/ts/Private/IAgoraRtcEngineEx.ts +25 -61
- package/ts/Private/IAgoraSpatialAudio.ts +80 -191
- package/ts/Private/IAudioDeviceManager.ts +27 -14
- package/ts/Private/extension/IAgoraH265TranscoderExtension.ts +39 -0
- package/ts/Private/impl/AgoraMediaBaseImpl.ts +25 -1
- package/ts/Private/impl/IAgoraH265TranscoderImpl.ts +152 -0
- package/ts/Private/impl/IAgoraMediaEngineImpl.ts +13 -13
- package/ts/Private/impl/IAgoraMediaPlayerImpl.ts +110 -81
- package/ts/Private/impl/IAgoraMediaPlayerSourceImpl.ts +17 -2
- package/ts/Private/impl/IAgoraMediaRecorderImpl.ts +2 -2
- package/ts/Private/impl/IAgoraMusicContentCenterImpl.ts +21 -21
- package/ts/Private/impl/IAgoraRtcEngineExImpl.ts +71 -106
- package/ts/Private/impl/IAgoraRtcEngineImpl.ts +589 -572
- package/ts/Private/impl/IAgoraSpatialAudioImpl.ts +211 -218
- package/ts/Private/impl/IAudioDeviceManagerImpl.ts +22 -22
- package/ts/Private/internal/AgoraH265TranscoderInternal.ts +97 -0
- package/ts/Private/internal/AgoraMediaBaseInternal.ts +15 -0
- package/ts/Private/internal/IrisApiEngine.ts +42 -27
- package/ts/Private/internal/LocalSpatialAudioEngineInternal.ts +1 -86
- package/ts/Private/internal/MediaPlayerInternal.ts +20 -29
- package/ts/Private/internal/MusicContentCenterInternal.ts +1 -5
- package/ts/Private/internal/RtcEngineExInternal.ts +91 -204
- package/ts/Private/ti/AgoraMediaBase-ti.ts +1 -1
- package/ts/Private/ti/IAgoraH265Transcoder-ti.ts +16 -0
- package/ts/Private/ti/IAgoraMediaPlayerSource-ti.ts +4 -2
- package/ts/Private/ti/IAgoraMusicContentCenter-ti.ts +5 -5
- package/ts/Private/ti/IAgoraRtcEngine-ti.ts +12 -11
- package/ts/Renderer/AgoraView.ts +29 -19
- package/ts/Renderer/IRenderer.ts +71 -22
- package/ts/Renderer/IRendererManager.ts +273 -19
- package/ts/Renderer/RendererCache.ts +167 -0
- package/ts/Renderer/RendererManager.ts +62 -607
- package/ts/Renderer/WebGLRenderer/index.ts +117 -295
- package/ts/Renderer/YUVCanvasRenderer/index.ts +45 -198
- package/ts/Types.ts +17 -194
- package/ts/Utils.ts +36 -100
- package/types/Private/AgoraBase.d.ts +219 -200
- package/types/Private/AgoraBase.d.ts.map +1 -1
- package/types/Private/AgoraMediaBase.d.ts +63 -27
- package/types/Private/AgoraMediaBase.d.ts.map +1 -1
- package/types/Private/AgoraMediaPlayerTypes.d.ts +65 -24
- package/types/Private/AgoraMediaPlayerTypes.d.ts.map +1 -1
- package/types/Private/IAgoraH265Transcoder.d.ts +28 -0
- package/types/Private/IAgoraH265Transcoder.d.ts.map +1 -0
- package/types/Private/IAgoraLog.d.ts.map +1 -1
- package/types/Private/IAgoraMediaEngine.d.ts +11 -6
- package/types/Private/IAgoraMediaEngine.d.ts.map +1 -1
- package/types/Private/IAgoraMediaPlayer.d.ts +42 -20
- package/types/Private/IAgoraMediaPlayer.d.ts.map +1 -1
- package/types/Private/IAgoraMediaPlayerSource.d.ts +23 -6
- package/types/Private/IAgoraMediaPlayerSource.d.ts.map +1 -1
- package/types/Private/IAgoraMediaStreamingSource.d.ts.map +1 -1
- package/types/Private/IAgoraMusicContentCenter.d.ts +19 -19
- package/types/Private/IAgoraMusicContentCenter.d.ts.map +1 -1
- package/types/Private/IAgoraRhythmPlayer.d.ts +6 -6
- package/types/Private/IAgoraRhythmPlayer.d.ts.map +1 -1
- package/types/Private/IAgoraRtcEngine.d.ts +329 -293
- package/types/Private/IAgoraRtcEngine.d.ts.map +1 -1
- package/types/Private/IAgoraRtcEngineEx.d.ts +21 -53
- package/types/Private/IAgoraRtcEngineEx.d.ts.map +1 -1
- package/types/Private/IAgoraSpatialAudio.d.ts +56 -167
- package/types/Private/IAgoraSpatialAudio.d.ts.map +1 -1
- package/types/Private/IAudioDeviceManager.d.ts +27 -14
- package/types/Private/IAudioDeviceManager.d.ts.map +1 -1
- package/types/Private/extension/IAgoraH265TranscoderExtension.d.ts +24 -0
- package/types/Private/extension/IAgoraH265TranscoderExtension.d.ts.map +1 -0
- package/types/Private/impl/AgoraMediaBaseImpl.d.ts +5 -1
- package/types/Private/impl/AgoraMediaBaseImpl.d.ts.map +1 -1
- package/types/Private/impl/IAgoraH265TranscoderImpl.d.ts +15 -0
- package/types/Private/impl/IAgoraH265TranscoderImpl.d.ts.map +1 -0
- package/types/Private/impl/IAgoraMediaPlayerImpl.d.ts +6 -4
- package/types/Private/impl/IAgoraMediaPlayerImpl.d.ts.map +1 -1
- package/types/Private/impl/IAgoraMediaPlayerSourceImpl.d.ts.map +1 -1
- package/types/Private/impl/IAgoraRtcEngineExImpl.d.ts +2 -4
- package/types/Private/impl/IAgoraRtcEngineExImpl.d.ts.map +1 -1
- package/types/Private/impl/IAgoraRtcEngineImpl.d.ts +30 -25
- package/types/Private/impl/IAgoraRtcEngineImpl.d.ts.map +1 -1
- package/types/Private/impl/IAgoraSpatialAudioImpl.d.ts +20 -22
- package/types/Private/impl/IAgoraSpatialAudioImpl.d.ts.map +1 -1
- package/types/Private/internal/AgoraH265TranscoderInternal.d.ts +14 -0
- package/types/Private/internal/AgoraH265TranscoderInternal.d.ts.map +1 -0
- package/types/Private/internal/AgoraMediaBaseInternal.d.ts +8 -0
- package/types/Private/internal/AgoraMediaBaseInternal.d.ts.map +1 -0
- package/types/Private/internal/IrisApiEngine.d.ts +5 -2
- package/types/Private/internal/IrisApiEngine.d.ts.map +1 -1
- package/types/Private/internal/LocalSpatialAudioEngineInternal.d.ts +0 -15
- package/types/Private/internal/LocalSpatialAudioEngineInternal.d.ts.map +1 -1
- package/types/Private/internal/MediaPlayerInternal.d.ts.map +1 -1
- package/types/Private/internal/MusicContentCenterInternal.d.ts +0 -1
- package/types/Private/internal/MusicContentCenterInternal.d.ts.map +1 -1
- package/types/Private/internal/RtcEngineExInternal.d.ts +7 -13
- package/types/Private/internal/RtcEngineExInternal.d.ts.map +1 -1
- package/types/Private/ti/IAgoraH265Transcoder-ti.d.ts +8 -0
- package/types/Private/ti/IAgoraH265Transcoder-ti.d.ts.map +1 -0
- package/types/Private/ti/IAgoraMediaPlayerSource-ti.d.ts.map +1 -1
- package/types/Private/ti/IAgoraRtcEngine-ti.d.ts.map +1 -1
- package/types/Renderer/AgoraView.d.ts +4 -4
- package/types/Renderer/AgoraView.d.ts.map +1 -1
- package/types/Renderer/IRenderer.d.ts +11 -9
- package/types/Renderer/IRenderer.d.ts.map +1 -1
- package/types/Renderer/IRendererManager.d.ts +50 -12
- package/types/Renderer/IRendererManager.d.ts.map +1 -1
- package/types/Renderer/RendererCache.d.ts +36 -0
- package/types/Renderer/RendererCache.d.ts.map +1 -0
- package/types/Renderer/RendererManager.d.ts +13 -139
- package/types/Renderer/RendererManager.d.ts.map +1 -1
- package/types/Renderer/WebGLRenderer/index.d.ts +3 -18
- package/types/Renderer/WebGLRenderer/index.d.ts.map +1 -1
- package/types/Renderer/YUVCanvasRenderer/index.d.ts +4 -10
- package/types/Renderer/YUVCanvasRenderer/index.d.ts.map +1 -1
- package/types/Types.d.ts +11 -187
- package/types/Types.d.ts.map +1 -1
- package/types/Utils.d.ts +3 -20
- package/types/Utils.d.ts.map +1 -1
|
@@ -40,7 +40,7 @@ export class IAudioDeviceManagerImpl implements IAudioDeviceManager {
|
|
|
40
40
|
}
|
|
41
41
|
|
|
42
42
|
protected getApiTypeFromSetPlaybackDevice(deviceId: string): string {
|
|
43
|
-
return '
|
|
43
|
+
return 'AudioDeviceManager_setPlaybackDevice_4ad5f6e';
|
|
44
44
|
}
|
|
45
45
|
|
|
46
46
|
getPlaybackDevice(): string {
|
|
@@ -52,7 +52,7 @@ export class IAudioDeviceManagerImpl implements IAudioDeviceManager {
|
|
|
52
52
|
}
|
|
53
53
|
|
|
54
54
|
protected getApiTypeFromGetPlaybackDevice(): string {
|
|
55
|
-
return '
|
|
55
|
+
return 'AudioDeviceManager_getPlaybackDevice_73b9872';
|
|
56
56
|
}
|
|
57
57
|
|
|
58
58
|
getPlaybackDeviceInfo(): AudioDeviceInfo {
|
|
@@ -63,7 +63,7 @@ export class IAudioDeviceManagerImpl implements IAudioDeviceManager {
|
|
|
63
63
|
}
|
|
64
64
|
|
|
65
65
|
protected getApiTypeFromGetPlaybackDeviceInfo(): string {
|
|
66
|
-
return '
|
|
66
|
+
return 'AudioDeviceManager_getPlaybackDeviceInfo_5540658';
|
|
67
67
|
}
|
|
68
68
|
|
|
69
69
|
setPlaybackDeviceVolume(volume: number): number {
|
|
@@ -81,7 +81,7 @@ export class IAudioDeviceManagerImpl implements IAudioDeviceManager {
|
|
|
81
81
|
}
|
|
82
82
|
|
|
83
83
|
protected getApiTypeFromSetPlaybackDeviceVolume(volume: number): string {
|
|
84
|
-
return '
|
|
84
|
+
return 'AudioDeviceManager_setPlaybackDeviceVolume_46f8ab7';
|
|
85
85
|
}
|
|
86
86
|
|
|
87
87
|
getPlaybackDeviceVolume(): number {
|
|
@@ -93,7 +93,7 @@ export class IAudioDeviceManagerImpl implements IAudioDeviceManager {
|
|
|
93
93
|
}
|
|
94
94
|
|
|
95
95
|
protected getApiTypeFromGetPlaybackDeviceVolume(): string {
|
|
96
|
-
return '
|
|
96
|
+
return 'AudioDeviceManager_getPlaybackDeviceVolume_915cb25';
|
|
97
97
|
}
|
|
98
98
|
|
|
99
99
|
setRecordingDevice(deviceId: string): number {
|
|
@@ -111,7 +111,7 @@ export class IAudioDeviceManagerImpl implements IAudioDeviceManager {
|
|
|
111
111
|
}
|
|
112
112
|
|
|
113
113
|
protected getApiTypeFromSetRecordingDevice(deviceId: string): string {
|
|
114
|
-
return '
|
|
114
|
+
return 'AudioDeviceManager_setRecordingDevice_4ad5f6e';
|
|
115
115
|
}
|
|
116
116
|
|
|
117
117
|
getRecordingDevice(): string {
|
|
@@ -123,7 +123,7 @@ export class IAudioDeviceManagerImpl implements IAudioDeviceManager {
|
|
|
123
123
|
}
|
|
124
124
|
|
|
125
125
|
protected getApiTypeFromGetRecordingDevice(): string {
|
|
126
|
-
return '
|
|
126
|
+
return 'AudioDeviceManager_getRecordingDevice_73b9872';
|
|
127
127
|
}
|
|
128
128
|
|
|
129
129
|
getRecordingDeviceInfo(): AudioDeviceInfo {
|
|
@@ -134,7 +134,7 @@ export class IAudioDeviceManagerImpl implements IAudioDeviceManager {
|
|
|
134
134
|
}
|
|
135
135
|
|
|
136
136
|
protected getApiTypeFromGetRecordingDeviceInfo(): string {
|
|
137
|
-
return '
|
|
137
|
+
return 'AudioDeviceManager_getRecordingDeviceInfo_5540658';
|
|
138
138
|
}
|
|
139
139
|
|
|
140
140
|
setRecordingDeviceVolume(volume: number): number {
|
|
@@ -152,7 +152,7 @@ export class IAudioDeviceManagerImpl implements IAudioDeviceManager {
|
|
|
152
152
|
}
|
|
153
153
|
|
|
154
154
|
protected getApiTypeFromSetRecordingDeviceVolume(volume: number): string {
|
|
155
|
-
return '
|
|
155
|
+
return 'AudioDeviceManager_setRecordingDeviceVolume_46f8ab7';
|
|
156
156
|
}
|
|
157
157
|
|
|
158
158
|
getRecordingDeviceVolume(): number {
|
|
@@ -164,7 +164,7 @@ export class IAudioDeviceManagerImpl implements IAudioDeviceManager {
|
|
|
164
164
|
}
|
|
165
165
|
|
|
166
166
|
protected getApiTypeFromGetRecordingDeviceVolume(): string {
|
|
167
|
-
return '
|
|
167
|
+
return 'AudioDeviceManager_getRecordingDeviceVolume_915cb25';
|
|
168
168
|
}
|
|
169
169
|
|
|
170
170
|
setLoopbackDevice(deviceId: string): number {
|
|
@@ -182,7 +182,7 @@ export class IAudioDeviceManagerImpl implements IAudioDeviceManager {
|
|
|
182
182
|
}
|
|
183
183
|
|
|
184
184
|
protected getApiTypeFromSetLoopbackDevice(deviceId: string): string {
|
|
185
|
-
return '
|
|
185
|
+
return 'AudioDeviceManager_setLoopbackDevice_4ad5f6e';
|
|
186
186
|
}
|
|
187
187
|
|
|
188
188
|
getLoopbackDevice(): string {
|
|
@@ -194,7 +194,7 @@ export class IAudioDeviceManagerImpl implements IAudioDeviceManager {
|
|
|
194
194
|
}
|
|
195
195
|
|
|
196
196
|
protected getApiTypeFromGetLoopbackDevice(): string {
|
|
197
|
-
return '
|
|
197
|
+
return 'AudioDeviceManager_getLoopbackDevice_73b9872';
|
|
198
198
|
}
|
|
199
199
|
|
|
200
200
|
setPlaybackDeviceMute(mute: boolean): number {
|
|
@@ -212,7 +212,7 @@ export class IAudioDeviceManagerImpl implements IAudioDeviceManager {
|
|
|
212
212
|
}
|
|
213
213
|
|
|
214
214
|
protected getApiTypeFromSetPlaybackDeviceMute(mute: boolean): string {
|
|
215
|
-
return '
|
|
215
|
+
return 'AudioDeviceManager_setPlaybackDeviceMute_5039d15';
|
|
216
216
|
}
|
|
217
217
|
|
|
218
218
|
getPlaybackDeviceMute(): boolean {
|
|
@@ -224,7 +224,7 @@ export class IAudioDeviceManagerImpl implements IAudioDeviceManager {
|
|
|
224
224
|
}
|
|
225
225
|
|
|
226
226
|
protected getApiTypeFromGetPlaybackDeviceMute(): string {
|
|
227
|
-
return '
|
|
227
|
+
return 'AudioDeviceManager_getPlaybackDeviceMute_d942327';
|
|
228
228
|
}
|
|
229
229
|
|
|
230
230
|
setRecordingDeviceMute(mute: boolean): number {
|
|
@@ -242,7 +242,7 @@ export class IAudioDeviceManagerImpl implements IAudioDeviceManager {
|
|
|
242
242
|
}
|
|
243
243
|
|
|
244
244
|
protected getApiTypeFromSetRecordingDeviceMute(mute: boolean): string {
|
|
245
|
-
return '
|
|
245
|
+
return 'AudioDeviceManager_setRecordingDeviceMute_5039d15';
|
|
246
246
|
}
|
|
247
247
|
|
|
248
248
|
getRecordingDeviceMute(): boolean {
|
|
@@ -254,7 +254,7 @@ export class IAudioDeviceManagerImpl implements IAudioDeviceManager {
|
|
|
254
254
|
}
|
|
255
255
|
|
|
256
256
|
protected getApiTypeFromGetRecordingDeviceMute(): string {
|
|
257
|
-
return '
|
|
257
|
+
return 'AudioDeviceManager_getRecordingDeviceMute_d942327';
|
|
258
258
|
}
|
|
259
259
|
|
|
260
260
|
startPlaybackDeviceTest(testAudioFilePath: string): number {
|
|
@@ -275,7 +275,7 @@ export class IAudioDeviceManagerImpl implements IAudioDeviceManager {
|
|
|
275
275
|
protected getApiTypeFromStartPlaybackDeviceTest(
|
|
276
276
|
testAudioFilePath: string
|
|
277
277
|
): string {
|
|
278
|
-
return '
|
|
278
|
+
return 'AudioDeviceManager_startPlaybackDeviceTest_3a2037f';
|
|
279
279
|
}
|
|
280
280
|
|
|
281
281
|
stopPlaybackDeviceTest(): number {
|
|
@@ -307,7 +307,7 @@ export class IAudioDeviceManagerImpl implements IAudioDeviceManager {
|
|
|
307
307
|
protected getApiTypeFromStartRecordingDeviceTest(
|
|
308
308
|
indicationInterval: number
|
|
309
309
|
): string {
|
|
310
|
-
return '
|
|
310
|
+
return 'AudioDeviceManager_startRecordingDeviceTest_46f8ab7';
|
|
311
311
|
}
|
|
312
312
|
|
|
313
313
|
stopRecordingDeviceTest(): number {
|
|
@@ -339,7 +339,7 @@ export class IAudioDeviceManagerImpl implements IAudioDeviceManager {
|
|
|
339
339
|
protected getApiTypeFromStartAudioDeviceLoopbackTest(
|
|
340
340
|
indicationInterval: number
|
|
341
341
|
): string {
|
|
342
|
-
return '
|
|
342
|
+
return 'AudioDeviceManager_startAudioDeviceLoopbackTest_46f8ab7';
|
|
343
343
|
}
|
|
344
344
|
|
|
345
345
|
stopAudioDeviceLoopbackTest(): number {
|
|
@@ -368,7 +368,7 @@ export class IAudioDeviceManagerImpl implements IAudioDeviceManager {
|
|
|
368
368
|
}
|
|
369
369
|
|
|
370
370
|
protected getApiTypeFromFollowSystemPlaybackDevice(enable: boolean): string {
|
|
371
|
-
return '
|
|
371
|
+
return 'AudioDeviceManager_followSystemPlaybackDevice_5039d15';
|
|
372
372
|
}
|
|
373
373
|
|
|
374
374
|
followSystemRecordingDevice(enable: boolean): number {
|
|
@@ -386,7 +386,7 @@ export class IAudioDeviceManagerImpl implements IAudioDeviceManager {
|
|
|
386
386
|
}
|
|
387
387
|
|
|
388
388
|
protected getApiTypeFromFollowSystemRecordingDevice(enable: boolean): string {
|
|
389
|
-
return '
|
|
389
|
+
return 'AudioDeviceManager_followSystemRecordingDevice_5039d15';
|
|
390
390
|
}
|
|
391
391
|
|
|
392
392
|
followSystemLoopbackDevice(enable: boolean): number {
|
|
@@ -404,7 +404,7 @@ export class IAudioDeviceManagerImpl implements IAudioDeviceManager {
|
|
|
404
404
|
}
|
|
405
405
|
|
|
406
406
|
protected getApiTypeFromFollowSystemLoopbackDevice(enable: boolean): string {
|
|
407
|
-
return '
|
|
407
|
+
return 'AudioDeviceManager_followSystemLoopbackDevice_5039d15';
|
|
408
408
|
}
|
|
409
409
|
|
|
410
410
|
release(): void {
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { createCheckers } from 'ts-interface-checker';
|
|
2
|
+
|
|
3
|
+
import { IH265TranscoderObserver } from '../IAgoraH265Transcoder';
|
|
4
|
+
import { IH265TranscoderEvent } from '../extension/IAgoraH265TranscoderExtension';
|
|
5
|
+
import { IH265TranscoderImpl } from '../impl/IAgoraH265TranscoderImpl';
|
|
6
|
+
|
|
7
|
+
import IAgoraH265TranscoderTI from '../ti/IAgoraH265Transcoder-ti';
|
|
8
|
+
|
|
9
|
+
const checkers = createCheckers(IAgoraH265TranscoderTI);
|
|
10
|
+
|
|
11
|
+
import {
|
|
12
|
+
DeviceEventEmitter,
|
|
13
|
+
EVENT_TYPE,
|
|
14
|
+
EventProcessor,
|
|
15
|
+
} from './IrisApiEngine';
|
|
16
|
+
|
|
17
|
+
export class H265TranscoderInternal extends IH265TranscoderImpl {
|
|
18
|
+
static _h265_transcoder_observers: IH265TranscoderObserver[] = [];
|
|
19
|
+
|
|
20
|
+
release() {
|
|
21
|
+
H265TranscoderInternal._h265_transcoder_observers = [];
|
|
22
|
+
this.removeAllListeners();
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
_addListenerPreCheck<EventType extends keyof IH265TranscoderEvent>(
|
|
26
|
+
eventType: EventType
|
|
27
|
+
): boolean {
|
|
28
|
+
if (
|
|
29
|
+
checkers.IH265TranscoderObserver?.strictTest({
|
|
30
|
+
[eventType]: undefined,
|
|
31
|
+
})
|
|
32
|
+
) {
|
|
33
|
+
if (H265TranscoderInternal._h265_transcoder_observers.length === 0) {
|
|
34
|
+
this.registerTranscoderObserver({});
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return true;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
addListener<EventType extends keyof IH265TranscoderEvent>(
|
|
41
|
+
eventType: EventType,
|
|
42
|
+
listener: IH265TranscoderEvent[EventType]
|
|
43
|
+
): void {
|
|
44
|
+
this._addListenerPreCheck(eventType);
|
|
45
|
+
const callback = (eventProcessor: EventProcessor<any>, data: any) => {
|
|
46
|
+
if (eventProcessor.type(data) !== EVENT_TYPE.IAgoraH265Transcoder) {
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
eventProcessor.func.map((it) => {
|
|
50
|
+
it({ [eventType]: listener }, eventType, data);
|
|
51
|
+
});
|
|
52
|
+
};
|
|
53
|
+
// @ts-ignore
|
|
54
|
+
listener!.agoraCallback = callback;
|
|
55
|
+
DeviceEventEmitter.addListener(eventType, callback);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
removeListener<EventType extends keyof IH265TranscoderEvent>(
|
|
59
|
+
eventType: EventType,
|
|
60
|
+
listener?: IH265TranscoderEvent[EventType]
|
|
61
|
+
) {
|
|
62
|
+
DeviceEventEmitter.removeListener(
|
|
63
|
+
eventType,
|
|
64
|
+
// @ts-ignore
|
|
65
|
+
listener?.agoraCallback ?? listener
|
|
66
|
+
);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
removeAllListeners<EventType extends keyof IH265TranscoderEvent>(
|
|
70
|
+
eventType?: EventType
|
|
71
|
+
) {
|
|
72
|
+
DeviceEventEmitter.removeAllListeners(eventType);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
override registerTranscoderObserver(
|
|
76
|
+
observer: IH265TranscoderObserver
|
|
77
|
+
): number {
|
|
78
|
+
if (
|
|
79
|
+
!H265TranscoderInternal._h265_transcoder_observers.find(
|
|
80
|
+
(value) => value === observer
|
|
81
|
+
)
|
|
82
|
+
) {
|
|
83
|
+
H265TranscoderInternal._h265_transcoder_observers.push(observer);
|
|
84
|
+
}
|
|
85
|
+
return super.registerTranscoderObserver(observer);
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
override unregisterTranscoderObserver(
|
|
89
|
+
observer: IH265TranscoderObserver
|
|
90
|
+
): number {
|
|
91
|
+
H265TranscoderInternal._h265_transcoder_observers =
|
|
92
|
+
H265TranscoderInternal._h265_transcoder_observers.filter(
|
|
93
|
+
(value) => value !== observer
|
|
94
|
+
);
|
|
95
|
+
return super.unregisterTranscoderObserver(observer);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { IVideoFrameMetaInfo, MetaInfoKey } from '../AgoraMediaBase';
|
|
2
|
+
import { IVideoFrameMetaInfoImpl } from '../impl/AgoraMediaBaseImpl';
|
|
3
|
+
|
|
4
|
+
export class VideoFrameMetaInfoInternal extends IVideoFrameMetaInfoImpl {
|
|
5
|
+
private _videoFrameMetaInfo: IVideoFrameMetaInfo | undefined;
|
|
6
|
+
constructor(videoFrameMetaInfo: IVideoFrameMetaInfo | undefined) {
|
|
7
|
+
super();
|
|
8
|
+
this._videoFrameMetaInfo = videoFrameMetaInfo;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
override getMetaInfoStr(key: MetaInfoKey): string {
|
|
12
|
+
// @ts-ignore
|
|
13
|
+
return this._videoFrameMetaInfo?.[key];
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import EventEmitter from 'eventemitter3';
|
|
2
2
|
import JSON from 'json-bigint';
|
|
3
3
|
|
|
4
|
-
import { AgoraEnv } from '../../Utils';
|
|
4
|
+
import { AgoraEnv, logDebug, logError, logInfo, logWarn } from '../../Utils';
|
|
5
5
|
import { IAudioEncodedFrameObserver } from '../AgoraBase';
|
|
6
6
|
import {
|
|
7
7
|
AudioFrame,
|
|
@@ -14,6 +14,7 @@ import {
|
|
|
14
14
|
IVideoFrameObserver,
|
|
15
15
|
VideoFrame,
|
|
16
16
|
} from '../AgoraMediaBase';
|
|
17
|
+
import { IH265TranscoderObserver } from '../IAgoraH265Transcoder';
|
|
17
18
|
import {
|
|
18
19
|
IMediaPlayer,
|
|
19
20
|
IMediaPlayerVideoFrameObserver,
|
|
@@ -39,6 +40,7 @@ import {
|
|
|
39
40
|
processIVideoEncodedFrameObserver,
|
|
40
41
|
processIVideoFrameObserver,
|
|
41
42
|
} from '../impl/AgoraMediaBaseImpl';
|
|
43
|
+
import { processIH265TranscoderObserver } from '../impl/IAgoraH265TranscoderImpl';
|
|
42
44
|
import { processIMediaPlayerVideoFrameObserver } from '../impl/IAgoraMediaPlayerImpl';
|
|
43
45
|
import { processIMediaPlayerSourceObserver } from '../impl/IAgoraMediaPlayerSourceImpl';
|
|
44
46
|
import { processIMusicContentCenterEventHandler } from '../impl/IAgoraMusicContentCenterImpl';
|
|
@@ -48,6 +50,8 @@ import {
|
|
|
48
50
|
processIRtcEngineEventHandler,
|
|
49
51
|
} from '../impl/IAgoraRtcEngineImpl';
|
|
50
52
|
|
|
53
|
+
import { H265TranscoderInternal } from './AgoraH265TranscoderInternal';
|
|
54
|
+
import { VideoFrameMetaInfoInternal } from './AgoraMediaBaseInternal';
|
|
51
55
|
import { MediaEngineInternal } from './MediaEngineInternal';
|
|
52
56
|
import { MediaPlayerInternal } from './MediaPlayerInternal';
|
|
53
57
|
import { MediaRecorderInternal } from './MediaRecorderInternal';
|
|
@@ -105,6 +109,7 @@ export enum EVENT_TYPE {
|
|
|
105
109
|
IMediaRecorder,
|
|
106
110
|
IRtcEngine,
|
|
107
111
|
IMusicContentCenter,
|
|
112
|
+
IAgoraH265Transcoder,
|
|
108
113
|
}
|
|
109
114
|
|
|
110
115
|
type ProcessorType =
|
|
@@ -120,7 +125,8 @@ type ProcessorType =
|
|
|
120
125
|
| IMetadataObserver
|
|
121
126
|
| IDirectCdnStreamingEventHandler
|
|
122
127
|
| IRtcEngineEventHandler
|
|
123
|
-
| IMusicContentCenterEventHandler
|
|
128
|
+
| IMusicContentCenterEventHandler
|
|
129
|
+
| IH265TranscoderObserver;
|
|
124
130
|
|
|
125
131
|
type EventProcessors = {
|
|
126
132
|
IAudioFrameObserver: EventProcessor<IAudioFrameObserver>;
|
|
@@ -136,6 +142,7 @@ type EventProcessors = {
|
|
|
136
142
|
IDirectCdnStreamingEventHandler: EventProcessor<IDirectCdnStreamingEventHandler>;
|
|
137
143
|
IRtcEngineEventHandler: EventProcessor<IRtcEngineEventHandler>;
|
|
138
144
|
IMusicContentCenterEventHandler: EventProcessor<IMusicContentCenterEventHandler>;
|
|
145
|
+
IH265TranscoderObserver: EventProcessor<IH265TranscoderObserver>;
|
|
139
146
|
};
|
|
140
147
|
|
|
141
148
|
/**
|
|
@@ -173,6 +180,8 @@ export const EVENT_PROCESSORS: EventProcessors = {
|
|
|
173
180
|
data.videoFrame.vBuffer = buffers[2];
|
|
174
181
|
data.videoFrame.metadata_buffer = buffers[3];
|
|
175
182
|
data.videoFrame.alphaBuffer = buffers[4];
|
|
183
|
+
let metaInfo = data.videoFrame.metaInfo;
|
|
184
|
+
data.videoFrame.metaInfo = new VideoFrameMetaInfoInternal(metaInfo);
|
|
176
185
|
}
|
|
177
186
|
},
|
|
178
187
|
handlers: (event: string, data: any) =>
|
|
@@ -268,6 +277,8 @@ export const EVENT_PROCESSORS: EventProcessors = {
|
|
|
268
277
|
data.frame.vBuffer = buffers[2];
|
|
269
278
|
data.frame.metadata_buffer = buffers[3];
|
|
270
279
|
data.frame.alphaBuffer = buffers[4];
|
|
280
|
+
let metaInfo = data.frame.metaInfo;
|
|
281
|
+
data.frame.metaInfo = new VideoFrameMetaInfoInternal(metaInfo);
|
|
271
282
|
}
|
|
272
283
|
},
|
|
273
284
|
handlers: (event: string, data: any) =>
|
|
@@ -351,11 +362,17 @@ export const EVENT_PROCESSORS: EventProcessors = {
|
|
|
351
362
|
handlers: (event: string, data: any) =>
|
|
352
363
|
MusicContentCenterInternal._event_handlers,
|
|
353
364
|
},
|
|
365
|
+
IH265TranscoderObserver: {
|
|
366
|
+
suffix: 'H265TranscoderObserver_',
|
|
367
|
+
type: () => EVENT_TYPE.IAgoraH265Transcoder,
|
|
368
|
+
func: [processIH265TranscoderObserver],
|
|
369
|
+
handlers: () => H265TranscoderInternal._h265_transcoder_observers,
|
|
370
|
+
},
|
|
354
371
|
};
|
|
355
372
|
|
|
356
373
|
function handleEvent(...[event, data, buffers]: any) {
|
|
357
374
|
if (isDebuggable()) {
|
|
358
|
-
|
|
375
|
+
logInfo('onEvent', event, data, buffers);
|
|
359
376
|
}
|
|
360
377
|
|
|
361
378
|
let _event: string = event;
|
|
@@ -377,6 +394,10 @@ function handleEvent(...[event, data, buffers]: any) {
|
|
|
377
394
|
if (_event.endsWith('Ex')) {
|
|
378
395
|
_event = _event.replace(/Ex$/g, '');
|
|
379
396
|
}
|
|
397
|
+
// for new IrisType, but this is temporary
|
|
398
|
+
if (_event.includes('_')) {
|
|
399
|
+
_event = _event.substring(0, _event.indexOf('_'));
|
|
400
|
+
}
|
|
380
401
|
|
|
381
402
|
let _data: any;
|
|
382
403
|
try {
|
|
@@ -417,14 +438,11 @@ export function callIrisApi(funcName: string, params: any): any {
|
|
|
417
438
|
|
|
418
439
|
if (funcName.startsWith('MediaEngine_')) {
|
|
419
440
|
switch (funcName) {
|
|
420
|
-
case '
|
|
421
|
-
case 'MediaEngine_pushCaptureAudioFrame':
|
|
422
|
-
case 'MediaEngine_pushReverseAudioFrame':
|
|
423
|
-
case 'MediaEngine_pushDirectAudioFrame':
|
|
441
|
+
case 'MediaEngine_pushAudioFrame_c71f4ab':
|
|
424
442
|
// frame.buffer
|
|
425
443
|
buffers.push(params.frame.buffer);
|
|
426
444
|
break;
|
|
427
|
-
case '
|
|
445
|
+
case 'MediaEngine_pushVideoFrame_4e544e2':
|
|
428
446
|
// frame.buffer
|
|
429
447
|
buffers.push(params.frame.buffer);
|
|
430
448
|
// frame.eglContext
|
|
@@ -436,7 +454,7 @@ export function callIrisApi(funcName: string, params: any): any {
|
|
|
436
454
|
// frame.d3d11_texture_2d
|
|
437
455
|
buffers.push(Buffer.from(''));
|
|
438
456
|
break;
|
|
439
|
-
case '
|
|
457
|
+
case 'MediaEngine_pushEncodedVideoImage_e71452b':
|
|
440
458
|
// imageBuffer
|
|
441
459
|
buffers.push(params.imageBuffer);
|
|
442
460
|
break;
|
|
@@ -460,7 +478,7 @@ export function callIrisApi(funcName: string, params: any): any {
|
|
|
460
478
|
};
|
|
461
479
|
} else if (funcName.startsWith('RtcEngine_')) {
|
|
462
480
|
switch (funcName) {
|
|
463
|
-
case '
|
|
481
|
+
case 'RtcEngine_initialize_0320339':
|
|
464
482
|
AgoraRtcNg.InitializeEnv();
|
|
465
483
|
break;
|
|
466
484
|
case 'RtcEngine_release':
|
|
@@ -476,20 +494,22 @@ export function callIrisApi(funcName: string, params: any): any {
|
|
|
476
494
|
// metadata.buffer
|
|
477
495
|
buffers.push(params.metadata.buffer);
|
|
478
496
|
break;
|
|
479
|
-
case '
|
|
480
|
-
case '
|
|
497
|
+
case 'RtcEngine_sendStreamMessage_8715a45':
|
|
498
|
+
case 'RtcEngineEx_sendStreamMessageEx_0c34857':
|
|
481
499
|
// data
|
|
482
500
|
buffers.push(params.data);
|
|
483
501
|
break;
|
|
484
|
-
case '
|
|
502
|
+
case 'RtcEngine_destroyMediaPlayer_328a49b':
|
|
485
503
|
params.mediaPlayerId = params.media_player.getMediaPlayerId();
|
|
486
504
|
params.toJSON = function () {
|
|
487
505
|
return { playerId: params.mediaPlayerId };
|
|
488
506
|
};
|
|
489
507
|
break;
|
|
490
|
-
case '
|
|
508
|
+
case 'RtcEngine_destroyMediaRecorder_95cdef5':
|
|
491
509
|
// @ts-ignore
|
|
492
|
-
params.nativeHandle = (
|
|
510
|
+
params.nativeHandle = (
|
|
511
|
+
params.mediaRecorder as MediaRecorderInternal
|
|
512
|
+
).nativeHandle;
|
|
493
513
|
params.toJSON = function () {
|
|
494
514
|
return { nativeHandle: params.nativeHandle };
|
|
495
515
|
};
|
|
@@ -504,39 +524,34 @@ export function callIrisApi(funcName: string, params: any): any {
|
|
|
504
524
|
buffers.length
|
|
505
525
|
);
|
|
506
526
|
let ret = callApiResult;
|
|
507
|
-
if (ret !== undefined && ret !== null && ret !== '') {
|
|
527
|
+
if (ret !== undefined && ret !== null && ret !== '' && ret !== 'null') {
|
|
508
528
|
const retObj = JSON.parse(ret);
|
|
509
529
|
if (isDebuggable()) {
|
|
510
530
|
if (typeof retObj.result === 'number' && retObj.result < 0) {
|
|
511
|
-
|
|
531
|
+
logError('callApi', funcName, JSON.stringify(params), ret);
|
|
512
532
|
} else {
|
|
513
|
-
|
|
533
|
+
logDebug('callApi', funcName, JSON.stringify(params), ret);
|
|
514
534
|
}
|
|
515
535
|
}
|
|
516
536
|
return retObj;
|
|
517
537
|
} else {
|
|
518
538
|
if (isDebuggable()) {
|
|
519
|
-
|
|
539
|
+
logError(
|
|
520
540
|
'callApi',
|
|
521
541
|
funcName,
|
|
522
542
|
JSON.stringify(params),
|
|
523
543
|
callApiReturnCode
|
|
524
544
|
);
|
|
525
545
|
} else {
|
|
526
|
-
|
|
527
|
-
'callApi',
|
|
528
|
-
funcName,
|
|
529
|
-
JSON.stringify(params),
|
|
530
|
-
callApiReturnCode
|
|
531
|
-
);
|
|
546
|
+
logWarn('callApi', funcName, JSON.stringify(params), callApiReturnCode);
|
|
532
547
|
}
|
|
533
548
|
return { result: callApiReturnCode };
|
|
534
549
|
}
|
|
535
550
|
} catch (e) {
|
|
536
551
|
if (isDebuggable()) {
|
|
537
|
-
|
|
552
|
+
logError('callApi', funcName, JSON.stringify(params), e);
|
|
538
553
|
} else {
|
|
539
|
-
|
|
554
|
+
logWarn('callApi', funcName, JSON.stringify(params), e);
|
|
540
555
|
}
|
|
541
556
|
}
|
|
542
557
|
return {};
|
|
@@ -1,88 +1,3 @@
|
|
|
1
|
-
import { RtcConnection } from '../IAgoraRtcEngineEx';
|
|
2
|
-
import {
|
|
3
|
-
RemoteVoicePositionInfo,
|
|
4
|
-
SpatialAudioZone,
|
|
5
|
-
} from '../IAgoraSpatialAudio';
|
|
6
1
|
import { ILocalSpatialAudioEngineImpl } from '../impl/IAgoraSpatialAudioImpl';
|
|
7
2
|
|
|
8
|
-
export class LocalSpatialAudioEngineInternal extends ILocalSpatialAudioEngineImpl {
|
|
9
|
-
protected override getApiTypeFromRelease(): string {
|
|
10
|
-
return 'LocalSpatialAudioEngine_release';
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
protected override getApiTypeFromSetMaxAudioRecvCount(
|
|
14
|
-
maxCount: number
|
|
15
|
-
): string {
|
|
16
|
-
return 'LocalSpatialAudioEngine_setMaxAudioRecvCount';
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
protected override getApiTypeFromSetAudioRecvRange(range: number): string {
|
|
20
|
-
return 'LocalSpatialAudioEngine_setAudioRecvRange';
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
protected override getApiTypeFromSetDistanceUnit(unit: number): string {
|
|
24
|
-
return 'LocalSpatialAudioEngine_setDistanceUnit';
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
protected override getApiTypeFromUpdateSelfPosition(
|
|
28
|
-
position: number[],
|
|
29
|
-
axisForward: number[],
|
|
30
|
-
axisRight: number[],
|
|
31
|
-
axisUp: number[]
|
|
32
|
-
): string {
|
|
33
|
-
return 'LocalSpatialAudioEngine_updateSelfPosition';
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
protected override getApiTypeFromUpdateSelfPositionEx(
|
|
37
|
-
position: number[],
|
|
38
|
-
axisForward: number[],
|
|
39
|
-
axisRight: number[],
|
|
40
|
-
axisUp: number[],
|
|
41
|
-
connection: RtcConnection
|
|
42
|
-
): string {
|
|
43
|
-
return 'LocalSpatialAudioEngine_updateSelfPositionEx';
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
protected override getApiTypeFromUpdatePlayerPositionInfo(
|
|
47
|
-
playerId: number,
|
|
48
|
-
positionInfo: RemoteVoicePositionInfo
|
|
49
|
-
): string {
|
|
50
|
-
return 'LocalSpatialAudioEngine_updatePlayerPositionInfo';
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
protected override getApiTypeFromSetParameters(params: string): string {
|
|
54
|
-
return 'LocalSpatialAudioEngine_setParameters';
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
protected override getApiTypeFromMuteLocalAudioStream(mute: boolean): string {
|
|
58
|
-
return 'LocalSpatialAudioEngine_muteLocalAudioStream';
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
protected override getApiTypeFromMuteAllRemoteAudioStreams(
|
|
62
|
-
mute: boolean
|
|
63
|
-
): string {
|
|
64
|
-
return 'LocalSpatialAudioEngine_muteAllRemoteAudioStreams';
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
protected override getApiTypeFromSetZones(
|
|
68
|
-
zones: SpatialAudioZone[],
|
|
69
|
-
zoneCount: number
|
|
70
|
-
): string {
|
|
71
|
-
return 'LocalSpatialAudioEngine_setZones';
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
protected override getApiTypeFromSetPlayerAttenuation(
|
|
75
|
-
playerId: number,
|
|
76
|
-
attenuation: number,
|
|
77
|
-
forceSet: boolean
|
|
78
|
-
): string {
|
|
79
|
-
return 'LocalSpatialAudioEngine_setPlayerAttenuation';
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
protected override getApiTypeFromMuteRemoteAudioStream(
|
|
83
|
-
uid: number,
|
|
84
|
-
mute: boolean
|
|
85
|
-
): string {
|
|
86
|
-
return 'LocalSpatialAudioEngine_muteRemoteAudioStream';
|
|
87
|
-
}
|
|
88
|
-
}
|
|
3
|
+
export class LocalSpatialAudioEngineInternal extends ILocalSpatialAudioEngineImpl {}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { createCheckers } from 'ts-interface-checker';
|
|
2
2
|
|
|
3
|
-
import { AgoraEnv,
|
|
4
|
-
|
|
3
|
+
import { AgoraEnv, logError } from '../../Utils';
|
|
5
4
|
import { ErrorCodeType } from '../AgoraBase';
|
|
6
5
|
import {
|
|
7
6
|
IAudioPcmFrameSink,
|
|
@@ -105,7 +104,7 @@ export class MediaPlayerInternal extends IMediaPlayerImpl {
|
|
|
105
104
|
MediaPlayerInternal._audio_spectrum_observers.get(this._mediaPlayerId)
|
|
106
105
|
?.length === 0
|
|
107
106
|
) {
|
|
108
|
-
|
|
107
|
+
logError(
|
|
109
108
|
'Please call `registerMediaPlayerAudioSpectrumObserver` before you want to receive event by `addListener`'
|
|
110
109
|
);
|
|
111
110
|
return false;
|
|
@@ -292,43 +291,35 @@ export class MediaPlayerInternal extends IMediaPlayerImpl {
|
|
|
292
291
|
key: string,
|
|
293
292
|
value: number
|
|
294
293
|
): string {
|
|
295
|
-
return '
|
|
294
|
+
return 'MediaPlayer_setPlayerOption_4d05d29';
|
|
296
295
|
}
|
|
297
296
|
|
|
298
297
|
protected override getApiTypeFromSetPlayerOptionInString(
|
|
299
298
|
key: string,
|
|
300
299
|
value: string
|
|
301
300
|
): string {
|
|
302
|
-
return '
|
|
301
|
+
return 'MediaPlayer_setPlayerOption_ccad422';
|
|
303
302
|
}
|
|
304
303
|
|
|
305
304
|
override setView(view: HTMLElement): number {
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
305
|
+
if (!AgoraEnv.AgoraRendererManager) return -ErrorCodeType.ErrNotInitialized;
|
|
306
|
+
const renderer = AgoraEnv.AgoraRendererManager.addOrRemoveRenderer({
|
|
307
|
+
sourceType: VideoSourceType.VideoSourceMediaPlayer,
|
|
308
|
+
mediaPlayerId: this._mediaPlayerId,
|
|
309
|
+
view,
|
|
310
|
+
});
|
|
311
|
+
if (!renderer) return -ErrorCodeType.ErrFailed;
|
|
312
|
+
return ErrorCodeType.ErrOk;
|
|
314
313
|
}
|
|
315
314
|
|
|
316
315
|
override setRenderMode(renderMode: RenderModeType): number {
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
contentMode:
|
|
326
|
-
renderMode === RenderModeType.RenderModeFit
|
|
327
|
-
? RenderModeType.RenderModeFit
|
|
328
|
-
: RenderModeType.RenderModeHidden,
|
|
329
|
-
mirror: true,
|
|
330
|
-
},
|
|
331
|
-
}) ?? -ErrorCodeType.ErrNotInitialized
|
|
332
|
-
);
|
|
316
|
+
if (!AgoraEnv.AgoraRendererManager) return -ErrorCodeType.ErrNotInitialized;
|
|
317
|
+
const renderer = AgoraEnv.AgoraRendererManager.setRendererContext({
|
|
318
|
+
sourceType: VideoSourceType.VideoSourceMediaPlayer,
|
|
319
|
+
mediaPlayerId: this._mediaPlayerId,
|
|
320
|
+
renderMode,
|
|
321
|
+
});
|
|
322
|
+
if (!renderer) return -ErrorCodeType.ErrFailed;
|
|
323
|
+
return ErrorCodeType.ErrOk;
|
|
333
324
|
}
|
|
334
325
|
}
|