agora-electron-sdk 4.2.2-dev.4 → 4.2.2-dev.6

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 (64) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/js/Private/AgoraBase.js +121 -51
  3. package/js/Private/AgoraMediaBase.js +9 -7
  4. package/js/Private/IAgoraRtcEngine.js +11 -11
  5. package/js/Private/IAgoraRtcEngineEx.js +1 -1
  6. package/js/Private/IAgoraSpatialAudio.js +2 -2
  7. package/js/Private/impl/IAgoraMediaEngineImpl.js +12 -6
  8. package/js/Private/impl/IAgoraRtcEngineImpl.js +7 -7
  9. package/js/Private/internal/MusicContentCenterInternal.js +3 -0
  10. package/js/Private/internal/RtcEngineExInternal.js +24 -7
  11. package/js/Private/ti/IAgoraRtcEngine-ti.js +2 -2
  12. package/js/Renderer/WebGLRenderer/index.js +19 -19
  13. package/js/Renderer/YUVCanvasRenderer/index.js +1 -1
  14. package/package.json +3 -3
  15. package/scripts/zipBuild.js +3 -1
  16. package/ts/Private/AgoraBase.ts +278 -131
  17. package/ts/Private/AgoraMediaBase.ts +52 -34
  18. package/ts/Private/AgoraMediaPlayerTypes.ts +8 -5
  19. package/ts/Private/IAgoraLog.ts +7 -3
  20. package/ts/Private/IAgoraMediaEngine.ts +73 -31
  21. package/ts/Private/IAgoraMediaPlayer.ts +126 -64
  22. package/ts/Private/IAgoraMediaPlayerSource.ts +3 -1
  23. package/ts/Private/IAgoraRtcEngine.ts +1307 -519
  24. package/ts/Private/IAgoraRtcEngineEx.ts +227 -94
  25. package/ts/Private/IAgoraSpatialAudio.ts +70 -35
  26. package/ts/Private/IAudioDeviceManager.ts +61 -31
  27. package/ts/Private/impl/IAgoraMediaEngineImpl.ts +12 -6
  28. package/ts/Private/impl/IAgoraRtcEngineImpl.ts +9 -11
  29. package/ts/Private/internal/MusicContentCenterInternal.ts +4 -0
  30. package/ts/Private/internal/RtcEngineExInternal.ts +36 -14
  31. package/ts/Private/ti/IAgoraRtcEngine-ti.ts +2 -2
  32. package/ts/Renderer/WebGLRenderer/index.ts +26 -21
  33. package/ts/Renderer/YUVCanvasRenderer/index.ts +1 -1
  34. package/types/Private/AgoraBase.d.ts +278 -131
  35. package/types/Private/AgoraBase.d.ts.map +1 -1
  36. package/types/Private/AgoraMediaBase.d.ts +52 -34
  37. package/types/Private/AgoraMediaBase.d.ts.map +1 -1
  38. package/types/Private/AgoraMediaPlayerTypes.d.ts +8 -5
  39. package/types/Private/AgoraMediaPlayerTypes.d.ts.map +1 -1
  40. package/types/Private/IAgoraLog.d.ts +7 -3
  41. package/types/Private/IAgoraLog.d.ts.map +1 -1
  42. package/types/Private/IAgoraMediaEngine.d.ts +73 -31
  43. package/types/Private/IAgoraMediaEngine.d.ts.map +1 -1
  44. package/types/Private/IAgoraMediaPlayer.d.ts +126 -64
  45. package/types/Private/IAgoraMediaPlayer.d.ts.map +1 -1
  46. package/types/Private/IAgoraMediaPlayerSource.d.ts +3 -1
  47. package/types/Private/IAgoraMediaPlayerSource.d.ts.map +1 -1
  48. package/types/Private/IAgoraRtcEngine.d.ts +1308 -519
  49. package/types/Private/IAgoraRtcEngine.d.ts.map +1 -1
  50. package/types/Private/IAgoraRtcEngineEx.d.ts +227 -94
  51. package/types/Private/IAgoraRtcEngineEx.d.ts.map +1 -1
  52. package/types/Private/IAgoraSpatialAudio.d.ts +70 -35
  53. package/types/Private/IAgoraSpatialAudio.d.ts.map +1 -1
  54. package/types/Private/IAudioDeviceManager.d.ts +61 -31
  55. package/types/Private/IAudioDeviceManager.d.ts.map +1 -1
  56. package/types/Private/impl/IAgoraMediaEngineImpl.d.ts +2 -2
  57. package/types/Private/impl/IAgoraMediaEngineImpl.d.ts.map +1 -1
  58. package/types/Private/impl/IAgoraRtcEngineImpl.d.ts +5 -5
  59. package/types/Private/impl/IAgoraRtcEngineImpl.d.ts.map +1 -1
  60. package/types/Private/internal/MusicContentCenterInternal.d.ts +1 -0
  61. package/types/Private/internal/MusicContentCenterInternal.d.ts.map +1 -1
  62. package/types/Private/internal/RtcEngineExInternal.d.ts.map +1 -1
  63. package/types/Renderer/WebGLRenderer/index.d.ts +1 -1
  64. package/types/Renderer/WebGLRenderer/index.d.ts.map +1 -1
