agora-electron-sdk 4.2.2-dev.4 → 4.2.2-dev.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +22 -0
- package/js/Private/AgoraBase.js +139 -53
- package/js/Private/AgoraMediaBase.js +13 -7
- package/js/Private/IAgoraRtcEngine.js +11 -11
- package/js/Private/IAgoraRtcEngineEx.js +1 -1
- package/js/Private/IAgoraSpatialAudio.js +2 -2
- package/js/Private/impl/IAgoraMediaEngineImpl.js +12 -6
- package/js/Private/impl/IAgoraRtcEngineImpl.js +7 -7
- package/js/Private/internal/IrisApiEngine.js +13 -0
- package/js/Private/internal/MusicContentCenterInternal.js +3 -0
- package/js/Private/internal/RtcEngineExInternal.js +24 -7
- package/js/Private/ti/IAgoraRtcEngine-ti.js +2 -2
- package/js/Renderer/WebGLRenderer/index.js +19 -19
- package/js/Renderer/YUVCanvasRenderer/index.js +1 -1
- package/package.json +3 -3
- package/scripts/zipBuild.js +3 -1
- package/ts/Private/AgoraBase.ts +296 -133
- package/ts/Private/AgoraMediaBase.ts +68 -34
- package/ts/Private/AgoraMediaPlayerTypes.ts +8 -5
- package/ts/Private/IAgoraLog.ts +7 -3
- package/ts/Private/IAgoraMediaEngine.ts +76 -35
- package/ts/Private/IAgoraMediaPlayer.ts +126 -64
- package/ts/Private/IAgoraMediaPlayerSource.ts +3 -1
- package/ts/Private/IAgoraRtcEngine.ts +1325 -530
- package/ts/Private/IAgoraRtcEngineEx.ts +227 -94
- package/ts/Private/IAgoraSpatialAudio.ts +71 -36
- package/ts/Private/IAudioDeviceManager.ts +61 -31
- package/ts/Private/impl/IAgoraMediaEngineImpl.ts +12 -6
- package/ts/Private/impl/IAgoraRtcEngineImpl.ts +9 -11
- package/ts/Private/internal/IrisApiEngine.ts +14 -0
- package/ts/Private/internal/MusicContentCenterInternal.ts +4 -0
- package/ts/Private/internal/RtcEngineExInternal.ts +36 -14
- package/ts/Private/ti/IAgoraRtcEngine-ti.ts +2 -2
- package/ts/Renderer/WebGLRenderer/index.ts +26 -21
- package/ts/Renderer/YUVCanvasRenderer/index.ts +1 -1
- package/types/Private/AgoraBase.d.ts +298 -135
- package/types/Private/AgoraBase.d.ts.map +1 -1
- package/types/Private/AgoraMediaBase.d.ts +69 -35
- package/types/Private/AgoraMediaBase.d.ts.map +1 -1
- package/types/Private/AgoraMediaPlayerTypes.d.ts +8 -5
- package/types/Private/AgoraMediaPlayerTypes.d.ts.map +1 -1
- package/types/Private/IAgoraLog.d.ts +7 -3
- package/types/Private/IAgoraLog.d.ts.map +1 -1
- package/types/Private/IAgoraMediaEngine.d.ts +76 -35
- package/types/Private/IAgoraMediaEngine.d.ts.map +1 -1
- package/types/Private/IAgoraMediaPlayer.d.ts +126 -64
- package/types/Private/IAgoraMediaPlayer.d.ts.map +1 -1
- package/types/Private/IAgoraMediaPlayerSource.d.ts +3 -1
- package/types/Private/IAgoraMediaPlayerSource.d.ts.map +1 -1
- package/types/Private/IAgoraRtcEngine.d.ts +1326 -530
- package/types/Private/IAgoraRtcEngine.d.ts.map +1 -1
- package/types/Private/IAgoraRtcEngineEx.d.ts +227 -94
- package/types/Private/IAgoraRtcEngineEx.d.ts.map +1 -1
- package/types/Private/IAgoraSpatialAudio.d.ts +71 -36
- package/types/Private/IAgoraSpatialAudio.d.ts.map +1 -1
- package/types/Private/IAudioDeviceManager.d.ts +61 -31
- package/types/Private/IAudioDeviceManager.d.ts.map +1 -1
- package/types/Private/impl/IAgoraMediaEngineImpl.d.ts +2 -2
- package/types/Private/impl/IAgoraMediaEngineImpl.d.ts.map +1 -1
- package/types/Private/impl/IAgoraRtcEngineImpl.d.ts +5 -5
- package/types/Private/impl/IAgoraRtcEngineImpl.d.ts.map +1 -1
- package/types/Private/internal/IrisApiEngine.d.ts.map +1 -1
- package/types/Private/internal/MusicContentCenterInternal.d.ts +1 -0
- package/types/Private/internal/MusicContentCenterInternal.d.ts.map +1 -1
- package/types/Private/internal/RtcEngineExInternal.d.ts.map +1 -1
- package/types/Renderer/WebGLRenderer/index.d.ts +1 -1
- package/types/Renderer/WebGLRenderer/index.d.ts.map +1 -1
package/ts/Private/AgoraBase.ts
CHANGED
|
@@ -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:
|
|
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:
|
|
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:
|
|
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:
|
|
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:
|
|
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:
|
|
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
|
-
*
|
|
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.
|
|
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.
|
|
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
|
-
*
|
|
1284
|
+
* The level of the codec capability.
|
|
1266
1285
|
*/
|
|
1267
1286
|
export class CodecCapLevels {
|
|
1268
1287
|
/**
|
|
1269
|
-
*
|
|
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
|
-
*
|
|
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
|
-
*
|
|
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
|
|
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 (%).
|
|
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.
|
|
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.
|
|
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:
|
|
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:
|
|
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
|
/**
|
|
@@ -2039,6 +2081,18 @@ export enum LocalVideoStreamError {
|
|
|
2039
2081
|
* @ignore
|
|
2040
2082
|
*/
|
|
2041
2083
|
LocalVideoStreamErrorScreenCaptureNoPermission = 22,
|
|
2084
|
+
/**
|
|
2085
|
+
* @ignore
|
|
2086
|
+
*/
|
|
2087
|
+
LocalVideoStreamErrorScreenCapturePaused = 23,
|
|
2088
|
+
/**
|
|
2089
|
+
* @ignore
|
|
2090
|
+
*/
|
|
2091
|
+
LocalVideoStreamErrorScreenCaptureResumed = 24,
|
|
2092
|
+
/**
|
|
2093
|
+
* @ignore
|
|
2094
|
+
*/
|
|
2095
|
+
LocalVideoStreamErrorScreenCaptureWindowRecoverFromMinimized = 25,
|
|
2042
2096
|
}
|
|
2043
2097
|
|
|
2044
2098
|
/**
|
|
@@ -2188,7 +2242,7 @@ export enum RemoteVideoStateReason {
|
|
|
2188
2242
|
*/
|
|
2189
2243
|
RemoteVideoStateReasonSdkInBackground = 12,
|
|
2190
2244
|
/**
|
|
2191
|
-
*
|
|
2245
|
+
* 13: The local video decoder does not support decoding the remote video stream.
|
|
2192
2246
|
*/
|
|
2193
2247
|
RemoteVideoStateReasonCodecNotSupport = 13,
|
|
2194
2248
|
}
|
|
@@ -2288,7 +2342,9 @@ export enum RemoteVideoDownscaleLevel {
|
|
|
2288
2342
|
*/
|
|
2289
2343
|
export class AudioVolumeInfo {
|
|
2290
2344
|
/**
|
|
2291
|
-
* The user ID.
|
|
2345
|
+
* The user ID.
|
|
2346
|
+
* In the local user's callback, uid is 0.
|
|
2347
|
+
* In the remote users' callback, uid is the user ID of a remote user whose instantaneous volume is the highest.
|
|
2292
2348
|
*/
|
|
2293
2349
|
uid?: number;
|
|
2294
2350
|
/**
|
|
@@ -2296,11 +2352,15 @@ export class AudioVolumeInfo {
|
|
|
2296
2352
|
*/
|
|
2297
2353
|
volume?: number;
|
|
2298
2354
|
/**
|
|
2299
|
-
* Voice activity status of the local user.
|
|
2355
|
+
* Voice activity status of the local user.
|
|
2356
|
+
* 0: The local user is not speaking.
|
|
2357
|
+
* 1: The local user is speaking.
|
|
2358
|
+
* 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.
|
|
2359
|
+
* To use this parameter, you must set reportVad to true when calling enableAudioVolumeIndication.
|
|
2300
2360
|
*/
|
|
2301
2361
|
vad?: number;
|
|
2302
2362
|
/**
|
|
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.
|
|
2363
|
+
* 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
2364
|
*/
|
|
2305
2365
|
voicePitch?: number;
|
|
2306
2366
|
}
|
|
@@ -2444,7 +2504,9 @@ export enum RtmpStreamPublishState {
|
|
|
2444
2504
|
*/
|
|
2445
2505
|
RtmpStreamPublishStateRunning = 2,
|
|
2446
2506
|
/**
|
|
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.
|
|
2507
|
+
* 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.
|
|
2508
|
+
* If the SDK successfully resumes the streaming, RtmpStreamPublishStateRunning (2) returns.
|
|
2509
|
+
* 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
2510
|
*/
|
|
2449
2511
|
RtmpStreamPublishStateRecovering = 3,
|
|
2450
2512
|
/**
|
|
@@ -2584,7 +2646,9 @@ export class RtcImage {
|
|
|
2584
2646
|
*/
|
|
2585
2647
|
zOrder?: number;
|
|
2586
2648
|
/**
|
|
2587
|
-
* The transparency of the watermark or background image. The range of the value is [0.0,1.0]:
|
|
2649
|
+
* The transparency of the watermark or background image. The range of the value is [0.0,1.0]:
|
|
2650
|
+
* 0.0: Completely transparent.
|
|
2651
|
+
* 1.0: (Default) Opaque.
|
|
2588
2652
|
*/
|
|
2589
2653
|
alpha?: number;
|
|
2590
2654
|
}
|
|
@@ -2592,7 +2656,7 @@ export class RtcImage {
|
|
|
2592
2656
|
/**
|
|
2593
2657
|
* The configuration for advanced features of the RTMP or RTMPS streaming with transcoding.
|
|
2594
2658
|
*
|
|
2595
|
-
* If you want to enable the advanced features of streaming with transcoding, contact
|
|
2659
|
+
* If you want to enable the advanced features of streaming with transcoding, contact.
|
|
2596
2660
|
*/
|
|
2597
2661
|
export class LiveStreamAdvancedFeature {
|
|
2598
2662
|
/**
|
|
@@ -2600,7 +2664,7 @@ export class LiveStreamAdvancedFeature {
|
|
|
2600
2664
|
*/
|
|
2601
2665
|
featureName?: string;
|
|
2602
2666
|
/**
|
|
2603
|
-
* Whether to enable the advanced features of streaming with transcoding:true: Enable the advanced features.false: (Default) Do not enable the advanced features.
|
|
2667
|
+
* Whether to enable the advanced features of streaming with transcoding: true : Enable the advanced features. false : (Default) Do not enable the advanced features.
|
|
2604
2668
|
*/
|
|
2605
2669
|
opened?: boolean;
|
|
2606
2670
|
}
|
|
@@ -2610,11 +2674,15 @@ export class LiveStreamAdvancedFeature {
|
|
|
2610
2674
|
*/
|
|
2611
2675
|
export enum ConnectionStateType {
|
|
2612
2676
|
/**
|
|
2613
|
-
* 1: The SDK is disconnected from the Agora edge server. The state indicates the SDK is in one of the following phases:
|
|
2677
|
+
* 1: The SDK is disconnected from the Agora edge server. The state indicates the SDK is in one of the following phases:
|
|
2678
|
+
* Theinitial state before calling the joinChannel method.
|
|
2679
|
+
* The app calls the leaveChannel method.
|
|
2614
2680
|
*/
|
|
2615
2681
|
ConnectionStateDisconnected = 1,
|
|
2616
2682
|
/**
|
|
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.
|
|
2683
|
+
* 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.
|
|
2684
|
+
* If the SDK successfully joins the channel, it triggers the onConnectionStateChanged callback and the connection state switches to ConnectionStateConnected.
|
|
2685
|
+
* After the connection is established, the SDK also initializes the media and triggers onJoinChannelSuccess when everything is ready.
|
|
2618
2686
|
*/
|
|
2619
2687
|
ConnectionStateConnecting = 2,
|
|
2620
2688
|
/**
|
|
@@ -2622,11 +2690,15 @@ export enum ConnectionStateType {
|
|
|
2622
2690
|
*/
|
|
2623
2691
|
ConnectionStateConnected = 3,
|
|
2624
2692
|
/**
|
|
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.
|
|
2693
|
+
* 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.
|
|
2694
|
+
* If the SDK cannot rejoin the channel within 10 seconds, it triggers onConnectionLost, stays in the ConnectionStateReconnecting state, and keeps rejoining the channel.
|
|
2695
|
+
* 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
2696
|
*/
|
|
2627
2697
|
ConnectionStateReconnecting = 4,
|
|
2628
2698
|
/**
|
|
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.
|
|
2699
|
+
* 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.
|
|
2700
|
+
* You can call joinChannel to rejoin the channel.
|
|
2701
|
+
* 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
2702
|
*/
|
|
2631
2703
|
ConnectionStateFailed = 5,
|
|
2632
2704
|
}
|
|
@@ -2656,15 +2728,21 @@ export class TranscodingUser {
|
|
|
2656
2728
|
*/
|
|
2657
2729
|
height?: number;
|
|
2658
2730
|
/**
|
|
2659
|
-
* The layer index number of the host's video. The value range is [0, 100].
|
|
2731
|
+
* The layer index number of the host's video. The value range is [0, 100].
|
|
2732
|
+
* 0: (Default) The host's video is the bottom layer.
|
|
2733
|
+
* 100: The host's video is the top layer.
|
|
2734
|
+
* If the value is less than 0 or greater than 100, ErrInvalidArgument error is returned.
|
|
2735
|
+
* Setting zOrder to 0 is supported.
|
|
2660
2736
|
*/
|
|
2661
2737
|
zOrder?: number;
|
|
2662
2738
|
/**
|
|
2663
|
-
* The transparency of the host's video. The value range is [0.0,1.0].
|
|
2739
|
+
* The transparency of the host's video. The value range is [0.0,1.0].
|
|
2740
|
+
* 0.0: Completely transparent.
|
|
2741
|
+
* 1.0: (Default) Opaque.
|
|
2664
2742
|
*/
|
|
2665
2743
|
alpha?: number;
|
|
2666
2744
|
/**
|
|
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.
|
|
2745
|
+
* 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
2746
|
*/
|
|
2669
2747
|
audioChannel?: number;
|
|
2670
2748
|
}
|
|
@@ -2674,11 +2752,15 @@ export class TranscodingUser {
|
|
|
2674
2752
|
*/
|
|
2675
2753
|
export class LiveTranscoding {
|
|
2676
2754
|
/**
|
|
2677
|
-
* The width of the video in pixels. The default value is 360.
|
|
2755
|
+
* The width of the video in pixels. The default value is 360.
|
|
2756
|
+
* 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.
|
|
2757
|
+
* When pushing audio streams to the CDN, set width and height as 0.
|
|
2678
2758
|
*/
|
|
2679
2759
|
width?: number;
|
|
2680
2760
|
/**
|
|
2681
|
-
* The height of the video in pixels. The default value is 640.
|
|
2761
|
+
* The height of the video in pixels. The default value is 640.
|
|
2762
|
+
* 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.
|
|
2763
|
+
* When pushing audio streams to the CDN, set width and height as 0.
|
|
2682
2764
|
*/
|
|
2683
2765
|
height?: number;
|
|
2684
2766
|
/**
|
|
@@ -2686,11 +2768,11 @@ export class LiveTranscoding {
|
|
|
2686
2768
|
*/
|
|
2687
2769
|
videoBitrate?: number;
|
|
2688
2770
|
/**
|
|
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.
|
|
2771
|
+
* 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
2772
|
*/
|
|
2691
2773
|
videoFramerate?: number;
|
|
2692
2774
|
/**
|
|
2693
|
-
*
|
|
2775
|
+
* Deprecated This member is deprecated. Latency mode: true : Low latency with unassured quality. false : (Default) High latency with assured quality.
|
|
2694
2776
|
*/
|
|
2695
2777
|
lowLatency?: boolean;
|
|
2696
2778
|
/**
|
|
@@ -2698,7 +2780,7 @@ export class LiveTranscoding {
|
|
|
2698
2780
|
*/
|
|
2699
2781
|
videoGop?: number;
|
|
2700
2782
|
/**
|
|
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.
|
|
2783
|
+
* 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
2784
|
*/
|
|
2703
2785
|
videoCodecProfile?: VideoCodecProfileType;
|
|
2704
2786
|
/**
|
|
@@ -2722,11 +2804,11 @@ export class LiveTranscoding {
|
|
|
2722
2804
|
*/
|
|
2723
2805
|
transcodingExtraInfo?: string;
|
|
2724
2806
|
/**
|
|
2725
|
-
*
|
|
2807
|
+
* Deprecated Obsolete and not recommended for use. The metadata sent to the CDN client.
|
|
2726
2808
|
*/
|
|
2727
2809
|
metadata?: string;
|
|
2728
2810
|
/**
|
|
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.
|
|
2811
|
+
* 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
2812
|
*/
|
|
2731
2813
|
watermark?: RtcImage[];
|
|
2732
2814
|
/**
|
|
@@ -2734,7 +2816,7 @@ export class LiveTranscoding {
|
|
|
2734
2816
|
*/
|
|
2735
2817
|
watermarkCount?: number;
|
|
2736
2818
|
/**
|
|
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.
|
|
2819
|
+
* 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
2820
|
*/
|
|
2739
2821
|
backgroundImage?: RtcImage[];
|
|
2740
2822
|
/**
|
|
@@ -2750,7 +2832,12 @@ export class LiveTranscoding {
|
|
|
2750
2832
|
*/
|
|
2751
2833
|
audioBitrate?: number;
|
|
2752
2834
|
/**
|
|
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.
|
|
2835
|
+
* 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.
|
|
2836
|
+
* 1: (Default) Mono
|
|
2837
|
+
* 2: Stereo.
|
|
2838
|
+
* 3: Three audio channels.
|
|
2839
|
+
* 4: Four audio channels.
|
|
2840
|
+
* 5: Five audio channels.
|
|
2754
2841
|
*/
|
|
2755
2842
|
audioChannels?: number;
|
|
2756
2843
|
/**
|
|
@@ -2776,11 +2863,11 @@ export class TranscodingVideoStream {
|
|
|
2776
2863
|
*/
|
|
2777
2864
|
sourceType?: VideoSourceType;
|
|
2778
2865
|
/**
|
|
2779
|
-
* The user ID of the remote user.Use this parameter only when the source type is VideoSourceRemote for local video mixing.
|
|
2866
|
+
* The user ID of the remote user. Use this parameter only when the source type is VideoSourceRemote for local video mixing.
|
|
2780
2867
|
*/
|
|
2781
2868
|
remoteUserUid?: number;
|
|
2782
2869
|
/**
|
|
2783
|
-
* The URL of the image.Use this parameter only when the source type is the image for local video mixing.
|
|
2870
|
+
* The URL of the image. Use this parameter only when the source type is the image for local video mixing.
|
|
2784
2871
|
*/
|
|
2785
2872
|
imageUrl?: string;
|
|
2786
2873
|
/**
|
|
@@ -2804,7 +2891,9 @@ export class TranscodingVideoStream {
|
|
|
2804
2891
|
*/
|
|
2805
2892
|
height?: number;
|
|
2806
2893
|
/**
|
|
2807
|
-
* The number of the layer to which the video for the local video mixing belongs. The value range is [0, 100].
|
|
2894
|
+
* The number of the layer to which the video for the local video mixing belongs. The value range is [0, 100].
|
|
2895
|
+
* 0: (Default) The layer is at the bottom.
|
|
2896
|
+
* 100: The layer is at the top.
|
|
2808
2897
|
*/
|
|
2809
2898
|
zOrder?: number;
|
|
2810
2899
|
/**
|
|
@@ -2812,7 +2901,7 @@ export class TranscodingVideoStream {
|
|
|
2812
2901
|
*/
|
|
2813
2902
|
alpha?: number;
|
|
2814
2903
|
/**
|
|
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.
|
|
2904
|
+
* 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
2905
|
*/
|
|
2817
2906
|
mirror?: boolean;
|
|
2818
2907
|
}
|
|
@@ -2878,11 +2967,11 @@ export enum VideoTranscoderError {
|
|
|
2878
2967
|
*/
|
|
2879
2968
|
export class LastmileProbeConfig {
|
|
2880
2969
|
/**
|
|
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.
|
|
2970
|
+
* 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
2971
|
*/
|
|
2883
2972
|
probeUplink?: boolean;
|
|
2884
2973
|
/**
|
|
2885
|
-
* Sets whether to test the downlink network:true: Test the downlink network.false: Do not test the downlink network.
|
|
2974
|
+
* Sets whether to test the downlink network: true : Test the downlink network. false : Do not test the downlink network.
|
|
2886
2975
|
*/
|
|
2887
2976
|
probeDownlink?: boolean;
|
|
2888
2977
|
/**
|
|
@@ -2990,7 +3079,9 @@ export enum ConnectionChangedReasonType {
|
|
|
2990
3079
|
*/
|
|
2991
3080
|
ConnectionChangedInvalidChannelName = 7,
|
|
2992
3081
|
/**
|
|
2993
|
-
* 8: The connection failed because the token is not valid. Possible reasons are as follows:
|
|
3082
|
+
* 8: The connection failed because the token is not valid. Possible reasons are as follows:
|
|
3083
|
+
* 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.
|
|
3084
|
+
* The uid specified when calling joinChannel to join the channel is inconsistent with the uid passed in when generating the token.
|
|
2994
3085
|
*/
|
|
2995
3086
|
ConnectionChangedInvalidToken = 8,
|
|
2996
3087
|
/**
|
|
@@ -2998,7 +3089,9 @@ export enum ConnectionChangedReasonType {
|
|
|
2998
3089
|
*/
|
|
2999
3090
|
ConnectionChangedTokenExpired = 9,
|
|
3000
3091
|
/**
|
|
3001
|
-
* 10: The connection is rejected by server. Possible reasons are as follows:
|
|
3092
|
+
* 10: The connection is rejected by server. Possible reasons are as follows:
|
|
3093
|
+
* 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.
|
|
3094
|
+
* 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
3095
|
*/
|
|
3003
3096
|
ConnectionChangedRejectedByServer = 10,
|
|
3004
3097
|
/**
|
|
@@ -3045,6 +3138,10 @@ export enum ConnectionChangedReasonType {
|
|
|
3045
3138
|
* @ignore
|
|
3046
3139
|
*/
|
|
3047
3140
|
ConnectionChangedLicenseValidationFailure = 21,
|
|
3141
|
+
/**
|
|
3142
|
+
* @ignore
|
|
3143
|
+
*/
|
|
3144
|
+
ConnectionChangedCertificationVeryfyFailure = 22,
|
|
3048
3145
|
}
|
|
3049
3146
|
|
|
3050
3147
|
/**
|
|
@@ -3052,7 +3149,7 @@ export enum ConnectionChangedReasonType {
|
|
|
3052
3149
|
*/
|
|
3053
3150
|
export enum ClientRoleChangeFailedReason {
|
|
3054
3151
|
/**
|
|
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.
|
|
3152
|
+
* 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
3153
|
*/
|
|
3057
3154
|
ClientRoleChangeFailedTooManyBroadcasters = 1,
|
|
3058
3155
|
/**
|
|
@@ -3180,7 +3277,7 @@ export enum VideoViewSetupMode {
|
|
|
3180
3277
|
*/
|
|
3181
3278
|
export class VideoCanvas {
|
|
3182
3279
|
/**
|
|
3183
|
-
*
|
|
3280
|
+
* The video display window.
|
|
3184
3281
|
*/
|
|
3185
3282
|
view?: any;
|
|
3186
3283
|
/**
|
|
@@ -3188,7 +3285,7 @@ export class VideoCanvas {
|
|
|
3188
3285
|
*/
|
|
3189
3286
|
uid?: number;
|
|
3190
3287
|
/**
|
|
3191
|
-
*
|
|
3288
|
+
* The background color of the video canvas in RGBA format. The default value is 0x00000000, which represents completely transparent black.
|
|
3192
3289
|
*/
|
|
3193
3290
|
backgroundColor?: number;
|
|
3194
3291
|
/**
|
|
@@ -3196,7 +3293,9 @@ export class VideoCanvas {
|
|
|
3196
3293
|
*/
|
|
3197
3294
|
renderMode?: RenderModeType;
|
|
3198
3295
|
/**
|
|
3199
|
-
* The mirror mode of the view. See VideoMirrorModeType.
|
|
3296
|
+
* The mirror mode of the view. See VideoMirrorModeType.
|
|
3297
|
+
* 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.
|
|
3298
|
+
* For the remote user: The mirror mode is disabled by default.
|
|
3200
3299
|
*/
|
|
3201
3300
|
mirrorMode?: VideoMirrorModeType;
|
|
3202
3301
|
/**
|
|
@@ -3216,7 +3315,10 @@ export class VideoCanvas {
|
|
|
3216
3315
|
*/
|
|
3217
3316
|
cropArea?: Rectangle;
|
|
3218
3317
|
/**
|
|
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.
|
|
3318
|
+
* (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.
|
|
3319
|
+
* This property applies to macOS only.
|
|
3320
|
+
* The receiver can render alpha channel information only when the sender enables alpha transmission.
|
|
3321
|
+
* To enable alpha transmission,.
|
|
3220
3322
|
*/
|
|
3221
3323
|
enableAlphaMask?: boolean;
|
|
3222
3324
|
}
|
|
@@ -3362,7 +3464,9 @@ export class ColorEnhanceOptions {
|
|
|
3362
3464
|
*/
|
|
3363
3465
|
strengthLevel?: number;
|
|
3364
3466
|
/**
|
|
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.
|
|
3467
|
+
* 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.
|
|
3468
|
+
* 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.
|
|
3469
|
+
* 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
3470
|
*/
|
|
3367
3471
|
skinProtectLevel?: number;
|
|
3368
3472
|
}
|
|
@@ -3420,15 +3524,15 @@ export class VirtualBackgroundSource {
|
|
|
3420
3524
|
*/
|
|
3421
3525
|
background_source_type?: BackgroundSourceType;
|
|
3422
3526
|
/**
|
|
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.
|
|
3527
|
+
* 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
3528
|
*/
|
|
3425
3529
|
color?: number;
|
|
3426
3530
|
/**
|
|
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.
|
|
3531
|
+
* 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
3532
|
*/
|
|
3429
3533
|
source?: string;
|
|
3430
3534
|
/**
|
|
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.
|
|
3535
|
+
* 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
3536
|
*/
|
|
3433
3537
|
blur_degree?: BackgroundBlurDegree;
|
|
3434
3538
|
}
|
|
@@ -3456,7 +3560,7 @@ export class SegmentationProperty {
|
|
|
3456
3560
|
*/
|
|
3457
3561
|
modelType?: SegModelType;
|
|
3458
3562
|
/**
|
|
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.
|
|
3563
|
+
* 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
3564
|
*/
|
|
3461
3565
|
greenCapacity?: number;
|
|
3462
3566
|
}
|
|
@@ -3470,11 +3574,11 @@ export enum AudioTrackType {
|
|
|
3470
3574
|
*/
|
|
3471
3575
|
AudioTrackInvalid = -1,
|
|
3472
3576
|
/**
|
|
3473
|
-
* 0: Mixable audio tracks.
|
|
3577
|
+
* 0: Mixable audio tracks. This type of audio track supports mixing with other audio streams (such as audio streams captured by microphone) and playing locally or publishing to channels after mixing. The latency of mixable audio tracks is higher than that of direct audio tracks.
|
|
3474
3578
|
*/
|
|
3475
3579
|
AudioTrackMixable = 0,
|
|
3476
3580
|
/**
|
|
3477
|
-
* 1: Direct audio tracks.
|
|
3581
|
+
* 1: Direct audio tracks. This type of audio track will replace the audio streams captured by the microphone and does not support mixing with other audio streams. The latency of direct audio tracks is lower than that of mixable audio tracks. If AudioTrackDirect is specified for this parameter, you must set publishMicrophoneTrack to false in ChannelMediaOptions when calling joinChannel to join the channel; otherwise, joining the channel fails and returns the error code -2.
|
|
3478
3582
|
*/
|
|
3479
3583
|
AudioTrackDirect = 1,
|
|
3480
3584
|
}
|
|
@@ -3484,7 +3588,7 @@ export enum AudioTrackType {
|
|
|
3484
3588
|
*/
|
|
3485
3589
|
export class AudioTrackConfig {
|
|
3486
3590
|
/**
|
|
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.
|
|
3591
|
+
* 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
3592
|
*/
|
|
3489
3593
|
enableLocalPlayback?: boolean;
|
|
3490
3594
|
}
|
|
@@ -3498,19 +3602,21 @@ export enum VoiceBeautifierPreset {
|
|
|
3498
3602
|
*/
|
|
3499
3603
|
VoiceBeautifierOff = 0x00000000,
|
|
3500
3604
|
/**
|
|
3501
|
-
* A more magnetic voice.Agora recommends using this enumerator to process a male-sounding voice; otherwise, you may experience vocal distortion.
|
|
3605
|
+
* A more magnetic voice. Agora recommends using this enumerator to process a male-sounding voice; otherwise, you may experience vocal distortion.
|
|
3502
3606
|
*/
|
|
3503
3607
|
ChatBeautifierMagnetic = 0x01010100,
|
|
3504
3608
|
/**
|
|
3505
|
-
* A fresher voice.Agora recommends using this enumerator to process a female-sounding voice; otherwise, you may experience vocal distortion.
|
|
3609
|
+
* A fresher voice. Agora recommends using this enumerator to process a female-sounding voice; otherwise, you may experience vocal distortion.
|
|
3506
3610
|
*/
|
|
3507
3611
|
ChatBeautifierFresh = 0x01010200,
|
|
3508
3612
|
/**
|
|
3509
|
-
* A more vital voice.Agora recommends using this enumerator to process a female-sounding voice; otherwise, you may experience vocal distortion.
|
|
3613
|
+
* A more vital voice. Agora recommends using this enumerator to process a female-sounding voice; otherwise, you may experience vocal distortion.
|
|
3510
3614
|
*/
|
|
3511
3615
|
ChatBeautifierVitality = 0x01010300,
|
|
3512
3616
|
/**
|
|
3513
|
-
* Singing beautifier effect.
|
|
3617
|
+
* Singing beautifier effect.
|
|
3618
|
+
* 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.
|
|
3619
|
+
* If you call setVoiceBeautifierParameters (SingingBeautifier, param1, param2), you can beautify a male or female-sounding voice and add a reverberation effect.
|
|
3514
3620
|
*/
|
|
3515
3621
|
SingingBeautifier = 0x01020100,
|
|
3516
3622
|
/**
|
|
@@ -3546,7 +3652,9 @@ export enum VoiceBeautifierPreset {
|
|
|
3546
3652
|
*/
|
|
3547
3653
|
TimbreTransformationRinging = 0x01030800,
|
|
3548
3654
|
/**
|
|
3549
|
-
* A ultra-high quality voice, which makes the audio clearer and restores more details.
|
|
3655
|
+
* A ultra-high quality voice, which makes the audio clearer and restores more details.
|
|
3656
|
+
* 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.
|
|
3657
|
+
* 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
3658
|
*/
|
|
3551
3659
|
UltraHighQualityVoice = 0x01040100,
|
|
3552
3660
|
}
|
|
@@ -3590,31 +3698,31 @@ export enum AudioEffectPreset {
|
|
|
3590
3698
|
*/
|
|
3591
3699
|
RoomAcousticsEthereal = 0x02010700,
|
|
3592
3700
|
/**
|
|
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.
|
|
3701
|
+
* 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
3702
|
*/
|
|
3595
3703
|
RoomAcoustics3dVoice = 0x02010800,
|
|
3596
3704
|
/**
|
|
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.
|
|
3705
|
+
* 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
3706
|
*/
|
|
3599
3707
|
RoomAcousticsVirtualSurroundSound = 0x02010900,
|
|
3600
3708
|
/**
|
|
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.
|
|
3709
|
+
* 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
3710
|
*/
|
|
3603
3711
|
VoiceChangerEffectUncle = 0x02020100,
|
|
3604
3712
|
/**
|
|
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.
|
|
3713
|
+
* 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
3714
|
*/
|
|
3607
3715
|
VoiceChangerEffectOldman = 0x02020200,
|
|
3608
3716
|
/**
|
|
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.
|
|
3717
|
+
* 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
3718
|
*/
|
|
3611
3719
|
VoiceChangerEffectBoy = 0x02020300,
|
|
3612
3720
|
/**
|
|
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.
|
|
3721
|
+
* 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
3722
|
*/
|
|
3615
3723
|
VoiceChangerEffectSister = 0x02020400,
|
|
3616
3724
|
/**
|
|
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.
|
|
3725
|
+
* 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
3726
|
*/
|
|
3619
3727
|
VoiceChangerEffectGirl = 0x02020500,
|
|
3620
3728
|
/**
|
|
@@ -3732,7 +3840,9 @@ export enum HeadphoneEqualizerPreset {
|
|
|
3732
3840
|
*/
|
|
3733
3841
|
export class ScreenCaptureParameters {
|
|
3734
3842
|
/**
|
|
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
|
|
3843
|
+
* 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 is set to 1920 × 1080:
|
|
3844
|
+
* 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.
|
|
3845
|
+
* If the value of the screen dimensions is higher than that of dimensions, for example, 2000 × 1500, the SDK uses the maximum value under with the aspect ratio of the screen dimension (4:3) for encoding, that is, 1440 × 1080.
|
|
3736
3846
|
*/
|
|
3737
3847
|
dimensions?: VideoDimensions;
|
|
3738
3848
|
/**
|
|
@@ -3744,11 +3854,11 @@ export class ScreenCaptureParameters {
|
|
|
3744
3854
|
*/
|
|
3745
3855
|
bitrate?: number;
|
|
3746
3856
|
/**
|
|
3747
|
-
* Whether to capture the mouse in screen sharing:true: (Default) Capture the mouse.false: Do not capture the mouse.
|
|
3857
|
+
* Whether to capture the mouse in screen sharing: true : (Default) Capture the mouse. false : Do not capture the mouse.
|
|
3748
3858
|
*/
|
|
3749
3859
|
captureMouseCursor?: boolean;
|
|
3750
3860
|
/**
|
|
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.
|
|
3861
|
+
* 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
3862
|
*/
|
|
3753
3863
|
windowFocus?: boolean;
|
|
3754
3864
|
/**
|
|
@@ -3756,19 +3866,20 @@ export class ScreenCaptureParameters {
|
|
|
3756
3866
|
*/
|
|
3757
3867
|
excludeWindowList?: any[];
|
|
3758
3868
|
/**
|
|
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.
|
|
3869
|
+
* 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
3870
|
*/
|
|
3761
3871
|
excludeWindowCount?: number;
|
|
3762
3872
|
/**
|
|
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.
|
|
3873
|
+
* 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
3874
|
*/
|
|
3765
3875
|
highLightWidth?: number;
|
|
3766
3876
|
/**
|
|
3767
|
-
* On Windows platforms, the color of the border in ARGB format. The default value is 0xFF8CBF26.
|
|
3877
|
+
* On Windows platforms, the color of the border in ARGB format. The default value is 0xFF8CBF26.
|
|
3878
|
+
* On macOS, COLOR_CLASS refers to NSColor.
|
|
3768
3879
|
*/
|
|
3769
3880
|
highLightColor?: number;
|
|
3770
3881
|
/**
|
|
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.
|
|
3882
|
+
* 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
3883
|
*/
|
|
3773
3884
|
enableHighLight?: boolean;
|
|
3774
3885
|
}
|
|
@@ -3836,15 +3947,19 @@ export enum AudioEncodedFrameObserverPosition {
|
|
|
3836
3947
|
*/
|
|
3837
3948
|
export class AudioRecordingConfiguration {
|
|
3838
3949
|
/**
|
|
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.
|
|
3950
|
+
* 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
3951
|
*/
|
|
3841
3952
|
filePath?: string;
|
|
3842
3953
|
/**
|
|
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.
|
|
3954
|
+
* 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
3955
|
*/
|
|
3845
3956
|
encode?: boolean;
|
|
3846
3957
|
/**
|
|
3847
|
-
* Recording sample rate (Hz).
|
|
3958
|
+
* Recording sample rate (Hz).
|
|
3959
|
+
* 16000
|
|
3960
|
+
* (Default) 32000
|
|
3961
|
+
* 44100
|
|
3962
|
+
* 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
3963
|
*/
|
|
3849
3964
|
sampleRate?: number;
|
|
3850
3965
|
/**
|
|
@@ -3852,11 +3967,15 @@ export class AudioRecordingConfiguration {
|
|
|
3852
3967
|
*/
|
|
3853
3968
|
fileRecordingType?: AudioFileRecordingType;
|
|
3854
3969
|
/**
|
|
3855
|
-
* Recording quality. See AudioRecordingQualityType.Note: This parameter applies to AAC files only.
|
|
3970
|
+
* Recording quality. See AudioRecordingQualityType. Note: This parameter applies to AAC files only.
|
|
3856
3971
|
*/
|
|
3857
3972
|
quality?: AudioRecordingQualityType;
|
|
3858
3973
|
/**
|
|
3859
|
-
* The audio channel of recording: The parameter supports the following values:
|
|
3974
|
+
* The audio channel of recording: The parameter supports the following values:
|
|
3975
|
+
* 1: (Default) Mono.
|
|
3976
|
+
* 2: Stereo. The actual recorded audio channel is related to the audio channel that you capture.
|
|
3977
|
+
* 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.
|
|
3978
|
+
* 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
3979
|
*/
|
|
3861
3980
|
recordingChannel?: number;
|
|
3862
3981
|
}
|
|
@@ -3882,7 +4001,7 @@ export interface IAudioEncodedFrameObserver {
|
|
|
3882
4001
|
/**
|
|
3883
4002
|
* Gets the encoded audio data of the local user.
|
|
3884
4003
|
*
|
|
3885
|
-
* After calling registerAudioEncodedFrameObserver and setting the encoded audio as AudioEncodedFrameObserverPositionRecord
|
|
4004
|
+
* 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
4005
|
*
|
|
3887
4006
|
* @param channels The number of channels.
|
|
3888
4007
|
* 1: Mono.
|
|
@@ -3900,7 +4019,7 @@ export interface IAudioEncodedFrameObserver {
|
|
|
3900
4019
|
/**
|
|
3901
4020
|
* Gets the encoded audio data of all remote users.
|
|
3902
4021
|
*
|
|
3903
|
-
* After calling registerAudioEncodedFrameObserver and setting the encoded audio as AudioEncodedFrameObserverPositionPlayback
|
|
4022
|
+
* After calling registerAudioEncodedFrameObserver and setting the encoded audio as AudioEncodedFrameObserverPositionPlayback, you can get encoded audio data of all remote users through this callback.
|
|
3904
4023
|
*
|
|
3905
4024
|
* @param samplesPerSec Recording sample rate (Hz).
|
|
3906
4025
|
* @param channels The number of channels.
|
|
@@ -3920,7 +4039,7 @@ export interface IAudioEncodedFrameObserver {
|
|
|
3920
4039
|
/**
|
|
3921
4040
|
* Gets the mixed and encoded audio data of the local and all remote users.
|
|
3922
4041
|
*
|
|
3923
|
-
* After calling registerAudioEncodedFrameObserver and setting the audio profile as AudioEncodedFrameObserverPositionMixed
|
|
4042
|
+
* 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
4043
|
*
|
|
3925
4044
|
* @param samplesPerSec Recording sample rate (Hz).
|
|
3926
4045
|
* @param channels The number of channels.
|
|
@@ -4019,7 +4138,7 @@ export enum ChannelMediaRelayError {
|
|
|
4019
4138
|
*/
|
|
4020
4139
|
RelayErrorServerErrorResponse = 1,
|
|
4021
4140
|
/**
|
|
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.
|
|
4141
|
+
* 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
4142
|
*/
|
|
4024
4143
|
RelayErrorServerNoResponse = 2,
|
|
4025
4144
|
/**
|
|
@@ -4175,15 +4294,19 @@ export class ChannelMediaInfo {
|
|
|
4175
4294
|
*/
|
|
4176
4295
|
export class ChannelMediaRelayConfiguration {
|
|
4177
4296
|
/**
|
|
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.
|
|
4297
|
+
* 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.
|
|
4298
|
+
* If you have not enabled the App Certificate, set this parameter as the default value NULL, which means the SDK applies the App ID.
|
|
4299
|
+
* 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
4300
|
*/
|
|
4180
4301
|
srcInfo?: ChannelMediaInfo;
|
|
4181
4302
|
/**
|
|
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.
|
|
4303
|
+
* 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.
|
|
4304
|
+
* If you have not enabled the App Certificate, set this parameter as the default value NULL, which means the SDK applies the App ID.
|
|
4305
|
+
* 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
4306
|
*/
|
|
4184
4307
|
destInfos?: ChannelMediaInfo[];
|
|
4185
4308
|
/**
|
|
4186
|
-
* The number of target channels. The default value is 0, and the value range is from 0 to
|
|
4309
|
+
* 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
4310
|
*/
|
|
4188
4311
|
destCount?: number;
|
|
4189
4312
|
}
|
|
@@ -4299,7 +4422,7 @@ export class EncryptionConfig {
|
|
|
4299
4422
|
*/
|
|
4300
4423
|
encryptionMode?: EncryptionMode;
|
|
4301
4424
|
/**
|
|
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.
|
|
4425
|
+
* 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
4426
|
*/
|
|
4304
4427
|
encryptionKey?: string;
|
|
4305
4428
|
/**
|
|
@@ -4381,7 +4504,15 @@ export enum StreamSubscribeState {
|
|
|
4381
4504
|
*/
|
|
4382
4505
|
SubStateIdle = 0,
|
|
4383
4506
|
/**
|
|
4384
|
-
* 1: Fails to subscribe to the remote stream. Possible reasons:
|
|
4507
|
+
* 1: Fails to subscribe to the remote stream. Possible reasons:
|
|
4508
|
+
* The remote user:
|
|
4509
|
+
* Calls muteLocalAudioStream (true) or muteLocalVideoStream (true) to stop sending local media stream.
|
|
4510
|
+
* Calls disableAudio or disableVideo to disable the local audio or video module.
|
|
4511
|
+
* Calls enableLocalAudio (false) or enableLocalVideo (false) to disable local audio or video capture.
|
|
4512
|
+
* The role of the remote user is audience.
|
|
4513
|
+
* The local user calls the following methods to stop receiving remote streams:
|
|
4514
|
+
* Call muteRemoteAudioStream (true) or muteAllRemoteAudioStreams (true) to stop receiving the remote audio stream.
|
|
4515
|
+
* Call muteRemoteVideoStream (true) or muteAllRemoteVideoStreams (true) to stop receiving the remote video stream.
|
|
4385
4516
|
*/
|
|
4386
4517
|
SubStateNoSubscribed = 1,
|
|
4387
4518
|
/**
|
|
@@ -4403,7 +4534,11 @@ export enum StreamPublishState {
|
|
|
4403
4534
|
*/
|
|
4404
4535
|
PubStateIdle = 0,
|
|
4405
4536
|
/**
|
|
4406
|
-
* 1: Fails to publish the local stream. Possible reasons:
|
|
4537
|
+
* 1: Fails to publish the local stream. Possible reasons:
|
|
4538
|
+
* The local user calls muteLocalAudioStream (true) or muteLocalVideoStream (true) to stop sending local media streams.
|
|
4539
|
+
* The local user calls disableAudio or disableVideo to disable the local audio or video module.
|
|
4540
|
+
* The local user calls enableLocalAudio (false) or enableLocalVideo (false) to disable the local audio or video capture.
|
|
4541
|
+
* The role of the local user is audience.
|
|
4407
4542
|
*/
|
|
4408
4543
|
PubStateNoPublished = 1,
|
|
4409
4544
|
/**
|
|
@@ -4425,15 +4560,15 @@ export class EchoTestConfiguration {
|
|
|
4425
4560
|
*/
|
|
4426
4561
|
view?: any;
|
|
4427
4562
|
/**
|
|
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.
|
|
4563
|
+
* 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
4564
|
*/
|
|
4430
4565
|
enableAudio?: boolean;
|
|
4431
4566
|
/**
|
|
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.
|
|
4567
|
+
* 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
4568
|
*/
|
|
4434
4569
|
enableVideo?: boolean;
|
|
4435
4570
|
/**
|
|
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
|
|
4571
|
+
* 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
4572
|
*/
|
|
4438
4573
|
token?: string;
|
|
4439
4574
|
/**
|
|
@@ -4533,7 +4668,7 @@ export class ScreenVideoParameters {
|
|
|
4533
4668
|
/**
|
|
4534
4669
|
* The audio configuration for the shared screen stream.
|
|
4535
4670
|
*
|
|
4536
|
-
* Only available where captureAudio is true
|
|
4671
|
+
* Only available where captureAudio is true.
|
|
4537
4672
|
*/
|
|
4538
4673
|
export class ScreenAudioParameters {
|
|
4539
4674
|
/**
|
|
@@ -4573,7 +4708,7 @@ export class ScreenCaptureParameters2 {
|
|
|
4573
4708
|
}
|
|
4574
4709
|
|
|
4575
4710
|
/**
|
|
4576
|
-
* The rendering state of the media frame
|
|
4711
|
+
* The rendering state of the media frame.
|
|
4577
4712
|
*/
|
|
4578
4713
|
export enum MediaTraceEvent {
|
|
4579
4714
|
/**
|
|
@@ -4603,19 +4738,31 @@ export class VideoRenderingTracingInfo {
|
|
|
4603
4738
|
*/
|
|
4604
4739
|
join2JoinSuccess?: number;
|
|
4605
4740
|
/**
|
|
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.
|
|
4741
|
+
* 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.
|
|
4742
|
+
* 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.
|
|
4743
|
+
* If the local user calls startMediaRenderingTracing after the remote user joins the channel, the value is 0 and meaningless.
|
|
4744
|
+
* 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
4745
|
*/
|
|
4608
4746
|
joinSuccess2RemoteJoined?: number;
|
|
4609
4747
|
/**
|
|
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.
|
|
4748
|
+
* 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.
|
|
4749
|
+
* 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.
|
|
4750
|
+
* If the local user calls startMediaRenderingTracing after setting the remote view, the value is 0 and has no effect.
|
|
4751
|
+
* 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
4752
|
*/
|
|
4612
4753
|
remoteJoined2SetView?: number;
|
|
4613
4754
|
/**
|
|
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.
|
|
4755
|
+
* 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.
|
|
4756
|
+
* 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.
|
|
4757
|
+
* If the local user calls startMediaRenderingTracing after subscribing to the remote video stream, the value is 0 and has no effect.
|
|
4758
|
+
* 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
4759
|
*/
|
|
4616
4760
|
remoteJoined2UnmuteVideo?: number;
|
|
4617
4761
|
/**
|
|
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.
|
|
4762
|
+
* 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.
|
|
4763
|
+
* 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.
|
|
4764
|
+
* If the local user calls startMediaRenderingTracing after receiving the remote video stream, the value is 0 and has no effect.
|
|
4765
|
+
* 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
4766
|
*/
|
|
4620
4767
|
remoteJoined2PacketReceived?: number;
|
|
4621
4768
|
}
|
|
@@ -4733,11 +4880,19 @@ export class LocalAccessPointConfiguration {
|
|
|
4733
4880
|
*/
|
|
4734
4881
|
export class SpatialAudioParams {
|
|
4735
4882
|
/**
|
|
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:
|
|
4883
|
+
* 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:
|
|
4884
|
+
* 0: (Default) 0 degrees, which means directly in front on the horizontal plane.
|
|
4885
|
+
* 90: 90 degrees, which means directly to the left on the horizontal plane.
|
|
4886
|
+
* 180: 180 degrees, which means directly behind on the horizontal plane.
|
|
4887
|
+
* 270: 270 degrees, which means directly to the right on the horizontal plane.
|
|
4888
|
+
* 360: 360 degrees, which means directly in front on the horizontal plane.
|
|
4737
4889
|
*/
|
|
4738
4890
|
speaker_azimuth?: number;
|
|
4739
4891
|
/**
|
|
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:
|
|
4892
|
+
* 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:
|
|
4893
|
+
* 0: (Default) 0 degrees, which means that the horizontal plane is not rotated.
|
|
4894
|
+
* -90: -90 degrees, which means that the horizontal plane is rotated 90 degrees downwards.
|
|
4895
|
+
* 90: 90 degrees, which means that the horizontal plane is rotated 90 degrees upwards.
|
|
4741
4896
|
*/
|
|
4742
4897
|
speaker_elevation?: number;
|
|
4743
4898
|
/**
|
|
@@ -4745,23 +4900,31 @@ export class SpatialAudioParams {
|
|
|
4745
4900
|
*/
|
|
4746
4901
|
speaker_distance?: number;
|
|
4747
4902
|
/**
|
|
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:
|
|
4903
|
+
* 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:
|
|
4904
|
+
* 0: (Default) 0 degrees, which means that the sound source and listener face the same direction.
|
|
4905
|
+
* 180: 180 degrees, which means that the sound source and listener face each other.
|
|
4749
4906
|
*/
|
|
4750
4907
|
speaker_orientation?: number;
|
|
4751
4908
|
/**
|
|
4752
|
-
* Whether to enable audio blurring:true: Enable audio blurring.false: (Default) Disable audio blurring.
|
|
4909
|
+
* Whether to enable audio blurring: true : Enable audio blurring. false : (Default) Disable audio blurring.
|
|
4753
4910
|
*/
|
|
4754
4911
|
enable_blur?: boolean;
|
|
4755
4912
|
/**
|
|
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.
|
|
4913
|
+
* 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
4914
|
*/
|
|
4758
4915
|
enable_air_absorb?: boolean;
|
|
4759
4916
|
/**
|
|
4760
|
-
* The sound attenuation coefficient of the remote user or media player. The value range is [0,1]. The values are as follows:
|
|
4917
|
+
* The sound attenuation coefficient of the remote user or media player. The value range is [0,1]. The values are as follows:
|
|
4918
|
+
* 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.
|
|
4919
|
+
* (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.
|
|
4920
|
+
* 0.5: (Default) Simulates the attenuation of the volume in the real environment; the effect is equivalent to not setting the speaker_attenuation parameter.
|
|
4921
|
+
* (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
4922
|
*/
|
|
4762
4923
|
speaker_attenuation?: number;
|
|
4763
4924
|
/**
|
|
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.
|
|
4925
|
+
* 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.
|
|
4926
|
+
* 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).
|
|
4927
|
+
* 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
4928
|
*/
|
|
4766
4929
|
enable_doppler?: boolean;
|
|
4767
4930
|
}
|