agora-electron-sdk 4.2.6 → 4.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (172) hide show
  1. package/CHANGELOG.md +18 -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
@@ -1,5 +1,5 @@
1
1
  import './extension/AgoraBaseExtension';
2
- import { RenderModeType, VideoSourceType } from './AgoraMediaBase';
2
+ import { RenderModeType, VideoModulePosition, VideoSourceType } from './AgoraMediaBase';
3
3
  /**
4
4
  * The channel profile.
5
5
  */
@@ -434,11 +434,7 @@ export declare enum ErrorCodeType {
434
434
  /**
435
435
  * 1501: Permission to access the camera is not granted. Check whether permission to access the camera permission is granted.
436
436
  */
437
- ErrVdmCameraNotAuthorized = 1501,
438
- /**
439
- * @ignore
440
- */
441
- ErrAdmApplicationLoopback = 2007
437
+ ErrVdmCameraNotAuthorized = 1501
442
438
  }
443
439
  /**
444
440
  * @ignore
@@ -551,10 +547,6 @@ export declare enum InterfaceIdType {
551
547
  * @ignore
552
548
  */
553
549
  AgoraIidMediaEngineRegulator = 9,
554
- /**
555
- * @ignore
556
- */
557
- AgoraIidCloudSpatialAudio = 10,
558
550
  /**
559
551
  * @ignore
560
552
  */