@@ -176,15 +176,24 @@ export enum ErrorCodeType {
176
176
  */
177
177
  ErrInvalidArgument = 2,
178
178
  /**
179
- * 3: The SDK is not ready. Possible reasons include the following:The initialization of IRtcEngine fails. Reinitialize the IRtcEngine.No user has joined the channel when the method is called. Check the code logic.The user has not left the channel when the rate or complain method is called. Check the code logic.The audio module is disabled.The program is not complete.
179
+ * 3: The SDK is not ready. Possible reasons include the following:
180
+ * The initialization of IRtcEngine fails. Reinitialize the IRtcEngine.
181
+ * No user has joined the channel when the method is called. Check the code logic.
182
+ * The user has not left the channel when the rate or complain method is called. Check the code logic.
183
+ * The audio module is disabled.
184
+ * The program is not complete.
180
185
  */
181
186
  ErrNotReady = 3,
182
187
  /**
183
- * 4: The IRtcEngine does not support the request. Possible reasons include the following:The built-in encryption mode is incorrect, or the SDK fails to load the external encryption library. Check the encryption mode setting, or reload the external encryption library.
188
+ * 4: The IRtcEngine does not support the request. Possible reasons include the following:
189
+ * The built-in encryption mode is incorrect, or the SDK fails to load the external encryption library. Check the encryption mode setting, or reload the external encryption library.
184
190
  */
185
191
  ErrNotSupported = 4,
186
192
  /**
187
- * 5: The request is rejected. Possible reasons include the following:The IRtcEngine initialization fails. Reinitialize the IRtcEngine.The channel name is set as the empty string "" when joining the channel. Reset the channel name.When the joinChannelEx method is called to join multiple channels, the specified channel name is already in use. Reset the channel name.
193
+ * 5: The request is rejected. Possible reasons include the following:
194
+ * The IRtcEngine initialization fails. Reinitialize the IRtcEngine.
195
+ * The channel name is set as the empty string "" when joining the channel. Reset the channel name.
196
+ * When the joinChannelEx method is called to join multiple channels, the specified channel name is already in use. Reset the channel name.
188
197
  */
189
198
  ErrRefused = 5,
190
199
  /**
@@ -224,11 +233,15 @@ export enum ErrorCodeType {
224
233
  */
225
234
  ErrNetDown = 14,
226
235
  /**
227
- * 17: The request to join the channel is rejected. Possible reasons include the following:The user is already in the channel. Agora recommends that you use the onConnectionStateChanged callback to determine whether the user exists in the channel. Do not call this method to join the channel unless you receive the ConnectionStateDisconnected(1) state.After calling startEchoTest for the call test, the user tries to join the channel without calling stopEchoTest to end the current test. To join a channel, the call test must be ended by calling stopEchoTest.
236
+ * 17: The request to join the channel is rejected. Possible reasons include the following:
237
+ * The user is already in the channel. Agora recommends that you use the onConnectionStateChanged callback to determine whether the user exists in the channel. Do not call this method to join the channel unless you receive the ConnectionStateDisconnected (1) state.
238
+ * After calling startEchoTest for the call test, the user tries to join the channel without calling stopEchoTest to end the current test. To join a channel, the call test must be ended by calling stopEchoTest.
228
239
  */
229
240
  ErrJoinChannelRejected = 17,
230
241
  /**
231
- * 18: Fails to leave the channel. Possible reasons include the following:The user has left the channel before calling the leaveChannel method. Stop calling this method to clear this error.The user calls the leaveChannel method to leave the channel before joining the channel. In this case, no extra operation is needed.
242
+ * 18: Fails to leave the channel. Possible reasons include the following:
243
+ * The user has left the channel before calling the leaveChannel method. Stop calling this method to clear this error.
244
+ * The user calls the leaveChannel method to leave the channel before joining the channel. In this case, no extra operation is needed.
232
245
  */
233
246
  ErrLeaveChannelRejected = 18,
234
247
  /**
@@ -260,11 +273,13 @@ export enum ErrorCodeType {
260
273
  */
261
274
  ErrNoServerResources = 103,
262
275
  /**
263
- * 109: The current token has expired. Apply for a new token on the server and call renewToken.Deprecated:This enumerator is deprecated. Use ConnectionChangedTokenExpired(9) in the onConnectionStateChanged callback instead.
276
+ * 109: The current token has expired. Apply for a new token on the server and call renewToken. Deprecated: This enumerator is deprecated. Use ConnectionChangedTokenExpired (9) in the onConnectionStateChanged callback instead.
264
277
  */
265
278
  ErrTokenExpired = 109,
266
279
  /**
267
- * 110: Invalid token. Typical reasons include the following:App Certificate is enabled in Agora Console, but the code still uses App ID for authentication. Once App Certificate is enabled for a project, you must use token-based authentication.The uid used to generate the token is not the same as the uid used to join the channel.Deprecated:This enumerator is deprecated. Use ConnectionChangedInvalidToken(8) in the onConnectionStateChanged callback instead.
280
+ * 110: Invalid token. Typical reasons include the following:
281
+ * App Certificate is enabled in Agora Console, but the code still uses App ID for authentication. Once App Certificate is enabled for a project, you must use token-based authentication.
282
+ * The uid used to generate the token is not the same as the uid used to join the channel. Deprecated: This enumerator is deprecated. Use ConnectionChangedInvalidToken (8) in the onConnectionStateChanged callback instead.
268
283
  */
269
284
  ErrInvalidToken = 110,
270
285
  /**
@@ -490,7 +505,7 @@ export enum UserOfflineReasonType {
490
505
  */
491
506
  UserOfflineQuit = 0,
492
507
  /**
493
- * 1: The SDK times out and the user drops offline because no data packet is received within a certain period of time.If the user quits the call and the message is not passed to the SDK (due to an unreliable channel), the SDK assumes the user dropped offline.
508
+ * 1: The SDK times out and the user drops offline because no data packet is received within a certain period of time. If the user quits the call and the message is not passed to the SDK (due to an unreliable channel), the SDK assumes the user dropped offline.
494
509
  */
495
510
  UserOfflineDropped = 1,
496
511
  /**
@@ -532,7 +547,7 @@ export enum InterfaceIdType {
532
547
  */
533
548
  AgoraIidRtcConnection = 7,
534
549
  /**
535
- * This interface class is deprecated.
550
+ * @ignore
536
551
  */
537
552
  AgoraIidSignalingEngine = 8,
538
553
  /**
@@ -732,7 +747,9 @@ export enum VideoFrameType {
732
747
  */
733
748
  export enum OrientationMode {
734
749
  /**
735
- * 0: (Default) The output video always follows the orientation of the captured video. The receiver takes the rotational information passed on from the video encoder. This mode applies to scenarios where video orientation can be adjusted on the receiver.If the captured video is in landscape mode, the output video is in landscape mode.If the captured video is in portrait mode, the output video is in portrait mode.
750
+ * 0: (Default) The output video always follows the orientation of the captured video. The receiver takes the rotational information passed on from the video encoder. This mode applies to scenarios where video orientation can be adjusted on the receiver.
751
+ * If the captured video is in landscape mode, the output video is in landscape mode.
752
+ * If the captured video is in portrait mode, the output video is in portrait mode.
736
753
  */
737
754
  OrientationModeAdaptive = 0,
738
755
  /**
@@ -758,7 +775,7 @@ export enum DegradationPreference {
758
775
  */
759
776
  MaintainFramerate = 1,
760
777
  /**
761
- * 2: Reduces the video frame rate and video resolution simultaneously during video encoding under limited bandwidth. The MaintainBalanced has a lower reduction than MaintainQuality and MaintainFramerate, and this preference is suitable for scenarios where both smoothness and video quality are a priority.The resolution of the video sent may change, so remote users need to handle this issue. See onVideoSizeChanged.
778
+ * 2: Reduces the video frame rate and video resolution simultaneously during video encoding under limited bandwidth. The MaintainBalanced has a lower reduction than MaintainQuality and MaintainFramerate, and this preference is suitable for scenarios where both smoothness and video quality are a priority. The resolution of the video sent may change, so remote users need to handle this issue. See onVideoSizeChanged.
762
779
  */
763
780
  MaintainBalanced = 2,
764
781
  /**
@@ -850,7 +867,7 @@ export enum VideoCodecType {
850
867
  */
851
868
  VideoCodecH265 = 3,
852
869
  /**
853
- * 6: Generic.This type is used for transmitting raw video data, such as encrypted video frames. The SDK returns this type of video frames in callbacks, and you need to decode and render the frames yourself.
870
+ * 6: Generic. This type is used for transmitting raw video data, such as encrypted video frames. The SDK returns this type of video frames in callbacks, and you need to decode and render the frames yourself.
854
871
  */
855
872
  VideoCodecGeneric = 6,
856
873
  /**
@@ -866,7 +883,7 @@ export enum VideoCodecType {
866
883
  */
867
884
  VideoCodecVp9 = 13,
868
885
  /**
869
- * 20: Generic JPEG.This type consumes minimum computing resources and applies to IoT devices.
886
+ * 20: Generic JPEG. This type consumes minimum computing resources and applies to IoT devices.
870
887
  */
871
888
  VideoCodecGenericJpeg = 20,
872
889
  }
@@ -1116,7 +1133,7 @@ export class VideoSubscriptionOptions {
1116
1133
  */
1117
1134
  type?: VideoStreamType;
1118
1135
  /**
1119
- * Whether to subscribe to encoded video frames only:true: Subscribe to the encoded video data (structured data) only; the SDK does not decode or render raw video data.false: (Default) Subscribe to both raw video data and encoded video data.
1136
+ * Whether to subscribe to encoded video frames only: true : Subscribe to the encoded video data (structured data) only; the SDK does not decode or render raw video data. false : (Default) Subscribe to both raw video data and encoded video data.
1120
1137
  */
1121
1138
  encodedFrameOnly?: boolean;
1122
1139
  }
@@ -1138,7 +1155,7 @@ export class EncodedVideoFrameInfo {
1138
1155
  */
1139
1156
  height?: number;
1140
1157
  /**
1141
- * The number of video frames per second.When this parameter is not 0, you can use it to calculate the Unix timestamp of externally encoded video frames.
1158
+ * The number of video frames per second. When this parameter is not 0, you can use it to calculate the Unix timestamp of externally encoded video frames.
1142
1159
  */
1143
1160
  framesPerSecond?: number;
1144
1161
  /**
@@ -1222,7 +1239,9 @@ export class AdvanceOptions {
1222
1239
  */
1223
1240
  export enum VideoMirrorModeType {
1224
1241
  /**
1225
- * 0: The SDK determines the mirror mode.For the mirror mode of the local video view: If you use a front camera, the SDK enables the mirror mode by default; if you use a rear camera, the SDK disables the mirror mode by default.For the remote user: The mirror mode is disabled by default.
1242
+ * 0: The SDK determines the mirror mode.
1243
+ * For the mirror mode of the local video view: If you use a front camera, the SDK enables the mirror mode by default; if you use a rear camera, the SDK disables the mirror mode by default.
1244
+ * For the remote user: The mirror mode is disabled by default.
1226
1245
  */
1227
1246
  VideoMirrorModeAuto = 0,
1228
1247
  /**
@@ -1262,15 +1281,15 @@ export enum CodecCapMask {
1262
1281
  }
1263
1282
 
1264
1283
  /**
1265
- * @ignore
1284
+ * The level of the codec capability.
1266
1285
  */
1267
1286
  export class CodecCapLevels {
1268
1287
  /**
1269
- * @ignore
1288
+ * Hardware decoding capability level, which represents the device's ability to perform hardware decoding on videos of different quality. See VIDEO_CODEC_CAPABILITY_LEVEL.
1270
1289
  */
1271
1290
  hwDecodingLevel?: VideoCodecCapabilityLevel;
1272
1291
  /**
1273
- * @ignore
1292
+ * Software decoding capability level, which represents the device's ability to perform software decoding on videos of different quality. See VIDEO_CODEC_CAPABILITY_LEVEL.
1274
1293
  */
1275
1294
  swDecodingLevel?: VideoCodecCapabilityLevel;
1276
1295
  }
@@ -1288,7 +1307,7 @@ export class CodecCapInfo {
1288
1307
  */
1289
1308
  codecCapMask?: number;
1290
1309
  /**
1291
- * @ignore
1310
+ * The level of the codec capability. See CodecCapLevels.
1292
1311
  */
1293
1312
  codecLevels?: CodecCapLevels;
1294
1313
  }
@@ -1314,7 +1333,7 @@ export class VideoEncoderConfiguration {
1314
1333
  */
1315
1334
  bitrate?: number;
1316
1335
  /**
1317
- * The minimum encoding bitrate (Kbps) of the video.The SDK automatically adjusts the encoding bitrate to adapt to the network conditions. Using a value greater than the default value forces the video encoder to output high-quality images but may cause more packet loss and sacrifice the smoothness of the video transmission. Unless you have special requirements for image quality, Agora does not recommend changing this value.This parameter only applies to the interactive streaming profile.
1336
+ * The minimum encoding bitrate (Kbps) of the video. The SDK automatically adjusts the encoding bitrate to adapt to the network conditions. Using a value greater than the default value forces the video encoder to output high-quality images but may cause more packet loss and sacrifice the smoothness of the video transmission. Unless you have special requirements for image quality, Agora does not recommend changing this value. This parameter only applies to the interactive streaming profile.
1318
1337
  */
1319
1338
  minBitrate?: number;
1320
1339
  /**
@@ -1326,7 +1345,7 @@ export class VideoEncoderConfiguration {
1326
1345
  */
1327
1346
  degradationPreference?: DegradationPreference;
1328
1347
  /**
1329
- * Sets the mirror mode of the published local video stream. It only affects the video that the remote user sees. See VideoMirrorModeType.By default, the video is not mirrored.
1348
+ * Sets the mirror mode of the published local video stream. It only affects the video that the remote user sees. See VideoMirrorModeType. By default, the video is not mirrored.
1330
1349
  */
1331
1350
  mirrorMode?: VideoMirrorModeType;
1332
1351
  /**
@@ -1342,11 +1361,11 @@ export class VideoEncoderConfiguration {
1342
1361
  */
1343
1362
  export class DataStreamConfig {
1344
1363
  /**
1345
- * Whether to synchronize the data packet with the published audio packet.true: Synchronize the data packet with the audio packet.false: Do not synchronize the data packet with the audio packet.When you set the data packet to synchronize with the audio, then if the data packet delay is within the audio delay, the SDK triggers the onStreamMessage callback when the synchronized audio packet is played out. Do not set this parameter as true if you need the receiver to receive the data packet immediately. Agora recommends that you set this parameter to true only when you need to implement specific functions, for example, lyric synchronization.
1364
+ * Whether to synchronize the data packet with the published audio packet. true : Synchronize the data packet with the audio packet. false : Do not synchronize the data packet with the audio packet. When you set the data packet to synchronize with the audio, then if the data packet delay is within the audio delay, the SDK triggers the onStreamMessage callback when the synchronized audio packet is played out. Do not set this parameter as true if you need the receiver to receive the data packet immediately. Agora recommends that you set this parameter to true only when you need to implement specific functions, for example, lyric synchronization.
1346
1365
  */
1347
1366
  syncWithAudio?: boolean;
1348
1367
  /**
1349
- * Whether the SDK guarantees that the receiver receives the data in the sent order.true: Guarantee that the receiver receives the data in the sent order.false: Do not guarantee that the receiver receives the data in the sent order.Do not set this parameter as true if you need the receiver to receive the data packet immediately.
1368
+ * Whether the SDK guarantees that the receiver receives the data in the sent order. true : Guarantee that the receiver receives the data in the sent order. false : Do not guarantee that the receiver receives the data in the sent order. Do not set this parameter as true if you need the receiver to receive the data packet immediately.
1350
1369
  */
1351
1370
  ordered?: boolean;
1352
1371
  }
@@ -1412,7 +1431,9 @@ export class Rectangle {
1412
1431
  /**
1413
1432
  * The position and size of the watermark on the screen.
1414
1433
  *
1415
- * The position and size of the watermark on the screen are determined by xRatio , yRatio , and widthRatio : ( xRatio , yRatio ) refers to the coordinates of the upper left corner of the watermark, which determines the distance from the upper left corner of the watermark to the upper left corner of the screen. The widthRatio determines the width of the watermark.
1434
+ * The position and size of the watermark on the screen are determined by xRatio, yRatio, and widthRatio :
1435
+ * (xRatio, yRatio) refers to the coordinates of the upper left corner of the watermark, which determines the distance from the upper left corner of the watermark to the upper left corner of the screen.
1436
+ * The widthRatio determines the width of the watermark.
1416
1437
  */
1417
1438
  export class WatermarkRatio {
1418
1439
  /**
@@ -1520,11 +1541,13 @@ export class RtcStats {
1520
1541
  */
1521
1542
  userCount?: number;
1522
1543
  /**
1523
- * Application CPU usage (%).The value of cpuAppUsage is always reported as 0 in the onLeaveChannel callback.
1544
+ * Application CPU usage (%).
1545
+ * The value of cpuAppUsage is always reported as 0 in the onLeaveChannel callback.
1524
1546
  */
1525
1547
  cpuAppUsage?: number;
1526
1548
  /**
1527
- * The system CPU usage (%).For Windows, in the multi-kernel environment, this member represents the average CPU usage. The value = (100 - System Idle Progress in Task Manager)/100.The value of cpuTotalUsage is always reported as 0 in the onLeaveChannel callback.
1549
+ * The system CPU usage (%). For Windows, in the multi-kernel environment, this member represents the average CPU usage. The value = (100 - System Idle Progress in Task Manager)/100.
1550
+ * The value of cpuTotalUsage is always reported as 0 in the onLeaveChannel callback.
1528
1551
  */
1529
1552
  cpuTotalUsage?: number;
1530
1553
  /**
@@ -1532,15 +1555,15 @@ export class RtcStats {
1532
1555
  */
1533
1556
  gatewayRtt?: number;
1534
1557
  /**
1535
- * The memory ratio occupied by the app (%).This value is for reference only. Due to system limitations, you may not get this value.
1558
+ * The memory ratio occupied by the app (%). This value is for reference only. Due to system limitations, you may not get this value.
1536
1559
  */
1537
1560
  memoryAppUsageRatio?: number;
1538
1561
  /**
1539
- * The memory occupied by the system (%).This value is for reference only. Due to system limitations, you may not get this value.
1562
+ * The memory occupied by the system (%). This value is for reference only. Due to system limitations, you may not get this value.
1540
1563
  */
1541
1564
  memoryTotalUsageRatio?: number;
1542
1565
  /**
1543
- * The memory size occupied by the app (KB).This value is for reference only. Due to system limitations, you may not get this value.
1566
+ * The memory size occupied by the app (KB). This value is for reference only. Due to system limitations, you may not get this value.
1544
1567
  */
1545
1568
  memoryAppUsageInKbytes?: number;
1546
1569
  /**
@@ -1712,7 +1735,10 @@ export enum AudioAinsMode {
1712
1735
  */
1713
1736
  export enum AudioProfileType {
1714
1737
  /**
1715
- * 0: The default audio profile.For the interactive streaming profile: A sample rate of 48 kHz, music encoding, mono, and a bitrate of up to 64 Kbps.For the communication profile: Windows: A sample rate of 16 kHz, audio encoding, mono, and a bitrate of up to 16 Kbps.macOS: A sample rate of 32 kHz, audio encoding, mono, and a bitrate of up to 18 Kbps.
1738
+ * 0: The default audio profile.
1739
+ * For the interactive streaming profile: A sample rate of 48 kHz, music encoding, mono, and a bitrate of up to 64 Kbps.
1740
+ * For the communication profile:
1741
+ * Windows: A sample rate of 16 kHz, audio encoding, mono, and a bitrate of up to 16 Kbps. macOS: A sample rate of 32 kHz, audio encoding, mono, and a bitrate of up to 18 Kbps.
1716
1742
  */
1717
1743
  AudioProfileDefault = 0,
1718
1744
  /**
@@ -1724,7 +1750,7 @@ export enum AudioProfileType {
1724
1750
  */
1725
1751
  AudioProfileMusicStandard = 2,
1726
1752
  /**
1727
- * 3: A sample rate of 48 kHz, music encoding, stereo, and a bitrate of up to 80 Kbps.To implement stereo audio, you also need to call setAdvancedAudioOptions and set audioProcessingChannels to AudioProcessingStereo in AdvancedAudioOptions.
1753
+ * 3: A sample rate of 48 kHz, music encoding, stereo, and a bitrate of up to 80 Kbps. To implement stereo audio, you also need to call setAdvancedAudioOptions and set audioProcessingChannels to AudioProcessingStereo in AdvancedAudioOptions.
1728
1754
  */
1729
1755
  AudioProfileMusicStandardStereo = 3,
1730
1756
  /**
@@ -1732,7 +1758,7 @@ export enum AudioProfileType {
1732
1758
  */
1733
1759
  AudioProfileMusicHighQuality = 4,
1734
1760
  /**
1735
- * 5: A sample rate of 48 kHz, music encoding, stereo, and a bitrate of up to 128 Kbps.To implement stereo audio, you also need to call setAdvancedAudioOptions and set audioProcessingChannels to AudioProcessingStereo in AdvancedAudioOptions.
1761
+ * 5: A sample rate of 48 kHz, music encoding, stereo, and a bitrate of up to 128 Kbps. To implement stereo audio, you also need to call setAdvancedAudioOptions and set audioProcessingChannels to AudioProcessingStereo in AdvancedAudioOptions.
1736
1762
  */
1737
1763
  AudioProfileMusicHighQualityStereo = 5,
1738
1764
  /**
@@ -1842,7 +1868,20 @@ export enum VideoApplicationScenarioType {
1842
1868
  */
1843
1869
  ApplicationScenarioGeneral = 0,
1844
1870
  /**
1845
- * If set to ApplicationScenarioMeeting (1), the SDK automatically enables the following strategies:In meeting scenarios where low-quality video streams are required to have a high bitrate, the SDK automatically enables multiple technologies used to deal with network congestions, to enhance the performance of the low-quality streams and to ensure the smooth reception by subscribers.The SDK monitors the number of subscribers to the high-quality video stream in real time and dynamically adjusts its configuration based on the number of subscribers.If nobody subscribers to the high-quality stream, the SDK automatically reduces its bitrate and frame rate to save upstream bandwidth.If someone subscribes to the high-quality stream, the SDK resets the high-quality stream to the VideoEncoderConfiguration configuration used in the most recent calling of setVideoEncoderConfiguration. If no configuration has been set by the user previously, the following values are used:Resolution: 1280 × 720Frame rate: 15 fpsBitrate: 1600 KbpsThe SDK monitors the number of subscribers to the low-quality video stream in real time and dynamically enables or disables it based on the number of subscribers.If the user has called setDualStreamMode to set that never send low-quality video stream (DisableSimulcastStream), the dynamic adjustment of the low-quality stream in meeting scenarios will not take effect.If nobody subscribes to the low-quality stream, the SDK automatically disables it to save upstream bandwidth.If someone subscribes to the low-quality stream, the SDK enables the low-quality stream and resets it to the SimulcastStreamConfig configuration used in the most recent calling of setDualStreamMode. If no configuration has been set by the user previously, the following values are used:Resolution: 480 × 272Frame rate: 15 fpsBitrate: 500 Kbps1: The meeting scenario.
1871
+ * If set to ApplicationScenarioMeeting (1), the SDK automatically enables the following strategies:
1872
+ * In meeting scenarios where low-quality video streams are required to have a high bitrate, the SDK automatically enables multiple technologies used to deal with network congestions, to enhance the performance of the low-quality streams and to ensure the smooth reception by subscribers.
1873
+ * The SDK monitors the number of subscribers to the high-quality video stream in real time and dynamically adjusts its configuration based on the number of subscribers.
1874
+ * If nobody subscribers to the high-quality stream, the SDK automatically reduces its bitrate and frame rate to save upstream bandwidth.
1875
+ * If someone subscribes to the high-quality stream, the SDK resets the high-quality stream to the VideoEncoderConfiguration configuration used in the most recent calling of setVideoEncoderConfiguration. If no configuration has been set by the user previously, the following values are used:
1876
+ * Resolution: 1280 × 720
1877
+ * Frame rate: 15 fps
1878
+ * Bitrate: 1600 Kbps
1879
+ * The SDK monitors the number of subscribers to the low-quality video stream in real time and dynamically enables or disables it based on the number of subscribers. If the user has called setDualStreamMode to set that never send low-quality video stream (DisableSimulcastStream), the dynamic adjustment of the low-quality stream in meeting scenarios will not take effect.
1880
+ * If nobody subscribes to the low-quality stream, the SDK automatically disables it to save upstream bandwidth.
1881
+ * If someone subscribes to the low-quality stream, the SDK enables the low-quality stream and resets it to the SimulcastStreamConfig configuration used in the most recent calling of setDualStreamMode. If no configuration has been set by the user previously, the following values are used:
1882
+ * Resolution: 480 × 272
1883
+ * Frame rate: 15 fps
1884
+ * Bitrate: 500 Kbps 1: The meeting scenario.
1846
1885
  */
1847
1886
  ApplicationScenarioMeeting = 1,
1848
1887
  }
@@ -1904,7 +1943,7 @@ export enum LocalAudioStreamError {
1904
1943
  */
1905
1944
  LocalAudioStreamErrorFailure = 1,
1906
1945
  /**
1907
- * 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.
1946
+ * 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.
1908
1947
  */
1909
1948
  LocalAudioStreamErrorDeviceNoPermission = 2,
1910
1949
  /**
@@ -1976,7 +2015,7 @@ export enum LocalVideoStreamError {
1976
2015
  */
1977
2016
  LocalVideoStreamErrorFailure = 1,
1978
2017
  /**
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.
2018
+ * 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.
1980
2019
  */
1981
2020
  LocalVideoStreamErrorDeviceNoPermission = 2,
1982
2021
  /**
@@ -2004,7 +2043,7 @@ export enum LocalVideoStreamError {
2004
2043
  */
2005
2044
  LocalVideoStreamErrorDeviceNotFound = 8,
2006
2045
  /**
2007
- * 9:(For macOS only) The video capture device currently in use is disconnected (such as being unplugged).
2046
+ * 9: (For macOS only) The video capture device currently in use is disconnected (such as being unplugged).
2008
2047
  */
2009
2048
  LocalVideoStreamErrorDeviceDisconnected = 9,
2010
2049
  /**
@@ -2020,7 +2059,10 @@ export enum LocalVideoStreamError {
2020
2059
  */
2021
2060
  LocalVideoStreamErrorScreenCaptureWindowMinimized = 11,
2022
2061
  /**
2023
- * 12: (For 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 for reporting this error code:When the local user closes the shared window, the SDK reports this error code.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.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.
2062
+ * 12: (For 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 for reporting this error code:
2063
+ * When the local user closes the shared window, the SDK reports this error code.
2064
+ * 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.
2065
+ * 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.
2024
2066
  */
2025
2067
  LocalVideoStreamErrorScreenCaptureWindowClosed = 12,
2026
2068
  /**
@@ -2188,7 +2230,7 @@ export enum RemoteVideoStateReason {
2188
2230
  */
2189
2231
  RemoteVideoStateReasonSdkInBackground = 12,
2190
2232
  /**
2191
- * @ignore
2233
+ * 13: The local video decoder does not support decoding the remote video stream.
2192
2234
  */
2193
2235
  RemoteVideoStateReasonCodecNotSupport = 13,
2194
2236
  }
@@ -2288,7 +2330,9 @@ export enum RemoteVideoDownscaleLevel {
2288
2330
  */
2289
2331
  export class AudioVolumeInfo {
2290
2332
  /**
2291
- * The user ID.In the local user's callback, uid is 0.In the remote users' callback, uid is the user ID of a remote user whose instantaneous volume is the highest.
2333
+ * The user ID.
2334
+ * In the local user's callback, uid is 0.
2335
+ * In the remote users' callback, uid is the user ID of a remote user whose instantaneous volume is the highest.
2292
2336
  */
2293
2337
  uid?: number;
2294
2338
  /**
@@ -2296,11 +2340,15 @@ export class AudioVolumeInfo {
2296
2340
  */
2297
2341
  volume?: number;
2298
2342
  /**
2299
- * Voice activity status of the local user.0: The local user is not speaking.1: The local user is speaking.The vad parameter does not report the voice activity status of remote users. In a remote user's callback, the value of vad is always 1.To use this parameter, you must set reportVad to true when calling enableAudioVolumeIndication.
2343
+ * Voice activity status of the local user.
2344
+ * 0: The local user is not speaking.
2345
+ * 1: The local user is speaking.
2346
+ * The vad parameter does not report the voice activity status of remote users. In a remote user's callback, the value of vad is always 1.
2347
+ * To use this parameter, you must set reportVad to true when calling enableAudioVolumeIndication.
2300
2348
  */
2301
2349
  vad?: number;
2302
2350
  /**
2303
- * The voice pitch of the local user. The value ranges between 0.0 and 4000.0.The voicePitch parameter does not report the voice pitch of remote users. In the remote users' callback, the value of voicePitch is always 0.0.
2351
+ * The voice pitch of the local user. The value ranges between 0.0 and 4000.0. The voicePitch parameter does not report the voice pitch of remote users. In the remote users' callback, the value of voicePitch is always 0.0.
2304
2352
  */
2305
2353
  voicePitch?: number;
2306
2354
  }
@@ -2444,7 +2492,9 @@ export enum RtmpStreamPublishState {
2444
2492
  */
2445
2493
  RtmpStreamPublishStateRunning = 2,
2446
2494
  /**
2447
- * 3: The RTMP or RTMPS streaming is recovering. When exceptions occur to the CDN, or the streaming is interrupted, the SDK tries to resume RTMP or RTMPS streaming and returns this state.If the SDK successfully resumes the streaming, RtmpStreamPublishStateRunning(2) returns.If the streaming does not resume within 60 seconds or server errors occur, RtmpStreamPublishStateFailure(4) returns. If you feel that 60 seconds is too long, you can also actively try to reconnect.
2495
+ * 3: The RTMP or RTMPS streaming is recovering. When exceptions occur to the CDN, or the streaming is interrupted, the SDK tries to resume RTMP or RTMPS streaming and returns this state.
2496
+ * If the SDK successfully resumes the streaming, RtmpStreamPublishStateRunning (2) returns.
2497
+ * If the streaming does not resume within 60 seconds or server errors occur, RtmpStreamPublishStateFailure (4) returns. If you feel that 60 seconds is too long, you can also actively try to reconnect.
2448
2498
  */
2449
2499
  RtmpStreamPublishStateRecovering = 3,
2450
2500
  /**
@@ -2584,7 +2634,9 @@ export class RtcImage {
2584
2634
  */
2585
2635
  zOrder?: number;
2586
2636
  /**
2587
- * The transparency of the watermark or background image. The range of the value is [0.0,1.0]:0.0: Completely transparent.1.0: (Default) Opaque.
2637
+ * The transparency of the watermark or background image. The range of the value is [0.0,1.0]:
2638
+ * 0.0: Completely transparent.
2639
+ * 1.0: (Default) Opaque.
2588
2640
  */
2589
2641
  alpha?: number;
2590
2642
  }
@@ -2592,7 +2644,7 @@ export class RtcImage {
2592
2644
  /**
2593
2645
  * The configuration for advanced features of the RTMP or RTMPS streaming with transcoding.
2594
2646
  *
2595
- * If you want to enable the advanced features of streaming with transcoding, contact .
2647
+ * If you want to enable the advanced features of streaming with transcoding, contact.
2596
2648
  */
2597
2649
  export class LiveStreamAdvancedFeature {
2598
2650
  /**
@@ -2600,7 +2652,7 @@ export class LiveStreamAdvancedFeature {
2600
2652
  */
2601
2653
  featureName?: string;
2602
2654
  /**
2603
- * Whether to enable the advanced features of streaming with transcoding:true: Enable the advanced features.false: (Default) Do not enable the advanced features.
2655
+ * Whether to enable the advanced features of streaming with transcoding: true : Enable the advanced features. false : (Default) Do not enable the advanced features.
2604
2656
  */
2605
2657
  opened?: boolean;
2606
2658
  }
@@ -2610,11 +2662,15 @@ export class LiveStreamAdvancedFeature {
2610
2662
  */
2611
2663
  export enum ConnectionStateType {
2612
2664
  /**
2613
- * 1: The SDK is disconnected from the Agora edge server. The state indicates the SDK is in one of the following phases:Theinitial state before calling the joinChannel method.The app calls the leaveChannel method.
2665
+ * 1: The SDK is disconnected from the Agora edge server. The state indicates the SDK is in one of the following phases:
2666
+ * Theinitial state before calling the joinChannel method.
2667
+ * The app calls the leaveChannel method.
2614
2668
  */
2615
2669
  ConnectionStateDisconnected = 1,
2616
2670
  /**
2617
- * 2: The SDK is connecting to the Agora edge server. This state indicates that the SDK is establishing a connection with the specified channel after the app calls joinChannel.If the SDK successfully joins the channel, it triggers the onConnectionStateChanged callback and the connection state switches to ConnectionStateConnected.After the connection is established, the SDK also initializes the media and triggers onJoinChannelSuccess when everything is ready.
2671
+ * 2: The SDK is connecting to the Agora edge server. This state indicates that the SDK is establishing a connection with the specified channel after the app calls joinChannel.
2672
+ * If the SDK successfully joins the channel, it triggers the onConnectionStateChanged callback and the connection state switches to ConnectionStateConnected.
2673
+ * After the connection is established, the SDK also initializes the media and triggers onJoinChannelSuccess when everything is ready.
2618
2674
  */
2619
2675
  ConnectionStateConnecting = 2,
2620
2676
  /**
@@ -2622,11 +2678,15 @@ export enum ConnectionStateType {
2622
2678
  */
2623
2679
  ConnectionStateConnected = 3,
2624
2680
  /**
2625
- * 4: The SDK keeps reconnecting to the Agora edge server. The SDK keeps rejoining the channel after being disconnected from a joined channel because of network issues.If the SDK cannot rejoin the channel within 10 seconds, it triggers onConnectionLost, stays in the ConnectionStateReconnecting state, and keeps rejoining the channel.If the SDK fails to rejoin the channel 20 minutes after being disconnected from the Agora edge server, the SDK triggers the onConnectionStateChanged callback, switches to the ConnectionStateFailed state, and stops rejoining the channel.
2681
+ * 4: The SDK keeps reconnecting to the Agora edge server. The SDK keeps rejoining the channel after being disconnected from a joined channel because of network issues.
2682
+ * If the SDK cannot rejoin the channel within 10 seconds, it triggers onConnectionLost, stays in the ConnectionStateReconnecting state, and keeps rejoining the channel.
2683
+ * If the SDK fails to rejoin the channel 20 minutes after being disconnected from the Agora edge server, the SDK triggers the onConnectionStateChanged callback, switches to the ConnectionStateFailed state, and stops rejoining the channel.
2626
2684
  */
2627
2685
  ConnectionStateReconnecting = 4,
2628
2686
  /**
2629
- * 5: The SDK fails to connect to the Agora edge server or join the channel. This state indicates that the SDK stops trying to rejoin the channel. You must call leaveChannel to leave the channel.You can call joinChannel to rejoin the channel.If the SDK is banned from joining the channel by the Agora edge server through the RESTful API, the SDK triggers the onConnectionStateChanged callback.
2687
+ * 5: The SDK fails to connect to the Agora edge server or join the channel. This state indicates that the SDK stops trying to rejoin the channel. You must call leaveChannel to leave the channel.
2688
+ * You can call joinChannel to rejoin the channel.
2689
+ * If the SDK is banned from joining the channel by the Agora edge server through the RESTful API, the SDK triggers the onConnectionStateChanged callback.
2630
2690
  */
2631
2691
  ConnectionStateFailed = 5,
2632
2692
  }
@@ -2656,15 +2716,21 @@ export class TranscodingUser {
2656
2716
  */
2657
2717
  height?: number;
2658
2718
  /**
2659
- * The layer index number of the host's video. The value range is [0, 100].0: (Default) The host's video is the bottom layer.100: The host's video is the top layer.If the value is less than 0 or greater than 100, ErrInvalidArgument error is returned.Setting zOrder to 0 is supported.
2719
+ * The layer index number of the host's video. The value range is [0, 100].
2720
+ * 0: (Default) The host's video is the bottom layer.
2721
+ * 100: The host's video is the top layer.
2722
+ * If the value is less than 0 or greater than 100, ErrInvalidArgument error is returned.
2723
+ * Setting zOrder to 0 is supported.
2660
2724
  */
2661
2725
  zOrder?: number;
2662
2726
  /**
2663
- * The transparency of the host's video. The value range is [0.0,1.0].0.0: Completely transparent.1.0: (Default) Opaque.
2727
+ * The transparency of the host's video. The value range is [0.0,1.0].
2728
+ * 0.0: Completely transparent.
2729
+ * 1.0: (Default) Opaque.
2664
2730
  */
2665
2731
  alpha?: number;
2666
2732
  /**
2667
- * The audio channel used by the host's audio in the output audio. The default value is 0, and the value range is [0, 5].0: (Recommended) The defaut setting, which supports dual channels at most and depends on the upstream of the host.1: The host's audio uses the FL audio channel. If the host's upstream uses multiple audio channels, the Agora server mixes them into mono first.2: The host's audio uses the FC audio channel. If the host's upstream uses multiple audio channels, the Agora server mixes them into mono first.3: The host's audio uses the FR audio channel. If the host's upstream uses multiple audio channels, the Agora server mixes them into mono first.4: The host's audio uses the BL audio channel. If the host's upstream uses multiple audio channels, the Agora server mixes them into mono first.5: The host's audio uses the BR audio channel. If the host's upstream uses multiple audio channels, the Agora server mixes them into mono first.0xFF or a value greater than 5: The host's audio is muted, and the Agora server removes the host's audio.If the value is not 0, a special player is required.
2733
+ * The audio channel used by the host's audio in the output audio. The default value is 0, and the value range is [0, 5]. 0 : (Recommended) The defaut setting, which supports dual channels at most and depends on the upstream of the host. 1 : The host's audio uses the FL audio channel. If the host's upstream uses multiple audio channels, the Agora server mixes them into mono first. 2 : The host's audio uses the FC audio channel. If the host's upstream uses multiple audio channels, the Agora server mixes them into mono first. 3 : The host's audio uses the FR audio channel. If the host's upstream uses multiple audio channels, the Agora server mixes them into mono first. 4 : The host's audio uses the BL audio channel. If the host's upstream uses multiple audio channels, the Agora server mixes them into mono first. 5 : The host's audio uses the BR audio channel. If the host's upstream uses multiple audio channels, the Agora server mixes them into mono first. 0xFF or a value greater than 5 : The host's audio is muted, and the Agora server removes the host's audio. If the value is not 0, a special player is required.
2668
2734
  */
2669
2735
  audioChannel?: number;
2670
2736
  }
@@ -2674,11 +2740,15 @@ export class TranscodingUser {
2674
2740
  */
2675
2741
  export class LiveTranscoding {
2676
2742
  /**
2677
- * The width of the video in pixels. The default value is 360.When pushing video streams to the CDN, the value range of width is [64,1920]. If the value is less than 64, Agora server automatically adjusts it to 64; if the value is greater than 1920, Agora server automatically adjusts it to 1920.When pushing audio streams to the CDN, set width and height as 0.
2743
+ * The width of the video in pixels. The default value is 360.
2744
+ * When pushing video streams to the CDN, the value range of width is [64,1920]. If the value is less than 64, Agora server automatically adjusts it to 64; if the value is greater than 1920, Agora server automatically adjusts it to 1920.
2745
+ * When pushing audio streams to the CDN, set width and height as 0.
2678
2746
  */
2679
2747
  width?: number;
2680
2748
  /**
2681
- * The height of the video in pixels. The default value is 640.When pushing video streams to the CDN, the value range of height is [64,1080]. If the value is less than 64, Agora server automatically adjusts it to 64; if the value is greater than 1080, Agora server automatically adjusts it to 1080.When pushing audio streams to the CDN, set width and height as 0.
2749
+ * The height of the video in pixels. The default value is 640.
2750
+ * When pushing video streams to the CDN, the value range of height is [64,1080]. If the value is less than 64, Agora server automatically adjusts it to 64; if the value is greater than 1080, Agora server automatically adjusts it to 1080.
2751
+ * When pushing audio streams to the CDN, set width and height as 0.
2682
2752
  */
2683
2753
  height?: number;
2684
2754
  /**
@@ -2686,11 +2756,11 @@ export class LiveTranscoding {
2686
2756
  */
2687
2757
  videoBitrate?: number;
2688
2758
  /**
2689
- * Frame rate (fps) of the output video stream set for Media Push. The default value is 15. The value range is (0,30].The Agora server adjusts any value over 30 to 30.
2759
+ * Frame rate (fps) of the output video stream set for Media Push. The default value is 15. The value range is (0,30]. The Agora server adjusts any value over 30 to 30.
2690
2760
  */
2691
2761
  videoFramerate?: number;
2692
2762
  /**
2693
- * DeprecatedThis member is deprecated.Latency mode:true: Low latency with unassured quality.false: (Default) High latency with assured quality.
2763
+ * Deprecated This member is deprecated. Latency mode: true : Low latency with unassured quality. false : (Default) High latency with assured quality.
2694
2764
  */
2695
2765
  lowLatency?: boolean;
2696
2766
  /**
@@ -2698,7 +2768,7 @@ export class LiveTranscoding {
2698
2768
  */
2699
2769
  videoGop?: number;
2700
2770
  /**
2701
- * Video codec profile type for Media Push. Set it as 66, 77, or 100 (default). See VideoCodecProfileType for details.If you set this parameter to any other value, Agora adjusts it to the default value.
2771
+ * Video codec profile type for Media Push. Set it as 66, 77, or 100 (default). See VideoCodecProfileType for details. If you set this parameter to any other value, Agora adjusts it to the default value.
2702
2772
  */
2703
2773
  videoCodecProfile?: VideoCodecProfileType;
2704
2774
  /**
@@ -2722,11 +2792,11 @@ export class LiveTranscoding {
2722
2792
  */
2723
2793
  transcodingExtraInfo?: string;
2724
2794
  /**
2725
- * DeprecatedObsolete and not recommended for use.The metadata sent to the CDN client.
2795
+ * Deprecated Obsolete and not recommended for use. The metadata sent to the CDN client.
2726
2796
  */
2727
2797
  metadata?: string;
2728
2798
  /**
2729
- * The watermark on the live video. The image format needs to be PNG. See RtcImage.You can add one watermark, or add multiple watermarks using an array. This parameter is used with watermarkCount.
2799
+ * The watermark on the live video. The image format needs to be PNG. See RtcImage. You can add one watermark, or add multiple watermarks using an array. This parameter is used with watermarkCount.
2730
2800
  */
2731
2801
  watermark?: RtcImage[];
2732
2802
  /**
@@ -2734,7 +2804,7 @@ export class LiveTranscoding {
2734
2804
  */
2735
2805
  watermarkCount?: number;
2736
2806
  /**
2737
- * The number of background images on the live video. The image format needs to be PNG. See RtcImage.You can add a background image or use an array to add multiple background images. This parameter is used with backgroundImageCount.
2807
+ * The number of background images on the live video. The image format needs to be PNG. See RtcImage. You can add a background image or use an array to add multiple background images. This parameter is used with backgroundImageCount.
2738
2808
  */
2739
2809
  backgroundImage?: RtcImage[];
2740
2810
  /**
@@ -2750,7 +2820,12 @@ export class LiveTranscoding {
2750
2820
  */
2751
2821
  audioBitrate?: number;
2752
2822
  /**
2753
- * The number of audio channels for Media Push. Agora recommends choosing 1 (mono), or 2 (stereo) audio channels. Special players are required if you choose 3, 4, or 5.1: (Default) Mono2: Stereo.3: Three audio channels.4: Four audio channels.5: Five audio channels.
2823
+ * The number of audio channels for Media Push. Agora recommends choosing 1 (mono), or 2 (stereo) audio channels. Special players are required if you choose 3, 4, or 5.
2824
+ * 1: (Default) Mono
2825
+ * 2: Stereo.
2826
+ * 3: Three audio channels.
2827
+ * 4: Four audio channels.
2828
+ * 5: Five audio channels.
2754
2829
  */
2755
2830
  audioChannels?: number;
2756
2831
  /**
@@ -2776,11 +2851,11 @@ export class TranscodingVideoStream {
2776
2851
  */
2777
2852
  sourceType?: VideoSourceType;
2778
2853
  /**
2779
- * The user ID of the remote user.Use this parameter only when the source type is VideoSourceRemote for local video mixing.
2854
+ * The user ID of the remote user. Use this parameter only when the source type is VideoSourceRemote for local video mixing.
2780
2855
  */
2781
2856
  remoteUserUid?: number;
2782
2857
  /**
2783
- * The URL of the image.Use this parameter only when the source type is the image for local video mixing.
2858
+ * The URL of the image. Use this parameter only when the source type is the image for local video mixing.
2784
2859
  */
2785
2860
  imageUrl?: string;
2786
2861
  /**
@@ -2804,7 +2879,9 @@ export class TranscodingVideoStream {
2804
2879
  */
2805
2880
  height?: number;
2806
2881
  /**
2807
- * The number of the layer to which the video for the local video mixing belongs. The value range is [0, 100].0: (Default) The layer is at the bottom.100: The layer is at the top.
2882
+ * The number of the layer to which the video for the local video mixing belongs. The value range is [0, 100].
2883
+ * 0: (Default) The layer is at the bottom.
2884
+ * 100: The layer is at the top.
2808
2885
  */
2809
2886
  zOrder?: number;
2810
2887
  /**
@@ -2812,7 +2889,7 @@ export class TranscodingVideoStream {
2812
2889
  */
2813
2890
  alpha?: number;
2814
2891
  /**
2815
- * Whether to mirror the video for the local video mixing.true: Mirror the video for the local video mixing.false: (Default) Do not mirror the video for the local video mixing.This parameter only takes effect on video source types that are cameras.
2892
+ * Whether to mirror the video for the local video mixing. true : Mirror the video for the local video mixing. false : (Default) Do not mirror the video for the local video mixing. This parameter only takes effect on video source types that are cameras.
2816
2893
  */
2817
2894
  mirror?: boolean;
2818
2895
  }
@@ -2878,11 +2955,11 @@ export enum VideoTranscoderError {
2878
2955
  */
2879
2956
  export class LastmileProbeConfig {
2880
2957
  /**
2881
- * Sets whether to test the uplink network. Some users, for example, the audience members in a LIVE_BROADCASTING channel, do not need such a test.true: Test the uplink network.false: Do not test the uplink network.
2958
+ * Sets whether to test the uplink network. Some users, for example, the audience members in a LIVE_BROADCASTING channel, do not need such a test. true : Test the uplink network. false : Do not test the uplink network.
2882
2959
  */
2883
2960
  probeUplink?: boolean;
2884
2961
  /**
2885
- * Sets whether to test the downlink network:true: Test the downlink network.false: Do not test the downlink network.
2962
+ * Sets whether to test the downlink network: true : Test the downlink network. false : Do not test the downlink network.
2886
2963
  */
2887
2964
  probeDownlink?: boolean;
2888
2965
  /**
@@ -2990,7 +3067,9 @@ export enum ConnectionChangedReasonType {
2990
3067
  */
2991
3068
  ConnectionChangedInvalidChannelName = 7,
2992
3069
  /**
2993
- * 8: The connection failed because the token is not valid. Possible reasons are as follows:The App Certificate for the project is enabled in Agora Console, but you do not use a token when joining the channel. If you enable the App Certificate, you must use a token to join the channel.The uid specified when calling joinChannel to join the channel is inconsistent with the uid passed in when generating the token.
3070
+ * 8: The connection failed because the token is not valid. Possible reasons are as follows:
3071
+ * The App Certificate for the project is enabled in Agora Console, but you do not use a token when joining the channel. If you enable the App Certificate, you must use a token to join the channel.
3072
+ * The uid specified when calling joinChannel to join the channel is inconsistent with the uid passed in when generating the token.
2994
3073
  */
2995
3074
  ConnectionChangedInvalidToken = 8,
2996
3075
  /**
@@ -2998,7 +3077,9 @@ export enum ConnectionChangedReasonType {
2998
3077
  */
2999
3078
  ConnectionChangedTokenExpired = 9,
3000
3079
  /**
3001
- * 10: The connection is rejected by server. Possible reasons are as follows:The user is already in the channel and still calls a method, for example, joinChannel, to join the channel. Stop calling this method to clear this error.The user tries to join a channel while a test call is in progress. The user needs to join the channel after the call test ends.
3080
+ * 10: The connection is rejected by server. Possible reasons are as follows:
3081
+ * The user is already in the channel and still calls a method, for example, joinChannel, to join the channel. Stop calling this method to clear this error.
3082
+ * The user tries to join a channel while a test call is in progress. The user needs to join the channel after the call test ends.
3002
3083
  */
3003
3084
  ConnectionChangedRejectedByServer = 10,
3004
3085
  /**
@@ -3052,7 +3133,7 @@ export enum ConnectionChangedReasonType {
3052
3133
  */
3053
3134
  export enum ClientRoleChangeFailedReason {
3054
3135
  /**
3055
- * 1: The number of hosts in the channel is already at the upper limit.This enumerator is reported only when the support for 128 users is enabled. The maximum number of hosts is based on the actual number of hosts configured when you enable the 128-user feature.
3136
+ * 1: The number of hosts in the channel is already at the upper limit. This enumerator is reported only when the support for 128 users is enabled. The maximum number of hosts is based on the actual number of hosts configured when you enable the 128-user feature.
3056
3137
  */
3057
3138
  ClientRoleChangeFailedTooManyBroadcasters = 1,
3058
3139
  /**
@@ -3180,7 +3261,7 @@ export enum VideoViewSetupMode {
3180
3261
  */
3181
3262
  export class VideoCanvas {
3182
3263
  /**
3183
- * Video display window.
3264
+ * The video display window.
3184
3265
  */
3185
3266
  view?: any;
3186
3267
  /**
@@ -3188,7 +3269,7 @@ export class VideoCanvas {
3188
3269
  */
3189
3270
  uid?: number;
3190
3271
  /**
3191
- * @ignore
3272
+ * The background color of the video canvas in RGBA format. The default value is 0x00000000, which represents completely transparent black.
3192
3273
  */
3193
3274
  backgroundColor?: number;
3194
3275
  /**
@@ -3196,7 +3277,9 @@ export class VideoCanvas {
3196
3277
  */
3197
3278
  renderMode?: RenderModeType;
3198
3279
  /**
3199
- * The mirror mode of the view. See VideoMirrorModeType.For the mirror mode of the local video view: If you use a front camera, the SDK enables the mirror mode by default; if you use a rear camera, the SDK disables the mirror mode by default.For the remote user: The mirror mode is disabled by default.
3280
+ * The mirror mode of the view. See VideoMirrorModeType.
3281
+ * For the mirror mode of the local video view: If you use a front camera, the SDK enables the mirror mode by default; if you use a rear camera, the SDK disables the mirror mode by default.
3282
+ * For the remote user: The mirror mode is disabled by default.
3200
3283
  */
3201
3284
  mirrorMode?: VideoMirrorModeType;
3202
3285
  /**
@@ -3216,7 +3299,10 @@ export class VideoCanvas {
3216
3299
  */
3217
3300
  cropArea?: Rectangle;
3218
3301
  /**
3219
- * (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.This property applies to macOS only.The receiver can render alpha channel information only when the sender enables alpha transmission.To enable alpha transmission, .
3302
+ * (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.
3303
+ * This property applies to macOS only.
3304
+ * The receiver can render alpha channel information only when the sender enables alpha transmission.
3305
+ * To enable alpha transmission,.
3220
3306
  */
3221
3307
  enableAlphaMask?: boolean;
3222
3308
  }
@@ -3362,7 +3448,9 @@ export class ColorEnhanceOptions {
3362
3448
  */
3363
3449
  strengthLevel?: number;
3364
3450
  /**
3365
- * The level of skin tone protection. The value range is [0.0, 1.0]. 0.0 means no skin tone protection. The higher the value, the higher the level of skin tone protection. The default value is 1.0.When the level of color enhancement is higher, the portrait skin tone can be significantly distorted, so you need to set the level of skin tone protection.When the level of skin tone protection is higher, the color enhancement effect can be slightly reduced.Therefore, to get the best color enhancement effect, Agora recommends that you adjust strengthLevel and skinProtectLevel to get the most appropriate values.
3451
+ * The level of skin tone protection. The value range is [0.0, 1.0]. 0.0 means no skin tone protection. The higher the value, the higher the level of skin tone protection. The default value is 1.0.
3452
+ * When the level of color enhancement is higher, the portrait skin tone can be significantly distorted, so you need to set the level of skin tone protection.
3453
+ * When the level of skin tone protection is higher, the color enhancement effect can be slightly reduced. Therefore, to get the best color enhancement effect, Agora recommends that you adjust strengthLevel and skinProtectLevel to get the most appropriate values.
3366
3454
  */
3367
3455
  skinProtectLevel?: number;
3368
3456
  }
@@ -3420,15 +3508,15 @@ export class VirtualBackgroundSource {
3420
3508
  */
3421
3509
  background_source_type?: BackgroundSourceType;
3422
3510
  /**
3423
- * 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.
3511
+ * 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.
3424
3512
  */
3425
3513
  color?: number;
3426
3514
  /**
3427
- * 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.
3515
+ * 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.
3428
3516
  */
3429
3517
  source?: string;
3430
3518
  /**
3431
- * The degree of blurring applied to the custom background image. See BackgroundBlurDegree.This parameter takes effect only when the type of the custom background image is BackgroundBlur.
3519
+ * The degree of blurring applied to the custom background image. See BackgroundBlurDegree. This parameter takes effect only when the type of the custom background image is BackgroundBlur.
3432
3520
  */
3433
3521
  blur_degree?: BackgroundBlurDegree;
3434
3522
  }
@@ -3456,7 +3544,7 @@ export class SegmentationProperty {
3456
3544
  */
3457
3545
  modelType?: SegModelType;
3458
3546
  /**
3459
- * The range of accuracy for identifying green colors (different shades of green) in the view. The value range is [0,1], and the default value is 0.5. The larger the value, the wider the range of identifiable shades of green. When the value of this parameter is too large, the edge of the portrait and the green color in the portrait range are also detected. Agora recommends that you dynamically adjust the value of this parameter according to the actual effect.This parameter only takes effect when modelType is set to SegModelGreen.
3547
+ * The range of accuracy for identifying green colors (different shades of green) in the view. The value range is [0,1], and the default value is 0.5. The larger the value, the wider the range of identifiable shades of green. When the value of this parameter is too large, the edge of the portrait and the green color in the portrait range are also detected. Agora recommends that you dynamically adjust the value of this parameter according to the actual effect. This parameter only takes effect when modelType is set to SegModelGreen.
3460
3548
  */
3461
3549
  greenCapacity?: number;
3462
3550
  }
@@ -3484,7 +3572,7 @@ export enum AudioTrackType {
3484
3572
  */
3485
3573
  export class AudioTrackConfig {
3486
3574
  /**
3487
- * Whether to enable the local audio-playback device:true: (Default) Enable the local audio-playback device.false: Do not enable the local audio-playback device.
3575
+ * Whether to enable the local audio-playback device: true : (Default) Enable the local audio-playback device. false : Do not enable the local audio-playback device.
3488
3576
  */
3489
3577
  enableLocalPlayback?: boolean;
3490
3578
  }
@@ -3498,19 +3586,21 @@ export enum VoiceBeautifierPreset {
3498
3586
  */
3499
3587
  VoiceBeautifierOff = 0x00000000,
3500
3588
  /**
3501
- * A more magnetic voice.Agora recommends using this enumerator to process a male-sounding voice; otherwise, you may experience vocal distortion.
3589
+ * A more magnetic voice. Agora recommends using this enumerator to process a male-sounding voice; otherwise, you may experience vocal distortion.
3502
3590
  */
3503
3591
  ChatBeautifierMagnetic = 0x01010100,
3504
3592
  /**
3505
- * A fresher voice.Agora recommends using this enumerator to process a female-sounding voice; otherwise, you may experience vocal distortion.
3593
+ * A fresher voice. Agora recommends using this enumerator to process a female-sounding voice; otherwise, you may experience vocal distortion.
3506
3594
  */
3507
3595
  ChatBeautifierFresh = 0x01010200,
3508
3596
  /**
3509
- * A more vital voice.Agora recommends using this enumerator to process a female-sounding voice; otherwise, you may experience vocal distortion.
3597
+ * A more vital voice. Agora recommends using this enumerator to process a female-sounding voice; otherwise, you may experience vocal distortion.
3510
3598
  */
3511
3599
  ChatBeautifierVitality = 0x01010300,
3512
3600
  /**
3513
- * Singing beautifier effect.If you call setVoiceBeautifierPreset(SingingBeautifier), you can beautify a male-sounding voice and add a reverberation effect that sounds like singing in a small room. Agora recommends using this enumerator to process a male-sounding voice; otherwise, you might experience vocal distortion.If you call setVoiceBeautifierParameters(SingingBeautifier, param1, param2), you can beautify a male or female-sounding voice and add a reverberation effect.
3601
+ * Singing beautifier effect.
3602
+ * If you call setVoiceBeautifierPreset (SingingBeautifier), you can beautify a male-sounding voice and add a reverberation effect that sounds like singing in a small room. Agora recommends using this enumerator to process a male-sounding voice; otherwise, you might experience vocal distortion.
3603
+ * If you call setVoiceBeautifierParameters (SingingBeautifier, param1, param2), you can beautify a male or female-sounding voice and add a reverberation effect.
3514
3604
  */
3515
3605
  SingingBeautifier = 0x01020100,
3516
3606
  /**
@@ -3546,7 +3636,9 @@ export enum VoiceBeautifierPreset {
3546
3636
  */
3547
3637
  TimbreTransformationRinging = 0x01030800,
3548
3638
  /**
3549
- * A ultra-high quality voice, which makes the audio clearer and restores more details.To achieve better audio effect quality, Agora recommends that you set the profile of to AudioProfileMusicHighQuality(4) or AudioProfileMusicHighQualityStereo(5) and scenario to AudioScenarioGameStreaming(3) before calling setVoiceBeautifierPreset.If you have an audio capturing device that can already restore audio details to a high degree, Agora recommends that you do not enable ultra-high quality; otherwise, the SDK may over-restore audio details, and you may not hear the anticipated voice effect.
3639
+ * A ultra-high quality voice, which makes the audio clearer and restores more details.
3640
+ * To achieve better audio effect quality, Agora recommends that you set the profile of to AudioProfileMusicHighQuality (4) or AudioProfileMusicHighQualityStereo (5) and scenario to AudioScenarioGameStreaming (3) before calling setVoiceBeautifierPreset.
3641
+ * If you have an audio capturing device that can already restore audio details to a high degree, Agora recommends that you do not enable ultra-high quality; otherwise, the SDK may over-restore audio details, and you may not hear the anticipated voice effect.
3550
3642
  */
3551
3643
  UltraHighQualityVoice = 0x01040100,
3552
3644
  }
@@ -3590,31 +3682,31 @@ export enum AudioEffectPreset {
3590
3682
  */
3591
3683
  RoomAcousticsEthereal = 0x02010700,
3592
3684
  /**
3593
- * A 3D voice effect that makes the voice appear to be moving around the user. The default cycle period is 10 seconds. After setting this effect, you can call setAudioEffectParameters to modify the movement period.If the 3D voice effect is enabled, users need to use stereo audio playback devices to hear the anticipated voice effect.
3685
+ * A 3D voice effect that makes the voice appear to be moving around the user. The default cycle period is 10 seconds. After setting this effect, you can call setAudioEffectParameters to modify the movement period. If the 3D voice effect is enabled, users need to use stereo audio playback devices to hear the anticipated voice effect.
3594
3686
  */
3595
3687
  RoomAcoustics3dVoice = 0x02010800,
3596
3688
  /**
3597
- * Virtual surround sound, that is, the SDK generates a simulated surround sound field on the basis of stereo channels, thereby creating a surround sound effect.If the virtual surround sound is enabled, users need to use stereo audio playback devices to hear the anticipated audio effect.
3689
+ * Virtual surround sound, that is, the SDK generates a simulated surround sound field on the basis of stereo channels, thereby creating a surround sound effect. If the virtual surround sound is enabled, users need to use stereo audio playback devices to hear the anticipated audio effect.
3598
3690
  */
3599
3691
  RoomAcousticsVirtualSurroundSound = 0x02010900,
3600
3692
  /**
3601
- * A middle-aged man's voice.Agora recommends using this preset to process a male-sounding voice; otherwise, you may not hear the anticipated voice effect.
3693
+ * A middle-aged man's voice. Agora recommends using this preset to process a male-sounding voice; otherwise, you may not hear the anticipated voice effect.
3602
3694
  */
3603
3695
  VoiceChangerEffectUncle = 0x02020100,
3604
3696
  /**
3605
- * An older man's voice.Agora recommends using this preset to process a male-sounding voice; otherwise, you may not hear the anticipated voice effect.
3697
+ * An older man's voice. Agora recommends using this preset to process a male-sounding voice; otherwise, you may not hear the anticipated voice effect.
3606
3698
  */
3607
3699
  VoiceChangerEffectOldman = 0x02020200,
3608
3700
  /**
3609
- * A boy's voice.Agora recommends using this preset to process a male-sounding voice; otherwise, you may not hear the anticipated voice effect.
3701
+ * A boy's voice. Agora recommends using this preset to process a male-sounding voice; otherwise, you may not hear the anticipated voice effect.
3610
3702
  */
3611
3703
  VoiceChangerEffectBoy = 0x02020300,
3612
3704
  /**
3613
- * A young woman's voice.Agora recommends using this preset to process a female-sounding voice; otherwise, you may not hear the anticipated voice effect.
3705
+ * A young woman's voice. Agora recommends using this preset to process a female-sounding voice; otherwise, you may not hear the anticipated voice effect.
3614
3706
  */
3615
3707
  VoiceChangerEffectSister = 0x02020400,
3616
3708
  /**
3617
- * A girl's voice.Agora recommends using this preset to process a female-sounding voice; otherwise, you may not hear the anticipated voice effect.
3709
+ * A girl's voice. Agora recommends using this preset to process a female-sounding voice; otherwise, you may not hear the anticipated voice effect.
3618
3710
  */
3619
3711
  VoiceChangerEffectGirl = 0x02020500,
3620
3712
  /**
@@ -3732,7 +3824,9 @@ export enum HeadphoneEqualizerPreset {
3732
3824
  */
3733
3825
  export class ScreenCaptureParameters {
3734
3826
  /**
3735
- * The video encoding resolution of the shared screen stream. See VideoDimensions. The default value is 1920 × 1080, that is, 2,073,600 pixels. Agora uses the value of this parameter to calculate the charges.If the screen dimensions are different from the value of this parameter, Agora applies the following strategies for encoding. Suppose If the value of the screen dimensions is lower than that of dimensions, for example, 1000 × 1000 pixels, the SDK uses the screen dimensions, that is, 1000 × 1000 pixels, for encoding.If the value of the screen dimensions is higher than that of dimensions, for example, 2000 × 1500, the SDK uses the maximum value under
3827
+ * The video encoding resolution of the shared screen stream. See VideoDimensions. The default value is 1920 × 1080, that is, 2,073,600 pixels. Agora uses the value of this parameter to calculate the charges. If the screen dimensions are different from the value of this parameter, Agora applies the following strategies for encoding. Suppose
3828
+ * If the value of the screen dimensions is lower than that of dimensions, for example, 1000 × 1000 pixels, the SDK uses the screen dimensions, that is, 1000 × 1000 pixels, for encoding.
3829
+ * If the value of the screen dimensions is higher than that of dimensions, for example, 2000 × 1500, the SDK uses the maximum value under
3736
3830
  */
3737
3831
  dimensions?: VideoDimensions;
3738
3832
  /**
@@ -3744,11 +3838,11 @@ export class ScreenCaptureParameters {
3744
3838
  */
3745
3839
  bitrate?: number;
3746
3840
  /**
3747
- * Whether to capture the mouse in screen sharing:true: (Default) Capture the mouse.false: Do not capture the mouse.
3841
+ * Whether to capture the mouse in screen sharing: true : (Default) Capture the mouse. false : Do not capture the mouse.
3748
3842
  */
3749
3843
  captureMouseCursor?: boolean;
3750
3844
  /**
3751
- * Whether to bring the window to the front when calling the startScreenCaptureByWindowId method to share it:true: Bring the window to the front.false: (Default) Do not bring the window to the front.
3845
+ * Whether to bring the window to the front when calling the startScreenCaptureByWindowId method to share it: true : Bring the window to the front. false : (Default) Do not bring the window to the front.
3752
3846
  */
3753
3847
  windowFocus?: boolean;
3754
3848
  /**
@@ -3756,19 +3850,20 @@ export class ScreenCaptureParameters {
3756
3850
  */
3757
3851
  excludeWindowList?: any[];
3758
3852
  /**
3759
- * The number of windows to be excluded.On the Windows platform, the maximum value of this parameter is 24; if this value is exceeded, excluding the window fails.
3853
+ * The number of windows to be excluded. On the Windows platform, the maximum value of this parameter is 24; if this value is exceeded, excluding the window fails.
3760
3854
  */
3761
3855
  excludeWindowCount?: number;
3762
3856
  /**
3763
- * The width (px) of the border. The default value is 5, and the value range is (0, 50].This parameter only takes effect when highLighted is set to true.
3857
+ * The width (px) of the border. The default value is 5, and the value range is (0, 50]. This parameter only takes effect when highLighted is set to true.
3764
3858
  */
3765
3859
  highLightWidth?: number;
3766
3860
  /**
3767
- * On Windows platforms, the color of the border in ARGB format. The default value is 0xFF8CBF26.On macOS, COLOR_CLASS refers to NSColor.
3861
+ * On Windows platforms, the color of the border in ARGB format. The default value is 0xFF8CBF26.
3862
+ * On macOS, COLOR_CLASS refers to NSColor.
3768
3863
  */
3769
3864
  highLightColor?: number;
3770
3865
  /**
3771
- * Whether to place a border around the shared window or screen:true: Place a border.false: (Default) Do not place a border.When you share a part of a window or screen, the SDK places a border around the entire window or screen if you set this parameter to true.
3866
+ * Whether to place a border around the shared window or screen: true : Place a border. false : (Default) Do not place a border. When you share a part of a window or screen, the SDK places a border around the entire window or screen if you set this parameter to true.
3772
3867
  */
3773
3868
  enableHighLight?: boolean;
3774
3869
  }
@@ -3836,15 +3931,19 @@ export enum AudioEncodedFrameObserverPosition {
3836
3931
  */
3837
3932
  export class AudioRecordingConfiguration {
3838
3933
  /**
3839
- * The absolute path (including the filename extensions) of the recording file. For example: C:\music\audio.mp4.Ensure that the directory for the log files exists and is writable.
3934
+ * The absolute path (including the filename extensions) of the recording file. For example: C:\music\audio.mp4. Ensure that the directory for the log files exists and is writable.
3840
3935
  */
3841
3936
  filePath?: string;
3842
3937
  /**
3843
- * Whether to encode the audio data:true: Encode audio data in AAC.false: (Default) Do not encode audio data, but save the recorded audio data directly.
3938
+ * Whether to encode the audio data: true : Encode audio data in AAC. false : (Default) Do not encode audio data, but save the recorded audio data directly.
3844
3939
  */
3845
3940
  encode?: boolean;
3846
3941
  /**
3847
- * Recording sample rate (Hz).16000(Default) 320004410048000If you set this parameter to 44100 or 48000, Agora recommends recording WAV files, or AAC files with quality set as AudioRecordingQualityMedium or AudioRecordingQualityHigh for better recording quality.
3942
+ * Recording sample rate (Hz).
3943
+ * 16000
3944
+ * (Default) 32000
3945
+ * 44100
3946
+ * 48000 If you set this parameter to 44100 or 48000, Agora recommends recording WAV files, or AAC files with quality set as AudioRecordingQualityMedium or AudioRecordingQualityHigh for better recording quality.
3848
3947
  */
3849
3948
  sampleRate?: number;
3850
3949
  /**
@@ -3852,11 +3951,15 @@ export class AudioRecordingConfiguration {
3852
3951
  */
3853
3952
  fileRecordingType?: AudioFileRecordingType;
3854
3953
  /**
3855
- * Recording quality. See AudioRecordingQualityType.Note: This parameter applies to AAC files only.
3954
+ * Recording quality. See AudioRecordingQualityType. Note: This parameter applies to AAC files only.
3856
3955
  */
3857
3956
  quality?: AudioRecordingQualityType;
3858
3957
  /**
3859
- * The audio channel of recording: The parameter supports the following values:1: (Default) Mono.2: Stereo.The actual recorded audio channel is related to the audio channel that you capture.If the captured audio is mono and recordingChannel is 2, the recorded audio is the dual-channel data that is copied from mono data, not stereo.If the captured audio is dual channel and recordingChannel is 1, the recorded audio is the mono data that is mixed by dual-channel data.The integration scheme also affects the final recorded audio channel. If you need to record in stereo, contact .
3958
+ * The audio channel of recording: The parameter supports the following values:
3959
+ * 1: (Default) Mono.
3960
+ * 2: Stereo. The actual recorded audio channel is related to the audio channel that you capture.
3961
+ * If the captured audio is mono and recordingChannel is 2, the recorded audio is the dual-channel data that is copied from mono data, not stereo.
3962
+ * If the captured audio is dual channel and recordingChannel is 1, the recorded audio is the mono data that is mixed by dual-channel data. The integration scheme also affects the final recorded audio channel. If you need to record in stereo, contact.
3860
3963
  */
3861
3964
  recordingChannel?: number;
3862
3965
  }
@@ -3882,7 +3985,7 @@ export interface IAudioEncodedFrameObserver {
3882
3985
  /**
3883
3986
  * Gets the encoded audio data of the local user.
3884
3987
  *
3885
- * After calling registerAudioEncodedFrameObserver and setting the encoded audio as AudioEncodedFrameObserverPositionRecord , you can get the encoded audio data of the local user from this callback.
3988
+ * After calling registerAudioEncodedFrameObserver and setting the encoded audio as AudioEncodedFrameObserverPositionRecord, you can get the encoded audio data of the local user from this callback.
3886
3989
  *
3887
3990
  * @param channels The number of channels.
3888
3991
  * 1: Mono.
@@ -3900,7 +4003,7 @@ export interface IAudioEncodedFrameObserver {
3900
4003
  /**
3901
4004
  * Gets the encoded audio data of all remote users.
3902
4005
  *
3903
- * After calling registerAudioEncodedFrameObserver and setting the encoded audio as AudioEncodedFrameObserverPositionPlayback , you can get encoded audio data of all remote users through this callback.
4006
+ * After calling registerAudioEncodedFrameObserver and setting the encoded audio as AudioEncodedFrameObserverPositionPlayback, you can get encoded audio data of all remote users through this callback.
3904
4007
  *
3905
4008
  * @param samplesPerSec Recording sample rate (Hz).
3906
4009
  * @param channels The number of channels.
@@ -3920,7 +4023,7 @@ export interface IAudioEncodedFrameObserver {
3920
4023
  /**
3921
4024
  * Gets the mixed and encoded audio data of the local and all remote users.
3922
4025
  *
3923
- * After calling registerAudioEncodedFrameObserver and setting the audio profile as AudioEncodedFrameObserverPositionMixed , you can get the mixed and encoded audio data of the local and all remote users through this callback.
4026
+ * After calling registerAudioEncodedFrameObserver and setting the audio profile as AudioEncodedFrameObserverPositionMixed, you can get the mixed and encoded audio data of the local and all remote users through this callback.
3924
4027
  *
3925
4028
  * @param samplesPerSec Recording sample rate (Hz).
3926
4029
  * @param channels The number of channels.
@@ -4019,7 +4122,7 @@ export enum ChannelMediaRelayError {
4019
4122
  */
4020
4123
  RelayErrorServerErrorResponse = 1,
4021
4124
  /**
4022
- * 2: No server response.You can call leaveChannel to leave the channel.This error can also occur if your project has not enabled co-host token authentication. You can to enable the service for cohosting across channels before starting a channel media relay.
4125
+ * 2: No server response. You can call leaveChannel to leave the channel. This error can also occur if your project has not enabled co-host token authentication. You can to enable the service for cohosting across channels before starting a channel media relay.
4023
4126
  */
4024
4127
  RelayErrorServerNoResponse = 2,
4025
4128
  /**
@@ -4175,15 +4278,19 @@ export class ChannelMediaInfo {
4175
4278
  */
4176
4279
  export class ChannelMediaRelayConfiguration {
4177
4280
  /**
4178
- * 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.If you have not enabled the App Certificate, set this parameter as the default value NULL, which means the SDK applies the App ID.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.
4281
+ * 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.
4282
+ * If you have not enabled the App Certificate, set this parameter as the default value NULL, which means the SDK applies the App ID.
4283
+ * 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.
4179
4284
  */
4180
4285
  srcInfo?: ChannelMediaInfo;
4181
4286
  /**
4182
- * 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.If you have not enabled the App Certificate, set this parameter as the default value NULL, which means the SDK applies the App ID.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.
4287
+ * 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.
4288
+ * If you have not enabled the App Certificate, set this parameter as the default value NULL, which means the SDK applies the App ID.
4289
+ * 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.
4183
4290
  */
4184
4291
  destInfos?: ChannelMediaInfo[];
4185
4292
  /**
4186
- * The number of target channels. The default value is 0, and the value range is from 0 to 4. Ensure that the value of this parameter corresponds to the number of ChannelMediaInfo structs you define in destInfo.
4293
+ * The number of target channels. The default value is 0, and the value range is from 0 to 6. Ensure that the value of this parameter corresponds to the number of ChannelMediaInfo structs you define in destInfo.
4187
4294
  */
4188
4295
  destCount?: number;
4189
4296
  }
@@ -4299,7 +4406,7 @@ export class EncryptionConfig {
4299
4406
  */
4300
4407
  encryptionMode?: EncryptionMode;
4301
4408
  /**
4302
- * 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.
4409
+ * 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.
4303
4410
  */
4304
4411
  encryptionKey?: string;
4305
4412
  /**
@@ -4381,7 +4488,15 @@ export enum StreamSubscribeState {
4381
4488
  */
4382
4489
  SubStateIdle = 0,
4383
4490
  /**
4384
- * 1: Fails to subscribe to the remote stream. Possible reasons:The remote user:Calls muteLocalAudioStream(true) or muteLocalVideoStream(true) to stop sending local media stream.Calls disableAudio or disableVideo to disable the local audio or video module.Calls enableLocalAudio(false) or enableLocalVideo(false) to disable local audio or video capture.The role of the remote user is audience.The local user calls the following methods to stop receiving remote streams:Call muteRemoteAudioStream(true) or muteAllRemoteAudioStreams(true) to stop receiving the remote audio stream.Call muteRemoteVideoStream(true) or muteAllRemoteVideoStreams(true) to stop receiving the remote video stream.
4491
+ * 1: Fails to subscribe to the remote stream. Possible reasons:
4492
+ * The remote user:
4493
+ * Calls muteLocalAudioStream (true) or muteLocalVideoStream (true) to stop sending local media stream.
4494
+ * Calls disableAudio or disableVideo to disable the local audio or video module.
4495
+ * Calls enableLocalAudio (false) or enableLocalVideo (false) to disable local audio or video capture.
4496
+ * The role of the remote user is audience.
4497
+ * The local user calls the following methods to stop receiving remote streams:
4498
+ * Call muteRemoteAudioStream (true) or muteAllRemoteAudioStreams (true) to stop receiving the remote audio stream.
4499
+ * Call muteRemoteVideoStream (true) or muteAllRemoteVideoStreams (true) to stop receiving the remote video stream.
4385
4500
  */
4386
4501
  SubStateNoSubscribed = 1,
4387
4502
  /**
@@ -4403,7 +4518,11 @@ export enum StreamPublishState {
4403
4518
  */
4404
4519
  PubStateIdle = 0,
4405
4520
  /**
4406
- * 1: Fails to publish the local stream. Possible reasons:The local user calls muteLocalAudioStream(true) or muteLocalVideoStream(true) to stop sending local media streams.The local user calls disableAudio or disableVideo to disable the local audio or video module.The local user calls enableLocalAudio(false) or enableLocalVideo(false) to disable the local audio or video capture.The role of the local user is audience.
4521
+ * 1: Fails to publish the local stream. Possible reasons:
4522
+ * The local user calls muteLocalAudioStream (true) or muteLocalVideoStream (true) to stop sending local media streams.
4523
+ * The local user calls disableAudio or disableVideo to disable the local audio or video module.
4524
+ * The local user calls enableLocalAudio (false) or enableLocalVideo (false) to disable the local audio or video capture.
4525
+ * The role of the local user is audience.
4407
4526
  */
4408
4527
  PubStateNoPublished = 1,
4409
4528
  /**
@@ -4425,15 +4544,15 @@ export class EchoTestConfiguration {
4425
4544
  */
4426
4545
  view?: any;
4427
4546
  /**
4428
- * Whether to enable the audio device for the loop test:true: (Default) Enable the audio device. To test the audio device, set this parameter as true.false: Disable the audio device.
4547
+ * Whether to enable the audio device for the loop test: true : (Default) Enable the audio device. To test the audio device, set this parameter as true. false : Disable the audio device.
4429
4548
  */
4430
4549
  enableAudio?: boolean;
4431
4550
  /**
4432
- * 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.
4551
+ * 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.
4433
4552
  */
4434
4553
  enableVideo?: boolean;
4435
4554
  /**
4436
- * The token used to secure the audio and video call loop test. If you do not enable App Certificate in Agora Console, you do not need to pass a value in this parameter; if you have enabled App Certificate in Agora Console, you must pass a token in this parameter; the uid used when you generate the token must be 0xFFFFFFFF, and the channel name used must be the channel name that identifies each audio and video call loop tested. For server-side token generation, see .
4555
+ * The token used to secure the audio and video call loop test. If you do not enable App Certificate in Agora Console, you do not need to pass a value in this parameter; if you have enabled App Certificate in Agora Console, you must pass a token in this parameter; the uid used when you generate the token must be 0xFFFFFFFF, and the channel name used must be the channel name that identifies each audio and video call loop tested. For server-side token generation, see.
4437
4556
  */
4438
4557
  token?: string;
4439
4558
  /**
@@ -4533,7 +4652,7 @@ export class ScreenVideoParameters {
4533
4652
  /**
4534
4653
  * The audio configuration for the shared screen stream.
4535
4654
  *
4536
- * Only available where captureAudio is true .
4655
+ * Only available where captureAudio is true.
4537
4656
  */
4538
4657
  export class ScreenAudioParameters {
4539
4658
  /**
@@ -4573,7 +4692,7 @@ export class ScreenCaptureParameters2 {
4573
4692
  }
4574
4693
 
4575
4694
  /**
4576
- * The rendering state of the media frame.`
4695
+ * The rendering state of the media frame.
4577
4696
  */
4578
4697
  export enum MediaTraceEvent {
4579
4698
  /**
@@ -4603,19 +4722,31 @@ export class VideoRenderingTracingInfo {
4603
4722
  */
4604
4723
  join2JoinSuccess?: number;
4605
4724
  /**
4606
- * If the local user calls startMediaRenderingTracing before successfully joining the channel, this value is the time interval from the local user successfully joining the channel to the remote user joining the channel. The unit is milliseconds.If the local user calls startMediaRenderingTracing after successfully joining the channel, the value is the time interval from calling startMediaRenderingTracing to when the remote user joins the channel. The unit is milliseconds.If the local user calls startMediaRenderingTracing after the remote user joins the channel, the value is 0 and meaningless.In order to reduce the time of rendering the first frame for remote users, Agora recommends that the local user joins the channel when the remote user is in the channel to reduce this value.
4725
+ * If the local user calls startMediaRenderingTracing before successfully joining the channel, this value is the time interval from the local user successfully joining the channel to the remote user joining the channel. The unit is milliseconds.
4726
+ * If the local user calls startMediaRenderingTracing after successfully joining the channel, the value is the time interval from calling startMediaRenderingTracing to when the remote user joins the channel. The unit is milliseconds.
4727
+ * If the local user calls startMediaRenderingTracing after the remote user joins the channel, the value is 0 and meaningless.
4728
+ * In order to reduce the time of rendering the first frame for remote users, Agora recommends that the local user joins the channel when the remote user is in the channel to reduce this value.
4607
4729
  */
4608
4730
  joinSuccess2RemoteJoined?: number;
4609
4731
  /**
4610
- * If the local user calls startMediaRenderingTracing before the remote user joins the channel, this value is the time interval from when the remote user joins the channel to when the local user sets the remote view. The unit is milliseconds.If the local user calls startMediaRenderingTracing after the remote user joins the channel, this value is the time interval from calling startMediaRenderingTracing to setting the remote view. The unit is milliseconds.If the local user calls startMediaRenderingTracing after setting the remote view, the value is 0 and has no effect.In order to reduce the time of rendering the first frame for remote users, Agora recommends that the local user sets the remote view before the remote user joins the channel, or sets the remote view immediately after the remote user joins the channel to reduce this value.
4732
+ * If the local user calls startMediaRenderingTracing before the remote user joins the channel, this value is the time interval from when the remote user joins the channel to when the local user sets the remote view. The unit is milliseconds.
4733
+ * If the local user calls startMediaRenderingTracing after the remote user joins the channel, this value is the time interval from calling startMediaRenderingTracing to setting the remote view. The unit is milliseconds.
4734
+ * If the local user calls startMediaRenderingTracing after setting the remote view, the value is 0 and has no effect.
4735
+ * In order to reduce the time of rendering the first frame for remote users, Agora recommends that the local user sets the remote view before the remote user joins the channel, or sets the remote view immediately after the remote user joins the channel to reduce this value.
4611
4736
  */
4612
4737
  remoteJoined2SetView?: number;
4613
4738
  /**
4614
- * If the local user calls startMediaRenderingTracing before the remote user joins the channel, this value is the time interval from the remote user joining the channel to subscribing to the remote video stream. The unit is milliseconds.If the local user calls startMediaRenderingTracing after the remote user joins the channel, this value is the time interval from calling startMediaRenderingTracing to subscribing to the remote video stream. The unit is milliseconds.If the local user calls startMediaRenderingTracing after subscribing to the remote video stream, the value is 0 and has no effect.In order to reduce the time of rendering the first frame for remote users, Agora recommends that after the remote user joins the channel, the local user immediately subscribes to the remote video stream to reduce this value.
4739
+ * If the local user calls startMediaRenderingTracing before the remote user joins the channel, this value is the time interval from the remote user joining the channel to subscribing to the remote video stream. The unit is milliseconds.
4740
+ * If the local user calls startMediaRenderingTracing after the remote user joins the channel, this value is the time interval from calling startMediaRenderingTracing to subscribing to the remote video stream. The unit is milliseconds.
4741
+ * If the local user calls startMediaRenderingTracing after subscribing to the remote video stream, the value is 0 and has no effect.
4742
+ * In order to reduce the time of rendering the first frame for remote users, Agora recommends that after the remote user joins the channel, the local user immediately subscribes to the remote video stream to reduce this value.
4615
4743
  */
4616
4744
  remoteJoined2UnmuteVideo?: number;
4617
4745
  /**
4618
- * If the local user calls startMediaRenderingTracing before the remote user joins the channel, this value is the time interval from when the remote user joins the channel to when the local user receives the remote video stream. The unit is milliseconds.If the local user calls startMediaRenderingTracing after the remote user joins the channel, this value is the time interval from calling startMediaRenderingTracing to receiving the remote video stream. The unit is milliseconds.If the local user calls startMediaRenderingTracing after receiving the remote video stream, the value is 0 and has no effect.In order to reduce the time of rendering the first frame for remote users, Agora recommends that the remote user publishes video streams immediately after joining the channel, and the local user immediately subscribes to remote video streams to reduce this value.
4746
+ * If the local user calls startMediaRenderingTracing before the remote user joins the channel, this value is the time interval from when the remote user joins the channel to when the local user receives the remote video stream. The unit is milliseconds.
4747
+ * If the local user calls startMediaRenderingTracing after the remote user joins the channel, this value is the time interval from calling startMediaRenderingTracing to receiving the remote video stream. The unit is milliseconds.
4748
+ * If the local user calls startMediaRenderingTracing after receiving the remote video stream, the value is 0 and has no effect.
4749
+ * In order to reduce the time of rendering the first frame for remote users, Agora recommends that the remote user publishes video streams immediately after joining the channel, and the local user immediately subscribes to remote video streams to reduce this value.
4619
4750
  */
4620
4751
  remoteJoined2PacketReceived?: number;
4621
4752
  }
@@ -4733,11 +4864,19 @@ export class LocalAccessPointConfiguration {
4733
4864
  */
4734
4865
  export class SpatialAudioParams {
4735
4866
  /**
4736
- * The azimuth angle of the remote user or media player relative to the local user. The value range is [0,360], and the unit is degrees, The values are as follows:0: (Default) 0 degrees, which means directly in front on the horizontal plane.90: 90 degrees, which means directly to the left on the horizontal plane.180: 180 degrees, which means directly behind on the horizontal plane.270: 270 degrees, which means directly to the right on the horizontal plane.360: 360 degrees, which means directly in front on the horizontal plane.
4867
+ * The azimuth angle of the remote user or media player relative to the local user. The value range is [0,360], and the unit is degrees, The values are as follows:
4868
+ * 0: (Default) 0 degrees, which means directly in front on the horizontal plane.
4869
+ * 90: 90 degrees, which means directly to the left on the horizontal plane.
4870
+ * 180: 180 degrees, which means directly behind on the horizontal plane.
4871
+ * 270: 270 degrees, which means directly to the right on the horizontal plane.
4872
+ * 360: 360 degrees, which means directly in front on the horizontal plane.
4737
4873
  */
4738
4874
  speaker_azimuth?: number;
4739
4875
  /**
4740
- * The elevation angle of the remote user or media player relative to the local user. The value range is [-90,90], and the unit is degrees, The values are as follows:0: (Default) 0 degrees, which means that the horizontal plane is not rotated.-90: -90 degrees, which means that the horizontal plane is rotated 90 degrees downwards.90: 90 degrees, which means that the horizontal plane is rotated 90 degrees upwards.
4876
+ * The elevation angle of the remote user or media player relative to the local user. The value range is [-90,90], and the unit is degrees, The values are as follows:
4877
+ * 0: (Default) 0 degrees, which means that the horizontal plane is not rotated.
4878
+ * -90: -90 degrees, which means that the horizontal plane is rotated 90 degrees downwards.
4879
+ * 90: 90 degrees, which means that the horizontal plane is rotated 90 degrees upwards.
4741
4880
  */
4742
4881
  speaker_elevation?: number;
4743
4882
  /**
@@ -4745,23 +4884,31 @@ export class SpatialAudioParams {
4745
4884
  */
4746
4885
  speaker_distance?: number;
4747
4886
  /**
4748
- * The orientation of the remote user or media player relative to the local user. The value range is [0,180], and the unit is degrees, The values are as follows:0: (Default) 0 degrees, which means that the sound source and listener face the same direction.180: 180 degrees, which means that the sound source and listener face each other.
4887
+ * The orientation of the remote user or media player relative to the local user. The value range is [0,180], and the unit is degrees, The values are as follows:
4888
+ * 0: (Default) 0 degrees, which means that the sound source and listener face the same direction.
4889
+ * 180: 180 degrees, which means that the sound source and listener face each other.
4749
4890
  */
4750
4891
  speaker_orientation?: number;
4751
4892
  /**
4752
- * Whether to enable audio blurring:true: Enable audio blurring.false: (Default) Disable audio blurring.
4893
+ * Whether to enable audio blurring: true : Enable audio blurring. false : (Default) Disable audio blurring.
4753
4894
  */
4754
4895
  enable_blur?: boolean;
4755
4896
  /**
4756
- * Whether to enable air absorption, that is, to simulate the sound attenuation effect of sound transmitting in the air; under a certain transmission distance, the attenuation speed of high-frequency sound is fast, and the attenuation speed of low-frequency sound is slow.true: (Default) Enable air absorption. Make sure that the value of speaker_attenuation is not 0; otherwise, this setting does not take effect.false: Disable air absorption.
4897
+ * Whether to enable air absorption, that is, to simulate the sound attenuation effect of sound transmitting in the air; under a certain transmission distance, the attenuation speed of high-frequency sound is fast, and the attenuation speed of low-frequency sound is slow. true : (Default) Enable air absorption. Make sure that the value of speaker_attenuation is not 0; otherwise, this setting does not take effect. false : Disable air absorption.
4757
4898
  */
4758
4899
  enable_air_absorb?: boolean;
4759
4900
  /**
4760
- * The sound attenuation coefficient of the remote user or media player. The value range is [0,1]. The values are as follows:0: Broadcast mode, where the volume and timbre are not attenuated with distance, and the volume and timbre heard by local users do not change regardless of distance.(0,0.5): Weak attenuation mode, where the volume and timbre only have a weak attenuation during the propagation, and the sound can travel farther than that in a real environment. enable_air_absorb needs to be enabled at the same time. 0.5: (Default) Simulates the attenuation of the volume in the real environment; the effect is equivalent to not setting the speaker_attenuation parameter.(0.5,1]: Strong attenuation mode, where volume and timbre attenuate rapidly during the propagation. enable_air_absorb needs to be enabled at the same time.
4901
+ * The sound attenuation coefficient of the remote user or media player. The value range is [0,1]. The values are as follows:
4902
+ * 0: Broadcast mode, where the volume and timbre are not attenuated with distance, and the volume and timbre heard by local users do not change regardless of distance.
4903
+ * (0,0.5): Weak attenuation mode, where the volume and timbre only have a weak attenuation during the propagation, and the sound can travel farther than that in a real environment. enable_air_absorb needs to be enabled at the same time.
4904
+ * 0.5: (Default) Simulates the attenuation of the volume in the real environment; the effect is equivalent to not setting the speaker_attenuation parameter.
4905
+ * (0.5,1]: Strong attenuation mode, where volume and timbre attenuate rapidly during the propagation. enable_air_absorb needs to be enabled at the same time.
4761
4906
  */
4762
4907
  speaker_attenuation?: number;
4763
4908
  /**
4764
- * Whether to enable the Doppler effect: When there is a relative displacement between the sound source and the receiver of the sound source, the tone heard by the receiver changes.true: Enable the Doppler effect.false: (Default) Disable the Doppler effect.This parameter is suitable for scenarios where the sound source is moving at high speed (for example, racing games). It is not recommended for common audio and video interactive scenarios (for example, voice chat, cohosting, or online KTV).When this parameter is enabled, Agora recommends that you set a regular period (such as 30 ms), and then call the updatePlayerPositionInfo, updateSelfPosition, and updateRemotePosition methods to continuously update the relative distance between the sound source and the receiver. The following factors can cause the Doppler effect to be unpredictable or the sound to be jittery: the period of updating the distance is too long, the updating period is irregular, or the distance information is lost due to network packet loss or delay.
4909
+ * Whether to enable the Doppler effect: When there is a relative displacement between the sound source and the receiver of the sound source, the tone heard by the receiver changes. true : Enable the Doppler effect. false : (Default) Disable the Doppler effect.
4910
+ * This parameter is suitable for scenarios where the sound source is moving at high speed (for example, racing games). It is not recommended for common audio and video interactive scenarios (for example, voice chat, cohosting, or online KTV).
4911
+ * When this parameter is enabled, Agora recommends that you set a regular period (such as 30 ms), and then call the updatePlayerPositionInfo, updateSelfPosition, and updateRemotePosition methods to continuously update the relative distance between the sound source and the receiver. The following factors can cause the Doppler effect to be unpredictable or the sound to be jittery: the period of updating the distance is too long, the updating period is irregular, or the distance information is lost due to network packet loss or delay.
4765
4912
  */
4766
4913
  enable_doppler?: boolean;
4767
4914
  }