@@ -566,7 +558,7 @@ export declare enum InterfaceIdType {
566
558
  /**
567
559
  * @ignore
568
560
  */
569
- AgoraIidMetachatService = 14,
561
+ AgoraIidMetaService = 14,
570
562
  /**
571
563
  * @ignore
572
564
  */
@@ -835,7 +827,7 @@ export declare enum VideoCodecCapabilityLevel {
835
827
  */
836
828
  export declare enum VideoCodecType {
837
829
  /**
838
- * @ignore
830
+ * 0: (Default) Unspecified codec format. The SDK automatically matches the appropriate codec format based on the current video stream's resolution and device performance.
839
831
  */
840
832
  VideoCodecNone = 0,
841
833
  /**
@@ -843,7 +835,7 @@ export declare enum VideoCodecType {
843
835
  */
844
836
  VideoCodecVp8 = 1,
845
837
  /**
846
- * 2: (Default) Standard H.264.
838
+ * 2: Standard H.264.
847
839
  */
848
840
  VideoCodecH264 = 2,
849
841
  /**
@@ -1110,10 +1102,23 @@ export declare class VideoSubscriptionOptions {
1110
1102
  */
1111
1103
  encodedFrameOnly?: boolean;
1112
1104
  }
1105
+ /**
1106
+ * The maximum length of the user account.
1107
+ */
1108
+ export declare enum MaxUserAccountLengthType {
1109
+ /**
1110
+ * The maximum length of the user account is 256 bytes.
1111
+ */
1112
+ MaxUserAccountLength = 256
1113
+ }
1113
1114
  /**
1114
1115
  * Information about externally encoded video frames.
1115
1116
  */
1116
1117
  export declare class EncodedVideoFrameInfo {
1118
+ /**
1119
+ * The user ID to push the externally encoded video frame.
1120
+ */
1121
+ uid?: number;
1117
1122
  /**
1118
1123
  * The codec type of the local video stream. See VideoCodecType. The default value is VideoCodecH264 (2).
1119
1124
  */
@@ -1150,10 +1155,6 @@ export declare class EncodedVideoFrameInfo {
1150
1155
  * @ignore
1151
1156
  */
1152
1157
  decodeTimeMs?: number;
1153
- /**
1154
- * The user ID to push the externally encoded video frame.
1155
- */
1156
- uid?: number;
1157
1158
  /**
1158
1159
  * The type of video streams. See VideoStreamType.
1159
1160
  */
@@ -1293,7 +1294,7 @@ export declare class VideoEncoderConfiguration {
1293
1294
  */
1294
1295
  frameRate?: number;
1295
1296
  /**
1296
- * The encoding bitrate (Kbps) of the video.
1297
+ * The encoding bitrate (Kbps) of the video. This parameter does not need to be set; keeping the default value STANDARD_BITRATE is sufficient. The SDK automatically matches the most suitable bitrate based on the video resolution and frame rate you have set. For the correspondence between video resolution, frame rate, and bitrate, please refer to. STANDARD_BITRATE (0): (Recommended) Standard bitrate mode. COMPATIBLE_BITRATE (-1): Adaptive bitrate mode. In general, Agora suggests that you do not use this value.
1297
1298
  */
1298
1299
  bitrate?: number;
1299
1300
  /**
@@ -1337,7 +1338,7 @@ export declare class DataStreamConfig {
1337
1338
  */
1338
1339
  export declare enum SimulcastStreamMode {
1339
1340
  /**
1340
- * -1: By default, the low-quality video steam is not sent; the SDK automatically switches to low-quality video stream mode after it receives a request to subscribe to a low-quality video stream.
1341
+ * -1: By default, do not send the low-quality video stream until a subscription request for the low-quality video stream is received from the receiving end, then automatically start sending low-quality video stream.
1341
1342
  */
1342
1343
  AutoSimulcastStream = -1,
1343
1344
  /**
@@ -1413,7 +1414,7 @@ export declare class WatermarkRatio {
1413
1414
  */
1414
1415
  export declare class WatermarkOptions {
1415
1416
  /**
1416
- * Reserved for future use.
1417
+ * Is the watermark visible in the local preview view? true : (Default) The watermark is visible in the local preview view. false : The watermark is not visible in the local preview view.
1417
1418
  */
1418
1419
  visibleInPreview?: boolean;
1419
1420
  /**
@@ -1466,11 +1467,11 @@ export declare class RtcStats {
1466
1467
  */
1467
1468
  rxVideoBytes?: number;
1468
1469
  /**
1469
- * Video transmission bitrate (Kbps), represented by an instantaneous value.
1470
+ * The actual bitrate (Kbps) while sending the local video stream.
1470
1471
  */
1471
1472
  txKBitRate?: number;
1472
1473
  /**
1473
- * The receiving bitrate (Kbps), represented by an instantaneous value.
1474
+ * The receiving bitrate (Kbps).
1474
1475
  */
1475
1476
  rxKBitRate?: number;
1476
1477
  /**
@@ -1829,6 +1830,27 @@ export declare enum VideoApplicationScenarioType {
1829
1830
  */
1830
1831
  ApplicationScenarioMeeting = 1
1831
1832
  }
1833
+ /**
1834
+ * @ignore
1835
+ */
1836
+ export declare enum VideoQoePreferenceType {
1837
+ /**
1838
+ * @ignore
1839
+ */
1840
+ VideoQoePreferenceBalance = 1,
1841
+ /**
1842
+ * @ignore
1843
+ */
1844
+ VideoQoePreferenceDelayFirst = 2,
1845
+ /**
1846
+ * @ignore
1847
+ */
1848
+ VideoQoePreferencePictureQualityFirst = 3,
1849
+ /**
1850
+ * @ignore
1851
+ */
1852
+ VideoQoePreferenceFluencyFirst = 4
1853
+ }
1832
1854
  /**
1833
1855
  * The brightness level of the video image captured by the local camera.
1834
1856
  */
@@ -1872,53 +1894,53 @@ export declare enum LocalAudioStreamState {
1872
1894
  LocalAudioStreamStateFailed = 3
1873
1895
  }
1874
1896
  /**
1875
- * Local audio state error codes.
1897
+ * Reasons for local audio state changes.
1876
1898
  */
1877
- export declare enum LocalAudioStreamError {
1899
+ export declare enum LocalAudioStreamReason {
1878
1900
  /**
1879
1901
  * 0: The local audio is normal.
1880
1902
  */
1881
- LocalAudioStreamErrorOk = 0,
1903
+ LocalAudioStreamReasonOk = 0,
1882
1904
  /**
1883
1905
  * 1: No specified reason for the local audio failure. Remind your users to try to rejoin the channel.
1884
1906
  */
1885
- LocalAudioStreamErrorFailure = 1,
1907
+ LocalAudioStreamReasonFailure = 1,
1886
1908
  /**
1887
1909
  * 2: No permission to use the local audio capturing device. Remind your users to grant permission. Deprecated: This enumerator is deprecated. Please use RecordAudio in the onPermissionError callback instead.
1888
1910
  */
1889
- LocalAudioStreamErrorDeviceNoPermission = 2,
1911
+ LocalAudioStreamReasonDeviceNoPermission = 2,
1890
1912
  /**
1891
1913
  * @ignore
1892
1914
  */
1893
- LocalAudioStreamErrorDeviceBusy = 3,
1915
+ LocalAudioStreamReasonDeviceBusy = 3,
1894
1916
  /**
1895
1917
  * 4: The local audio capture fails.
1896
1918
  */
1897
- LocalAudioStreamErrorRecordFailure = 4,
1919
+ LocalAudioStreamReasonRecordFailure = 4,
1898
1920
  /**
1899
1921
  * 5: The local audio encoding fails.
1900
1922
  */
1901
- LocalAudioStreamErrorEncodeFailure = 5,
1923
+ LocalAudioStreamReasonEncodeFailure = 5,
1902
1924
  /**
1903
- * 6: (Windows only) The application cannot find the local audio capture device. Remind your users to check whether the microphone is connected to the device properly in the control plane of the device or if the microphone is working properly.
1925
+ * 6: No local audio capture device. Remind your users to check whether the microphone is connected to the device properly in the control plane of the device or if the microphone is working properly.
1904
1926
  */
1905
- LocalAudioStreamErrorNoRecordingDevice = 6,
1927
+ LocalAudioStreamReasonNoRecordingDevice = 6,
1906
1928
  /**
1907
- * 7: (Windows only) The application cannot find the local audio playback device. Remind your users to check whether the speaker is connected to the device properly in the control plane of the device or if the speaker is working properly.
1929
+ * 7: No local audio capture device. Remind your users to check whether the speaker is connected to the device properly in the control plane of the device or if the speaker is working properly.
1908
1930
  */
1909
- LocalAudioStreamErrorNoPlayoutDevice = 7,
1931
+ LocalAudioStreamReasonNoPlayoutDevice = 7,
1910
1932
  /**
1911
1933
  * @ignore
1912
1934
  */
1913
- LocalAudioStreamErrorInterrupted = 8,
1935
+ LocalAudioStreamReasonInterrupted = 8,
1914
1936
  /**
1915
1937
  * 9: (Windows only) The ID of the local audio-capture device is invalid. Check the audio capture device ID.
1916
1938
  */
1917
- LocalAudioStreamErrorRecordInvalidId = 9,
1939
+ LocalAudioStreamReasonRecordInvalidId = 9,
1918
1940
  /**
1919
1941
  * 10: (Windows only) The ID of the local audio-playback device is invalid. Check the audio playback device ID.
1920
1942
  */
1921
- LocalAudioStreamErrorPlayoutInvalidId = 10
1943
+ LocalAudioStreamReasonPlayoutInvalidId = 10
1922
1944
  }
1923
1945
  /**
1924
1946
  * Local video state types.
@@ -1942,104 +1964,108 @@ export declare enum LocalVideoStreamState {
1942
1964
  LocalVideoStreamStateFailed = 3
1943
1965
  }
1944
1966
  /**
1945
- * Local video state error codes.
1967
+ * Reasons for local video state changes.
1946
1968
  */
1947
- export declare enum LocalVideoStreamError {
1969
+ export declare enum LocalVideoStreamReason {
1948
1970
  /**
1949
1971
  * 0: The local video is normal.
1950
1972
  */
1951
- LocalVideoStreamErrorOk = 0,
1973
+ LocalVideoStreamReasonOk = 0,
1952
1974
  /**
1953
1975
  * 1: No specified reason for the local video failure.
1954
1976
  */
1955
- LocalVideoStreamErrorFailure = 1,
1977
+ LocalVideoStreamReasonFailure = 1,
1956
1978
  /**
1957
1979
  * 2: No permission to use the local video capturing device. Remind the user to grant permissions and rejoin the channel. Deprecated: This enumerator is deprecated. Please use CAMERA in the onPermissionError callback instead.
1958
1980
  */
1959
- LocalVideoStreamErrorDeviceNoPermission = 2,
1981
+ LocalVideoStreamReasonDeviceNoPermission = 2,
1960
1982
  /**
1961
1983
  * 3: The local video capturing device is in use. Remind the user to check whether another application occupies the camera.
1962
1984
  */
1963
- LocalVideoStreamErrorDeviceBusy = 3,
1985
+ LocalVideoStreamReasonDeviceBusy = 3,
1964
1986
  /**
1965
1987
  * 4: The local video capture fails. Remind your user to check whether the video capture device is working properly, whether the camera is occupied by another application, or try to rejoin the channel.
1966
1988
  */
1967
- LocalVideoStreamErrorCaptureFailure = 4,
1989
+ LocalVideoStreamReasonCaptureFailure = 4,
1968
1990
  /**
1969
1991
  * 5: The local video encoding fails.
1970
1992
  */
1971
- LocalVideoStreamErrorEncodeFailure = 5,
1993
+ LocalVideoStreamReasonCodecNotSupport = 5,
1972
1994
  /**
1973
1995
  * @ignore
1974
1996
  */
1975
- LocalVideoStreamErrorCaptureInbackground = 6,
1997
+ LocalVideoStreamReasonCaptureInbackground = 6,
1976
1998
  /**
1977
1999
  * @ignore
1978
2000
  */
1979
- LocalVideoStreamErrorCaptureMultipleForegroundApps = 7,
2001
+ LocalVideoStreamReasonCaptureMultipleForegroundApps = 7,
1980
2002
  /**
1981
2003
  * 8: Fails to find a local video capture device. Remind the user to check whether the camera is connected to the device properly or the camera is working properly, and then to rejoin the channel.
1982
2004
  */
1983
- LocalVideoStreamErrorDeviceNotFound = 8,
2005
+ LocalVideoStreamReasonDeviceNotFound = 8,
1984
2006
  /**
1985
2007
  * 9: (macOS only) The video capture device currently in use is disconnected (such as being unplugged).
1986
2008
  */
1987
- LocalVideoStreamErrorDeviceDisconnected = 9,
2009
+ LocalVideoStreamReasonDeviceDisconnected = 9,
1988
2010
  /**
1989
2011
  * 10: (macOS and Windows only) The SDK cannot find the video device in the video device list. Check whether the ID of the video device is valid.
1990
2012
  */
1991
- LocalVideoStreamErrorDeviceInvalidId = 10,
2013
+ LocalVideoStreamReasonDeviceInvalidId = 10,
1992
2014
  /**
1993
2015
  * 101: The current video capture device is unavailable due to excessive system pressure.
1994
2016
  */
1995
- LocalVideoStreamErrorDeviceSystemPressure = 101,
2017
+ LocalVideoStreamReasonDeviceSystemPressure = 101,
1996
2018
  /**
1997
- * 11: (macOS only) The shared window is minimized when you call startScreenCaptureByWindowId to share a window. The SDK cannot share a minimized window. You can cancel the minimization of this window at the application layer, for example by maximizing this window.
2019
+ * 11: (macOS and Windows only) The shared windows is minimized when you call the startScreenCaptureByWindowId method to share a window. The SDK cannot share a minimized window. You can cancel the minimization of this window at the application layer, for example by maximizing this window.
1998
2020
  */
1999
- LocalVideoStreamErrorScreenCaptureWindowMinimized = 11,
2021
+ LocalVideoStreamReasonScreenCaptureWindowMinimized = 11,
2000
2022
  /**
2001
2023
  * 12: (macOS and Windows only) The error code indicates that a window shared by the window ID has been closed or a full-screen window shared by the window ID has exited full-screen mode. After exiting full-screen mode, remote users cannot see the shared window. To prevent remote users from seeing a black screen, Agora recommends that you immediately stop screen sharing. Common scenarios reporting this error code:
2002
2024
  * When the local user closes the shared window, the SDK reports this error code.
2003
2025
  * The local user shows some slides in full-screen mode first, and then shares the windows of the slides. After the user exits full-screen mode, the SDK reports this error code.
2004
2026
  * The local user watches a web video or reads a web document in full-screen mode first, and then shares the window of the web video or document. After the user exits full-screen mode, the SDK reports this error code.
2005
2027
  */
2006
- LocalVideoStreamErrorScreenCaptureWindowClosed = 12,
2028
+ LocalVideoStreamReasonScreenCaptureWindowClosed = 12,
2007
2029
  /**
2008
2030
  * 13: (Windows only) The window being shared is overlapped by another window, so the overlapped area is blacked out by the SDK during window sharing.
2009
2031
  */
2010
- LocalVideoStreamErrorScreenCaptureWindowOccluded = 13,
2032
+ LocalVideoStreamReasonScreenCaptureWindowOccluded = 13,
2033
+ /**
2034
+ * @ignore
2035
+ */
2036
+ LocalVideoStreamReasonScreenCaptureWindowNotSupported = 20,
2011
2037
  /**
2012
2038
  * @ignore
2013
2039
  */
2014
- LocalVideoStreamErrorScreenCaptureWindowNotSupported = 20,
2040
+ LocalVideoStreamReasonScreenCaptureFailure = 21,
2015
2041
  /**
2016
2042
  * @ignore
2017
2043
  */
2018
- LocalVideoStreamErrorScreenCaptureFailure = 21,
2044
+ LocalVideoStreamReasonScreenCaptureNoPermission = 22,
2019
2045
  /**
2020
2046
  * @ignore
2021
2047
  */
2022
- LocalVideoStreamErrorScreenCaptureNoPermission = 22,
2048
+ LocalVideoStreamReasonScreenCaptureAutoFallback = 24,
2023
2049
  /**
2024
2050
  * @ignore
2025
2051
  */
2026
- LocalVideoStreamErrorScreenCapturePaused = 23,
2052
+ LocalVideoStreamReasonScreenCaptureWindowHidden = 25,
2027
2053
  /**
2028
2054
  * @ignore
2029
2055
  */
2030
- LocalVideoStreamErrorScreenCaptureResumed = 24,
2056
+ LocalVideoStreamReasonScreenCaptureWindowRecoverFromHidden = 26,
2031
2057
  /**
2032
2058
  * @ignore
2033
2059
  */
2034
- LocalVideoStreamErrorScreenCaptureWindowHidden = 25,
2060
+ LocalVideoStreamReasonScreenCaptureWindowRecoverFromMinimized = 27,
2035
2061
  /**
2036
2062
  * @ignore
2037
2063
  */
2038
- LocalVideoStreamErrorScreenCaptureWindowRecoverFromHidden = 26,
2064
+ LocalVideoStreamReasonScreenCapturePaused = 28,
2039
2065
  /**
2040
2066
  * @ignore
2041
2067
  */
2042
- LocalVideoStreamErrorScreenCaptureWindowRecoverFromMinimized = 27
2068
+ LocalVideoStreamReasonScreenCaptureResumed = 29
2043
2069
  }
2044
2070
  /**
2045
2071
  * Remote audio states.
@@ -2165,11 +2191,11 @@ export declare enum RemoteVideoStateReason {
2165
2191
  */
2166
2192
  RemoteVideoStateReasonRemoteOffline = 7,
2167
2193
  /**
2168
- * @ignore
2194
+ * 8: The remote audio-and-video stream falls back to the audio-only stream due to poor network conditions.
2169
2195
  */
2170
2196
  RemoteVideoStateReasonAudioFallback = 8,
2171
2197
  /**
2172
- * @ignore
2198
+ * 9: The remote audio-only stream switches back to the audio-and-video stream after the network conditions improve.
2173
2199
  */
2174
2200
  RemoteVideoStateReasonAudioFallbackRecovery = 9,
2175
2201
  /**
@@ -2414,9 +2440,21 @@ export declare class LocalAudioStats {
2414
2440
  */
2415
2441
  txPacketLossRate?: number;
2416
2442
  /**
2417
- * The delay of the audio device module when playing or recording audio.
2443
+ * The audio device module delay (ms) when playing or recording audio.
2418
2444
  */
2419
2445
  audioDeviceDelay?: number;
2446
+ /**
2447
+ * @ignore
2448
+ */
2449
+ audioPlayoutDelay?: number;
2450
+ /**
2451
+ * The ear monitor delay (ms), which is the delay from microphone input to headphone output.
2452
+ */
2453
+ earMonitorDelay?: number;
2454
+ /**
2455
+ * Acoustic echo cancellation (AEC) module estimated delay (ms), which is the signal delay between when audio is played locally before being locally captured.
2456
+ */
2457
+ aecEstimatedDelay?: number;
2420
2458
  }
2421
2459
  /**
2422
2460
  * States of the Media Push.
@@ -2450,77 +2488,77 @@ export declare enum RtmpStreamPublishState {
2450
2488
  RtmpStreamPublishStateDisconnecting = 5
2451
2489
  }
2452
2490
  /**
2453
- * Error codes of the RTMP or RTMPS streaming.
2491
+ * Reasons for changes in the status of RTMP or RTMPS streaming.
2454
2492
  */
2455
- export declare enum RtmpStreamPublishErrorType {
2493
+ export declare enum RtmpStreamPublishReason {
2456
2494
  /**
2457
2495
  * 0: The RTMP or RTMPS streaming has not started or has ended.
2458
2496
  */
2459
- RtmpStreamPublishErrorOk = 0,
2497
+ RtmpStreamPublishReasonOk = 0,
2460
2498
  /**
2461
2499
  * 1: Invalid argument used. Check the parameter setting.
2462
2500
  */
2463
- RtmpStreamPublishErrorInvalidArgument = 1,
2501
+ RtmpStreamPublishReasonInvalidArgument = 1,
2464
2502
  /**
2465
2503
  * 2: The RTMP or RTMPS streaming is encrypted and cannot be published.
2466
2504
  */
2467
- RtmpStreamPublishErrorEncryptedStreamNotAllowed = 2,
2505
+ RtmpStreamPublishReasonEncryptedStreamNotAllowed = 2,
2468
2506
  /**
2469
2507
  * 3: Timeout for the RTMP or RTMPS streaming.
2470
2508
  */
2471
- RtmpStreamPublishErrorConnectionTimeout = 3,
2509
+ RtmpStreamPublishReasonConnectionTimeout = 3,
2472
2510
  /**
2473
2511
  * 4: An error occurs in Agora's streaming server.
2474
2512
  */
2475
- RtmpStreamPublishErrorInternalServerError = 4,
2513
+ RtmpStreamPublishReasonInternalServerError = 4,
2476
2514
  /**
2477
2515
  * 5: An error occurs in the CDN server.
2478
2516
  */
2479
- RtmpStreamPublishErrorRtmpServerError = 5,
2517
+ RtmpStreamPublishReasonRtmpServerError = 5,
2480
2518
  /**
2481
2519
  * 6: The RTMP or RTMPS streaming publishes too frequently.
2482
2520
  */
2483
- RtmpStreamPublishErrorTooOften = 6,
2521
+ RtmpStreamPublishReasonTooOften = 6,
2484
2522
  /**
2485
2523
  * 7: The host publishes more than 10 URLs. Delete the unnecessary URLs before adding new ones.
2486
2524
  */
2487
- RtmpStreamPublishErrorReachLimit = 7,
2525
+ RtmpStreamPublishReasonReachLimit = 7,
2488
2526
  /**
2489
2527
  * 8: The host manipulates other hosts' URLs. For example, the host updates or stops other hosts' streams. Check your app logic.
2490
2528
  */
2491
- RtmpStreamPublishErrorNotAuthorized = 8,
2529
+ RtmpStreamPublishReasonNotAuthorized = 8,
2492
2530
  /**
2493
2531
  * 9: Agora's server fails to find the RTMP or RTMPS streaming.
2494
2532
  */
2495
- RtmpStreamPublishErrorStreamNotFound = 9,
2533
+ RtmpStreamPublishReasonStreamNotFound = 9,
2496
2534
  /**
2497
2535
  * 10: The format of the RTMP or RTMPS streaming URL is not supported. Check whether the URL format is correct.
2498
2536
  */
2499
- RtmpStreamPublishErrorFormatNotSupported = 10,
2537
+ RtmpStreamPublishReasonFormatNotSupported = 10,
2500
2538
  /**
2501
2539
  * 11: The user role is not host, so the user cannot use the CDN live streaming function. Check your application code logic.
2502
2540
  */
2503
- RtmpStreamPublishErrorNotBroadcaster = 11,
2541
+ RtmpStreamPublishReasonNotBroadcaster = 11,
2504
2542
  /**
2505
2543
  * 13: The updateRtmpTranscoding method is called to update the transcoding configuration in a scenario where there is streaming without transcoding. Check your application code logic.
2506
2544
  */
2507
- RtmpStreamPublishErrorTranscodingNoMixStream = 13,
2545
+ RtmpStreamPublishReasonTranscodingNoMixStream = 13,
2508
2546
  /**
2509
2547
  * 14: Errors occurred in the host's network.
2510
2548
  */
2511
- RtmpStreamPublishErrorNetDown = 14,
2549
+ RtmpStreamPublishReasonNetDown = 14,
2512
2550
  /**
2513
2551
  * @ignore
2514
2552
  */
2515
- RtmpStreamPublishErrorInvalidAppid = 15,
2553
+ RtmpStreamPublishReasonInvalidAppid = 15,
2516
2554
  /**
2517
2555
  * 16: Your project does not have permission to use streaming services. Refer to Media Push to enable the Media Push permission.
2518
2556
  */
2519
- RtmpStreamPublishErrorInvalidPrivilege = 16,
2557
+ RtmpStreamPublishReasonInvalidPrivilege = 16,
2520
2558
  /**
2521
- * 100: The streaming has been stopped normally. After you stop the Media Push, the SDK returns this value.
2559
+ * @ignore
2522
2560
  */
2523
- RtmpStreamUnpublishErrorOk = 100
2561
+ RtmpStreamUnpublishReasonOk = 100
2524
2562
  }
2525
2563
  /**
2526
2564
  * Events during the Media Push.
@@ -2554,19 +2592,19 @@ export declare class RtcImage {
2554
2592
  */
2555
2593
  url?: string;
2556
2594
  /**
2557
- * The x coordinate (pixel) of the image on the video frame (taking the upper left corner of the video frame as the origin).
2595
+ * The x-coordinate (px) of the image on the video frame (taking the upper left corner of the video frame as the origin).
2558
2596
  */
2559
2597
  x?: number;
2560
2598
  /**
2561
- * The y coordinate (pixel) of the image on the video frame (taking the upper left corner of the video frame as the origin).
2599
+ * The y-coordinate (px) of the image on the video frame (taking the upper left corner of the video frame as the origin).
2562
2600
  */
2563
2601
  y?: number;
2564
2602
  /**
2565
- * The width (pixel) of the image on the video frame.
2603
+ * The width (px) of the image on the video frame.
2566
2604
  */
2567
2605
  width?: number;
2568
2606
  /**
2569
- * The height (pixel) of the image on the video frame.
2607
+ * The height (px) of the image on the video frame.
2570
2608
  */
2571
2609
  height?: number;
2572
2610
  /**
@@ -3053,7 +3091,15 @@ export declare enum ConnectionChangedReasonType {
3053
3091
  /**
3054
3092
  * @ignore
3055
3093
  */
3056
- ConnectionChangedCertificationVeryfyFailure = 22
3094
+ ConnectionChangedCertificationVeryfyFailure = 22,
3095
+ /**
3096
+ * @ignore
3097
+ */
3098
+ ConnectionChangedStreamChannelNotAvailable = 23,
3099
+ /**
3100
+ * @ignore
3101
+ */
3102
+ ConnectionChangedInconsistentAppid = 24
3057
3103
  }
3058
3104
  /**
3059
3105
  * The reason for a user role switch failure.
@@ -3185,14 +3231,18 @@ export declare enum VideoViewSetupMode {
3185
3231
  * Attributes of the video canvas object.
3186
3232
  */
3187
3233
  export declare class VideoCanvas {
3188
- /**
3189
- * The video display window.
3190
- */
3191
- view?: any;
3192
3234
  /**
3193
3235
  * The user ID.
3194
3236
  */
3195
3237
  uid?: number;
3238
+ /**
3239
+ * Reserved for future use.
3240
+ */
3241
+ subviewUid?: number;
3242
+ /**
3243
+ * The video display window.
3244
+ */
3245
+ view?: any;
3196
3246
  /**
3197
3247
  * The background color of the video canvas in RGBA format. The default value is 0x00000000, which represents completely transparent black.
3198
3248
  */
@@ -3224,12 +3274,16 @@ export declare class VideoCanvas {
3224
3274
  */
3225
3275
  cropArea?: Rectangle;
3226
3276
  /**
3227
- * (Optional) Whether the receiver enables alpha mask rendering: true : The receiver enables alpha mask rendering. false : (default) The receiver disables alpha mask rendering. Alpha mask rendering can create images with transparent effects and extract portraits from videos. When used in combination with other methods, you can implement effects such as picture-in-picture and watermarking.
3277
+ * (Optional) Whether the receiver enables alpha mask rendering: true : The receiver enables alpha mask rendering. false : (default) The receiver disables alpha mask rendering. Alpha mask rendering can create images with transparent effects and extract portraits from videos. When used in combination with other methods, you can implement effects such as portrait-in-picture and watermarking.
3228
3278
  * This property applies to macOS only.
3229
3279
  * The receiver can render alpha channel information only when the sender enables alpha transmission.
3230
3280
  * To enable alpha transmission,.
3231
3281
  */
3232
3282
  enableAlphaMask?: boolean;
3283
+ /**
3284
+ * The observation position of the video frame in the video link. See VideoModulePosition.
3285
+ */
3286
+ position?: VideoModulePosition;
3233
3287
  }
3234
3288
  /**
3235
3289
  * The contrast level.
@@ -3421,11 +3475,11 @@ export declare class VirtualBackgroundSource {
3421
3475
  */
3422
3476
  background_source_type?: BackgroundSourceType;
3423
3477
  /**
3424
- * The type of the custom background image. The color of the custom background image. The format is a hexadecimal integer defined by RGB, without the # sign, such as 0xFFB6C1 for light pink. The default value is 0xFFFFFF, which signifies white. The value range is [0x000000, 0xffffff]. If the value is invalid, the SDK replaces the original background image with a white background image. This parameter takes effect only when the type of the custom background image is BackgroundColor.
3478
+ * The type of the custom background image. The color of the custom background image. The format is a hexadecimal integer defined by RGB, without the # sign, such as 0xFFB6C1 for light pink. The default value is 0xFFFFFF, which signifies white. The value range is [0x000000, 0xffffff]. If the value is invalid, the SDK replaces the original background image with a white background image. This parameter is only applicable to custom backgrounds of the following types: BackgroundColor : The background image is a solid-colored image of the color passed in by the parameter. BackgroundImg : If the image in source has a transparent background, the transparent background will be filled with the color passed in by the parameter.
3425
3479
  */
3426
3480
  color?: number;
3427
3481
  /**
3428
- * The local absolute path of the custom background image. PNG and JPG formats are supported. If the path is invalid, the SDK replaces the original background image with a white background image. This parameter takes effect only when the type of the custom background image is BackgroundImg.
3482
+ * The local absolute path of the custom background image. Supports PNG, JPG, MP4, AVI, MKV, and FLV formats. If the path is invalid, the SDK will use either the original background image or the solid color image specified by color. This parameter takes effect only when the type of the custom background image is BackgroundImg or BackgroundVideo.
3429
3483
  */
3430
3484
  source?: string;
3431
3485
  /**
@@ -4043,75 +4097,6 @@ export declare enum ChannelMediaRelayError {
4043
4097
  */
4044
4098
  RelayErrorDestTokenExpired = 11
4045
4099
  }
4046
- /**
4047
- * The event code of channel media relay.
4048
- */
4049
- export declare enum ChannelMediaRelayEvent {
4050
- /**
4051
- * 0: The user disconnects from the server due to a poor network connection.
4052
- */
4053
- RelayEventNetworkDisconnected = 0,
4054
- /**
4055
- * 1: The user is connected to the server.
4056
- */
4057
- RelayEventNetworkConnected = 1,
4058
- /**
4059
- * 2: The user joins the source channel.
4060
- */
4061
- RelayEventPacketJoinedSrcChannel = 2,
4062
- /**
4063
- * 3: The user joins the target channel.
4064
- */
4065
- RelayEventPacketJoinedDestChannel = 3,
4066
- /**
4067
- * 4: The SDK starts relaying the media stream to the target channel.
4068
- */
4069
- RelayEventPacketSentToDestChannel = 4,
4070
- /**
4071
- * 5: The server receives the audio stream from the source channel.
4072
- */
4073
- RelayEventPacketReceivedVideoFromSrc = 5,
4074
- /**
4075
- * 6: The server receives the audio stream from the source channel.
4076
- */
4077
- RelayEventPacketReceivedAudioFromSrc = 6,
4078
- /**
4079
- * 7: The target channel is updated.
4080
- */
4081
- RelayEventPacketUpdateDestChannel = 7,
4082
- /**
4083
- * @ignore
4084
- */
4085
- RelayEventPacketUpdateDestChannelRefused = 8,
4086
- /**
4087
- * 9: The target channel does not change, which means that the target channel fails to be updated.
4088
- */
4089
- RelayEventPacketUpdateDestChannelNotChange = 9,
4090
- /**
4091
- * 10: The target channel name is NULL.
4092
- */
4093
- RelayEventPacketUpdateDestChannelIsNull = 10,
4094
- /**
4095
- * 11: The video profile is sent to the server.
4096
- */
4097
- RelayEventVideoProfileUpdate = 11,
4098
- /**
4099
- * 12: The SDK successfully pauses relaying the media stream to target channels.
4100
- */
4101
- RelayEventPauseSendPacketToDestChannelSuccess = 12,
4102
- /**
4103
- * 13: The SDK fails to pause relaying the media stream to target channels.
4104
- */
4105
- RelayEventPauseSendPacketToDestChannelFailed = 13,
4106
- /**
4107
- * 14: The SDK successfully resumes relaying the media stream to target channels.
4108
- */
4109
- RelayEventResumeSendPacketToDestChannelSuccess = 14,
4110
- /**
4111
- * 15: The SDK fails to resume relaying the media stream to target channels.
4112
- */
4113
- RelayEventResumeSendPacketToDestChannelFailed = 15
4114
- }
4115
4100
  /**
4116
4101
  * The state code of the channel media relay.
4117
4102
  */
@@ -4137,6 +4122,10 @@ export declare enum ChannelMediaRelayState {
4137
4122
  * Channel media information.
4138
4123
  */
4139
4124
  export declare class ChannelMediaInfo {
4125
+ /**
4126
+ * The user ID.
4127
+ */
4128
+ uid?: number;
4140
4129
  /**
4141
4130
  * The channel name.
4142
4131
  */
@@ -4145,24 +4134,20 @@ export declare class ChannelMediaInfo {
4145
4134
  * The token that enables the user to join the channel.
4146
4135
  */
4147
4136
  token?: string;
4148
- /**
4149
- * The user ID.
4150
- */
4151
- uid?: number;
4152
4137
  }
4153
4138
  /**
4154
4139
  * Configuration of cross channel media relay.
4155
4140
  */
4156
4141
  export declare class ChannelMediaRelayConfiguration {
4157
4142
  /**
4158
- * The information of the source channel. See ChannelMediaInfo. It contains the following members: channelName : The name of the source channel. The default value is NULL, which means the SDK applies the name of the current channel. token : The token for joining the source channel. This token is generated with the channelName and uid you set in srcInfo.
4159
- * If you have not enabled the App Certificate, set this parameter as the default value NULL, which means the SDK applies the App ID.
4143
+ * The information of the source channel. See ChannelMediaInfo. It contains the following members: channelName : The name of the source channel. The default value is null, which means the SDK applies the name of the current channel. token : The token for joining the source channel. This token is generated with the channelName and uid you set in srcInfo.
4144
+ * If you have not enabled the App Certificate, set this parameter as the default value null, which means the SDK applies the App ID.
4160
4145
  * If you have enabled the App Certificate, you must use the token generated with the channelName and uid, and the uid must be set as 0. uid : The unique user ID to identify the relay stream in the source channel. Agora recommends leaving the default value of 0 unchanged.
4161
4146
  */
4162
4147
  srcInfo?: ChannelMediaInfo;
4163
4148
  /**
4164
4149
  * The information of the target channel ChannelMediaInfo. It contains the following members: channelName : The name of the target channel. token : The token for joining the target channel. It is generated with the channelName and uid you set in destInfos.
4165
- * If you have not enabled the App Certificate, set this parameter as the default value NULL, which means the SDK applies the App ID.
4150
+ * If you have not enabled the App Certificate, set this parameter as the default value null, which means the SDK applies the App ID.
4166
4151
  * If you have enabled the App Certificate, you must use the token generated with the channelName and uid. If the token of any target channel expires, the whole media relay stops; hence Agora recommends that you specify the same expiration time for the tokens of all the target channels. uid : The unique user ID to identify the relay stream in the target channel. The value ranges from 0 to (2 32 -1). To avoid user ID conflicts, this user ID must be different from any other user ID in the target channel. The default value is 0, which means the SDK generates a random user ID.
4167
4152
  */
4168
4153
  destInfos?: ChannelMediaInfo[];
@@ -4187,7 +4172,7 @@ export declare class PeerDownlinkInfo {
4187
4172
  /**
4188
4173
  * @ignore
4189
4174
  */
4190
- uid?: string;
4175
+ userId?: string;
4191
4176
  /**
4192
4177
  * @ignore
4193
4178
  */
@@ -4278,7 +4263,7 @@ export declare class EncryptionConfig {
4278
4263
  */
4279
4264
  encryptionMode?: EncryptionMode;
4280
4265
  /**
4281
- * Encryption key in string type with unlimited length. Agora recommends using a 32-byte key. If you do not set an encryption key or set it as NULL, you cannot use the built-in encryption, and the SDK returns -2.
4266
+ * Encryption key in string type with unlimited length. Agora recommends using a 32-byte key. If you do not set an encryption key or set it as null, you cannot use the built-in encryption, and the SDK returns -2.
4282
4267
  */
4283
4268
  encryptionKey?: string;
4284
4269
  /**
@@ -4337,15 +4322,6 @@ export declare enum PermissionType {
4337
4322
  */
4338
4323
  ScreenCapture = 2
4339
4324
  }
4340
- /**
4341
- * The maximum length of the user account.
4342
- */
4343
- export declare enum MaxUserAccountLengthType {
4344
- /**
4345
- * The maximum length of the user account is 256 bytes.
4346
- */
4347
- MaxUserAccountLength = 256
4348
- }
4349
4325
  /**
4350
4326
  * The subscribing state.
4351
4327
  */
@@ -4413,7 +4389,7 @@ export declare class EchoTestConfiguration {
4413
4389
  */
4414
4390
  enableAudio?: boolean;
4415
4391
  /**
4416
- * Whether to enable the video device for the loop test: true : (Default) Enable the video device. To test the video device, set this parameter as true. false : Disable the video device.
4392
+ * Whether to enable the video device for the loop test. Currently, video device loop test is not supported. Please set this parameter to false.
4417
4393
  */
4418
4394
  enableVideo?: boolean;
4419
4395
  /**
@@ -4425,7 +4401,9 @@ export declare class EchoTestConfiguration {
4425
4401
  */
4426
4402
  channelId?: string;
4427
4403
  /**
4428
- * The time interval (s) between when you start the call and when the recording plays back. The value range is [2, 10], and the default value is 2.
4404
+ * Set the time interval or delay for returning the results of the audio and video loop test. The value range is [2,10], in seconds, with the default value being 2 seconds.
4405
+ * For audio loop tests, the test results will be returned according to the time interval you set.
4406
+ * For video loop tests, the video will be displayed in a short time, after which the delay will gradually increase until it reaches the delay you set.
4429
4407
  */
4430
4408
  intervalInSeconds?: number;
4431
4409
  }
@@ -4620,19 +4598,6 @@ export declare enum ConfigFetchType {
4620
4598
  */
4621
4599
  ConfigFetchTypeJoinChannel = 2
4622
4600
  }
4623
- /**
4624
- * @ignore
4625
- */
4626
- export declare class RecorderStreamInfo {
4627
- /**
4628
- * @ignore
4629
- */
4630
- channelId?: string;
4631
- /**
4632
- * @ignore
4633
- */
4634
- uid?: number;
4635
- }
4636
4601
  /**
4637
4602
  * @ignore
4638
4603
  */
@@ -4708,6 +4673,23 @@ export declare class LocalAccessPointConfiguration {
4708
4673
  * @ignore
4709
4674
  */
4710
4675
  advancedConfig?: AdvancedConfigInfo;
4676
+ /**
4677
+ * @ignore
4678
+ */
4679
+ disableAut?: boolean;
4680
+ }
4681
+ /**
4682
+ * @ignore
4683
+ */
4684
+ export declare class RecorderStreamInfo {
4685
+ /**
4686
+ * @ignore
4687
+ */
4688
+ channelId?: string;
4689
+ /**
4690
+ * @ignore
4691
+ */
4692
+ uid?: number;
4711
4693
  }
4712
4694
  /**
4713
4695
  * The spatial audio parameters.
@@ -4762,4 +4744,41 @@ export declare class SpatialAudioParams {
4762
4744
  */
4763
4745
  enable_doppler?: boolean;
4764
4746
  }
4747
+ /**
4748
+ * @ignore
4749
+ */
4750
+ export declare class VideoLayout {
4751
+ /**
4752
+ * @ignore
4753
+ */
4754
+ channelId?: string;
4755
+ /**
4756
+ * @ignore
4757
+ */
4758
+ uid?: number;
4759
+ /**
4760
+ * @ignore
4761
+ */
4762
+ strUid?: string;
4763
+ /**
4764
+ * @ignore
4765
+ */
4766
+ x?: number;
4767
+ /**
4768
+ * @ignore
4769
+ */
4770
+ y?: number;
4771
+ /**
4772
+ * @ignore
4773
+ */
4774
+ width?: number;
4775
+ /**
4776
+ * @ignore
4777
+ */
4778
+ height?: number;
4779
+ /**
4780
+ * @ignore
4781
+ */
4782
+ videoState?: number;
4783
+ }
4765
4784
  //# sourceMappingURL=AgoraBase.d.ts.map