@byteplus/react-native-rtc 1.1.1 → 1.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/README.md +88 -57
  2. package/android/build.gradle +23 -14
  3. package/android/proguard-rules.pro +1 -1
  4. package/android/src/live/java/com/volcengine/reactnative/vertc/live/VertcLive.java +76 -8
  5. package/android/src/main/java/com/volcengine/reactnative/vertc/NativeVariableManager.java +0 -5
  6. package/android/src/main/java/com/volcengine/reactnative/vertc/ScreenCaptureHelper.java +13 -18
  7. package/android/src/main/java/com/volcengine/reactnative/vertc/VertcApiEngineManager.java +5 -5
  8. package/android/src/main/java/com/volcengine/reactnative/vertc/VertcHelper.java +30 -0
  9. package/android/src/main/java/com/volcengine/reactnative/vertc/VertcImpl.java +68 -0
  10. package/android/src/main/java/com/volcengine/reactnative/vertc/events/ClassHelper.java +24 -3
  11. package/android/src/main/java/com/volcengine/reactnative/vertc/events/IRTCRoomEventHandlerImpl.java +90 -11
  12. package/android/src/main/java/com/volcengine/reactnative/vertc/events/IRTCVideoEventHandlerImpl.java +65 -4
  13. package/android/src/newarch/com/volcengine/reactnative/vertc/VertcModule.java +86 -0
  14. package/android/src/{main/java → oldarch}/com/volcengine/reactnative/vertc/VertcModule.java +11 -17
  15. package/ios/core/RTCHeader.h +1 -0
  16. package/ios/core/VertcHelper.h +9 -3
  17. package/ios/core/VertcHelper.m +72 -1
  18. package/ios/live/VertcLive.m +164 -12
  19. package/ios/new_arch_core/RCTVertc.h +23 -0
  20. package/ios/new_arch_core/RCTVertc.mm +89 -0
  21. package/ios/new_arch_core/VertcImpl.h +33 -0
  22. package/ios/new_arch_core/VertcImpl.m +53 -0
  23. package/ios/new_arch_core/VertcViewManager.m +51 -0
  24. package/lib/commonjs/index.js +1609 -806
  25. package/lib/module/index.js +1608 -808
  26. package/lib/typescript/codegen/android/api.d.ts +152 -8
  27. package/lib/typescript/codegen/android/callback.d.ts +13 -5
  28. package/lib/typescript/codegen/android/keytype.d.ts +105 -7
  29. package/lib/typescript/codegen/ios/api.d.ts +152 -16
  30. package/lib/typescript/codegen/ios/callback.d.ts +65 -5
  31. package/lib/typescript/codegen/ios/keytype.d.ts +171 -5
  32. package/lib/typescript/codegen/pack/api.d.ts +94 -83
  33. package/lib/typescript/codegen/pack/callback.d.ts +158 -40
  34. package/lib/typescript/codegen/pack/keytype.d.ts +121 -21
  35. package/lib/typescript/interface.d.ts +43 -10
  36. package/lib/typescript/module.d.ts +7 -0
  37. package/lib/typescript/platforms/android/vertc.d.ts +4 -1
  38. package/lib/typescript/platforms/ios/vertc.d.ts +2 -1
  39. package/lib/typescript/platforms/turboModule/NativeVertc.d.ts +26 -0
  40. package/lib/typescript/platforms/turboModule/index.d.ts +4 -0
  41. package/lib/typescript/proxy.d.ts +1 -1
  42. package/lib/typescript/util.d.ts +1 -0
  43. package/package.json +11 -2
  44. package/react-native-rtc.podspec +35 -31
  45. package/src/platforms/turboModule/NativeVertc.ts +33 -0
  46. package/src/platforms/turboModule/index.ts +1 -0
  47. /package/android/src/{main/java → oldarch}/com/volcengine/reactnative/vertc/VertcModuleSpec.java +0 -0
  48. /package/ios/{core → original_arch_core}/VertcModule.h +0 -0
  49. /package/ios/{core → original_arch_core}/VertcModule.m +0 -0
  50. /package/ios/{core → original_arch_core}/VertcViewManager.m +0 -0
@@ -1,7 +1,7 @@
1
1
  // Copyright © 2022 BytePlusRTC All rights reserved.
2
2
  // SPDX-License-Identifier: MIT
3
3
 
4
- import { NativeEventEmitter, Image, Platform, NativeModules, requireNativeComponent } from 'react-native';
4
+ import { NativeEventEmitter, Image, Platform, TurboModuleRegistry, NativeModules, requireNativeComponent } from 'react-native';
5
5
  import React from 'react';
6
6
 
7
7
  /**
@@ -2568,6 +2568,7 @@ var MessageProtoImpl = function () {
2568
2568
  var buf = bufferLike.buffer || bufferLike;
2569
2569
  return {
2570
2570
  _type: "base64" /* ARG_TYPE.BASE64 */,
2571
+ // @ts-ignore
2571
2572
  _value: buf2base64(buf),
2572
2573
  };
2573
2574
  };
@@ -2909,6 +2910,77 @@ var ReactNativeBridge = /** @class */ (function () {
2909
2910
  return ReactNativeBridge;
2910
2911
  }());
2911
2912
 
2913
+ var ReactNativeTurboBridge = /** @class */ (function () {
2914
+ function ReactNativeTurboBridge(BridgeModule, NativeEventName) {
2915
+ this.BridgeModule = BridgeModule;
2916
+ this.NativeEventName = NativeEventName;
2917
+ this._handlers = {};
2918
+ if (BridgeModule === undefined) {
2919
+ throw new Error("can't find module \"".concat(BridgeModule, "\", please enure install the module correctly"));
2920
+ }
2921
+ // this._nativeEventEmitter = new NativeEventEmitter(BridgeModule);
2922
+ this._nativeEventEmitter = new NativeEventEmitter(BridgeModule);
2923
+ this._init();
2924
+ }
2925
+ ReactNativeTurboBridge.prototype._init = function () {
2926
+ var _this = this;
2927
+ this._nativeEventEmitter.addListener(this.NativeEventName, function (ev) {
2928
+ var _a, _b;
2929
+ try {
2930
+ var eventName = ev.event;
2931
+ var eventData = typeof ev.data === 'string' ? JSON.parse(ev.data) : ev.data;
2932
+ (_b = (_a = _this._handlers)[eventName]) === null || _b === void 0 ? void 0 : _b.call(_a, eventData);
2933
+ }
2934
+ catch (err) {
2935
+ console.error('handle native event fail:', err);
2936
+ }
2937
+ });
2938
+ };
2939
+ ReactNativeTurboBridge.prototype.call = function (params) {
2940
+ var _this = this;
2941
+ return new Promise(function (resolve, reject) {
2942
+ try {
2943
+ var resolved_1 = false;
2944
+ _this.BridgeModule.call(JSON.stringify(params), function (res) {
2945
+ var val = typeof res === 'string' ? JSON.parse(res) : res;
2946
+ resolved_1 = true;
2947
+ resolve(val);
2948
+ });
2949
+ setTimeout(function () {
2950
+ if (resolved_1) {
2951
+ return;
2952
+ }
2953
+ resolve({
2954
+ status: RETURN_STATUS.SUCCESS,
2955
+ msg: 'over timeout and auto success',
2956
+ });
2957
+ }, 1000 * 60 * 5);
2958
+ }
2959
+ catch (err) {
2960
+ // console.error(`<RNBridge> call native "${handlerName}()" fail`, err);
2961
+ reject(err);
2962
+ }
2963
+ });
2964
+ };
2965
+ ReactNativeTurboBridge.prototype.callSync = function (params) {
2966
+ try {
2967
+ var res = this.BridgeModule.callSync(JSON.stringify(params));
2968
+ return typeof res === 'string' ? JSON.parse(res) : res;
2969
+ }
2970
+ catch (err) {
2971
+ // console.error(`<RNBridge> call native "${handlerName}()" fail`, err);
2972
+ throw err;
2973
+ }
2974
+ };
2975
+ ReactNativeTurboBridge.prototype.registerHandler = function (handlerName, handler) {
2976
+ this._handlers[handlerName] = handler;
2977
+ };
2978
+ ReactNativeTurboBridge.prototype.registerAsyncHandler = function (handlerName, handler) {
2979
+ this._handlers[handlerName] = handler;
2980
+ };
2981
+ return ReactNativeTurboBridge;
2982
+ }());
2983
+
2912
2984
  /******************************************************************************
2913
2985
  Copyright (c) Microsoft Corporation.
2914
2986
 
@@ -2955,13 +3027,10 @@ var ReactNativeEnv = /** @class */ (function () {
2955
3027
  return ReactNativeEnv;
2956
3028
  }());
2957
3029
 
2958
- var moduleName = 'VertcModule';
2959
- var moduleEventName = 'VertcModule:onEvent';
2960
- setupJSBridge(new ReactNativeBridge(NativeModules[moduleName], moduleEventName));
2961
- setupEnv(new ReactNativeEnv());
2962
- // setupLogger({
2963
- // level: LogLevel.DEBUG,
2964
- // });
3030
+ /**
3031
+ * 获取NativeBridgeModule实例
3032
+ */
3033
+ var NativeVertc = TurboModuleRegistry.get('Vertc');
2965
3034
 
2966
3035
  /******************************************************************************
2967
3036
  Copyright (c) Microsoft Corporation.
@@ -3085,6 +3154,107 @@ typeof SuppressedError === "function" ? SuppressedError : function (error, suppr
3085
3154
  return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
3086
3155
  };
3087
3156
 
3157
+ var NativeSurfaceView = /** @class */ (function (_super) {
3158
+ __extends(NativeSurfaceView, _super);
3159
+ function NativeSurfaceView() {
3160
+ return _super !== null && _super.apply(this, arguments) || this;
3161
+ }
3162
+ return NativeSurfaceView;
3163
+ }(NativeView));
3164
+ var ApplicationContext = /** @class */ (function () {
3165
+ function ApplicationContext() {
3166
+ }
3167
+ return ApplicationContext;
3168
+ }());
3169
+ var ScreenIntent = /** @class */ (function () {
3170
+ function ScreenIntent() {
3171
+ }
3172
+ return ScreenIntent;
3173
+ }());
3174
+ var NativeVariables = function () {
3175
+ var _a;
3176
+ var _staticExtraInitializers = [];
3177
+ var _static_getApplicationContext_decorators;
3178
+ var _static_getScreenIntent_decorators;
3179
+ return _a = /** @class */ (function () {
3180
+ function NativeVariables() {
3181
+ }
3182
+ NativeVariables.getApplicationContext = function () {
3183
+ throw new Error('');
3184
+ };
3185
+ NativeVariables.getScreenIntent = function () {
3186
+ throw new Error('');
3187
+ };
3188
+ return NativeVariables;
3189
+ }()),
3190
+ (function () {
3191
+ var _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
3192
+ _static_getApplicationContext_decorators = [NativeVar('ApplicationContext', ApplicationContext)];
3193
+ _static_getScreenIntent_decorators = [NativeVar('screenIntent', ScreenIntent)];
3194
+ __esDecorate(_a, null, _static_getApplicationContext_decorators, { kind: "method", name: "getApplicationContext", static: true, private: false, access: { has: function (obj) { return "getApplicationContext" in obj; }, get: function (obj) { return obj.getApplicationContext; } }, metadata: _metadata }, null, _staticExtraInitializers);
3195
+ __esDecorate(_a, null, _static_getScreenIntent_decorators, { kind: "method", name: "getScreenIntent", static: true, private: false, access: { has: function (obj) { return "getScreenIntent" in obj; }, get: function (obj) { return obj.getScreenIntent; } }, metadata: _metadata }, null, _staticExtraInitializers);
3196
+ if (_metadata) Object.defineProperty(_a, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
3197
+ __runInitializers(_a, _staticExtraInitializers);
3198
+ })(),
3199
+ _a;
3200
+ }();
3201
+
3202
+ var isAndroid = function () { return Platform.OS === 'android'; };
3203
+ var isIOS = function () { return Platform.OS === 'ios'; };
3204
+ var platformBriefs = function (_a) {
3205
+ var android = _a.android, ios = _a.ios;
3206
+ if (isAndroid()) {
3207
+ return android();
3208
+ }
3209
+ if (isIOS()) {
3210
+ return ios();
3211
+ }
3212
+ throw new Error('Unsupported platform');
3213
+ };
3214
+ var _isNewArch;
3215
+ function isNewArch() {
3216
+ if (_isNewArch !== undefined) {
3217
+ return _isNewArch;
3218
+ }
3219
+ else {
3220
+ try {
3221
+ // Check for Fabric UI Manager
3222
+ var hasFabricUIManager = Boolean(global === null || global === void 0 ? void 0 : global.nativeFabricUIManager);
3223
+ // Check for TurboModule system
3224
+ var hasTurboModule = Boolean(global === null || global === void 0 ? void 0 : global.__turboModuleProxy);
3225
+ _isNewArch = hasFabricUIManager || hasTurboModule;
3226
+ }
3227
+ catch (_a) {
3228
+ _isNewArch = true;
3229
+ }
3230
+ }
3231
+ return _isNewArch;
3232
+ }
3233
+
3234
+ var moduleName = 'VertcModule';
3235
+ var isTurboModuleEnabled = isNewArch();
3236
+ var Vertc = isTurboModuleEnabled ? NativeVertc : NativeModules[moduleName];
3237
+ if (isTurboModuleEnabled) {
3238
+ console.log('[RN Module] TurboModule Enable', NativeVertc);
3239
+ }
3240
+ else {
3241
+ console.log('[RN Module] NativeModule Enable', Vertc);
3242
+ }
3243
+
3244
+ var moduleEventName = 'VertcModule:onEvent';
3245
+ if (isTurboModuleEnabled) {
3246
+ console.log('[Vertc] TurboModule Enable', Vertc);
3247
+ setupJSBridge(new ReactNativeTurboBridge(Vertc, moduleEventName));
3248
+ }
3249
+ else {
3250
+ console.log('[Vertc] NativeModule Enable', NativeModules);
3251
+ setupJSBridge(new ReactNativeBridge(Vertc, moduleEventName));
3252
+ }
3253
+ setupEnv(new ReactNativeEnv());
3254
+ // setupLogger({
3255
+ // level: LogLevel.DEBUG,
3256
+ // });
3257
+
3088
3258
  var CodecMode;
3089
3259
  (function (CodecMode) {
3090
3260
  CodecMode[CodecMode["CODEC_MODE_AUTO"] = 0] = "CODEC_MODE_AUTO";
@@ -4720,12 +4890,53 @@ var RemoteMirrorType$1;
4720
4890
  RemoteMirrorType[RemoteMirrorType["NONE"] = 0] = "NONE";
4721
4891
  RemoteMirrorType[RemoteMirrorType["RENDER"] = 1] = "RENDER";
4722
4892
  })(RemoteMirrorType$1 || (RemoteMirrorType$1 = {}));
4893
+ var PublishStateChangeReason$1;
4894
+ (function (PublishStateChangeReason) {
4895
+ PublishStateChangeReason[PublishStateChangeReason["PUBLISH"] = 0] = "PUBLISH";
4896
+ PublishStateChangeReason[PublishStateChangeReason["UNPUBLISH"] = 1] = "UNPUBLISH";
4897
+ PublishStateChangeReason[PublishStateChangeReason["NO_PUBLISH_PERMISSION"] = 2] = "NO_PUBLISH_PERMISSION";
4898
+ PublishStateChangeReason[PublishStateChangeReason["OVER_STREAM_PUBLISH_LIMIT"] = 3] = "OVER_STREAM_PUBLISH_LIMIT";
4899
+ PublishStateChangeReason[PublishStateChangeReason["MULTIROOM_UNPUBLISH_FAILED"] = 4] = "MULTIROOM_UNPUBLISH_FAILED";
4900
+ PublishStateChangeReason[PublishStateChangeReason["PUBLISH_STREAM_FAILED"] = 5] = "PUBLISH_STREAM_FAILED";
4901
+ PublishStateChangeReason[PublishStateChangeReason["PUBLISH_STREAM_FORBIDEN"] = 6] = "PUBLISH_STREAM_FORBIDEN";
4902
+ PublishStateChangeReason[PublishStateChangeReason["USER_IN_PUBLISH"] = 7] = "USER_IN_PUBLISH";
4903
+ })(PublishStateChangeReason$1 || (PublishStateChangeReason$1 = {}));
4904
+ var PublishState$1;
4905
+ (function (PublishState) {
4906
+ /** {en}
4907
+ * @brief Successfully published.
4908
+ *
4909
+ */
4910
+ PublishState[PublishState["PUBLISHED"] = 0] = "PUBLISHED";
4911
+ /** {en}
4912
+ * @brief Failed to publish.
4913
+ *
4914
+ */
4915
+ PublishState[PublishState["UNPUBLISHED"] = 1] = "UNPUBLISHED";
4916
+ })(PublishState$1 || (PublishState$1 = {}));
4917
+ var SubscribeStateChangeReason$1;
4918
+ (function (SubscribeStateChangeReason) {
4919
+ SubscribeStateChangeReason[SubscribeStateChangeReason["SUBSCRIBE"] = 0] = "SUBSCRIBE";
4920
+ SubscribeStateChangeReason[SubscribeStateChangeReason["UNSUBSCRIBE"] = 1] = "UNSUBSCRIBE";
4921
+ SubscribeStateChangeReason[SubscribeStateChangeReason["REMOTE_PUBLISH"] = 2] = "REMOTE_PUBLISH";
4922
+ SubscribeStateChangeReason[SubscribeStateChangeReason["REMOTE_UNPUBLISH"] = 3] = "REMOTE_UNPUBLISH";
4923
+ SubscribeStateChangeReason[SubscribeStateChangeReason["STREAM_FAILED_5XX"] = 4] = "STREAM_FAILED_5XX";
4924
+ SubscribeStateChangeReason[SubscribeStateChangeReason["STREAM_FAILED_404"] = 5] = "STREAM_FAILED_404";
4925
+ SubscribeStateChangeReason[SubscribeStateChangeReason["OVER_STREAM_SUBSCRIBE_LIMIT"] = 6] = "OVER_STREAM_SUBSCRIBE_LIMIT";
4926
+ SubscribeStateChangeReason[SubscribeStateChangeReason["NO_SUBSCRIBE_PERMISSION"] = 7] = "NO_SUBSCRIBE_PERMISSION";
4927
+ })(SubscribeStateChangeReason$1 || (SubscribeStateChangeReason$1 = {}));
4723
4928
  var SubscribeState$1;
4724
4929
  (function (SubscribeState) {
4725
- SubscribeState[SubscribeState["SUBSCRIBE_STATE_SUCCESS"] = 0] = "SUBSCRIBE_STATE_SUCCESS";
4726
- SubscribeState[SubscribeState["SUBSCRIBE_STATE_FAILED_NOT_IN_ROOM"] = 1] = "SUBSCRIBE_STATE_FAILED_NOT_IN_ROOM";
4727
- SubscribeState[SubscribeState["SUBSCRIBE_STATE_FAILED_STREAM_NOT_FOUND"] = 2] = "SUBSCRIBE_STATE_FAILED_STREAM_NOT_FOUND";
4728
- SubscribeState[SubscribeState["SUBSCRIBE_STATE_FAILED_SIGNAL"] = 4] = "SUBSCRIBE_STATE_FAILED_SIGNAL";
4930
+ /** {en}
4931
+ * @brief Successfully subscribed.
4932
+ *
4933
+ */
4934
+ SubscribeState[SubscribeState["SUBSCRIBED"] = 0] = "SUBSCRIBED";
4935
+ /** {en}
4936
+ * @brief Failed to subscribe.
4937
+ *
4938
+ */
4939
+ SubscribeState[SubscribeState["UNSUBSCRIBED"] = 1] = "UNSUBSCRIBED";
4729
4940
  })(SubscribeState$1 || (SubscribeState$1 = {}));
4730
4941
  var VirtualBackgroundSource$1 = function () {
4731
4942
  var _classDecorators = [NativeClass('com.ss.bytertc.engine.data.VirtualBackgroundSource')];
@@ -5390,12 +5601,16 @@ var RTCRoomConfig$1 = function () {
5390
5601
  var _classDescriptor;
5391
5602
  var _classExtraInitializers = [];
5392
5603
  var _classThis;
5604
+ var _instanceExtraInitializers = [];
5393
5605
  var _profile_decorators;
5394
5606
  var _profile_initializers = [];
5395
5607
  var _profile_extraInitializers = [];
5396
- var _isAutoPublish_decorators;
5397
- var _isAutoPublish_initializers = [];
5398
- var _isAutoPublish_extraInitializers = [];
5608
+ var _isPublishAudio_decorators;
5609
+ var _isPublishAudio_initializers = [];
5610
+ var _isPublishAudio_extraInitializers = [];
5611
+ var _isPublishVideo_decorators;
5612
+ var _isPublishVideo_initializers = [];
5613
+ var _isPublishVideo_extraInitializers = [];
5399
5614
  var _isAutoSubscribeAudio_decorators;
5400
5615
  var _isAutoSubscribeAudio_initializers = [];
5401
5616
  var _isAutoSubscribeAudio_extraInitializers = [];
@@ -5405,27 +5620,66 @@ var RTCRoomConfig$1 = function () {
5405
5620
  var _remoteVideoConfig_decorators;
5406
5621
  var _remoteVideoConfig_initializers = [];
5407
5622
  var _remoteVideoConfig_extraInitializers = [];
5623
+ var _isPublishAudio$_decorators;
5408
5624
  _classThis = /** @class */ (function () {
5409
- function RTCRoomConfig_1() {
5410
- this.profile = __runInitializers(this, _profile_initializers, void 0);
5411
- this.isAutoPublish = (__runInitializers(this, _profile_extraInitializers), __runInitializers(this, _isAutoPublish_initializers, void 0));
5412
- this.isAutoSubscribeAudio = (__runInitializers(this, _isAutoPublish_extraInitializers), __runInitializers(this, _isAutoSubscribeAudio_initializers, void 0));
5625
+ function RTCRoomConfig_1(channelProfile, isPublishAudio, isPublishVideo, isAutoSubscribeAudio, isAutoSubscribeVideo, remoteVideoConfig) {
5626
+ /** {en}
5627
+ * @brief Room profile. See ChannelProfile{@link #ChannelProfile}. The default is `CHANNEL_PROFILE_COMMUNICATION`. The setting cannot be changed after joining the room.
5628
+ *
5629
+ */
5630
+ this.profile = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _profile_initializers, void 0));
5631
+ /** {en}
5632
+ * @brief Whether to publish media streams automatically. The default is automatic publishing.
5633
+ * + Changing the user role to audience via `setUserVisibility` will void this setting.
5634
+ * + You can publish streams in only one of the rooms you have participated. If you have joined multiple rooms with the automatically publishing setting, the stream will be added into the first room you have joined only.
5635
+ *
5636
+ */
5637
+ this.isPublishAudio = (__runInitializers(this, _profile_extraInitializers), __runInitializers(this, _isPublishAudio_initializers, void 0));
5638
+ /** {en}
5639
+ * @brief Whether to publish media streams automatically. The default is automatic publishing.
5640
+ * + Changing the user role to audience via `setUserVisibility` will void this setting.
5641
+ * + You can publish streams in only one of the rooms you have participated. If you have joined multiple rooms with the automatically publishing setting, the stream will be added into the first room you have joined only.
5642
+ *
5643
+ */
5644
+ this.isPublishVideo = (__runInitializers(this, _isPublishAudio_extraInitializers), __runInitializers(this, _isPublishVideo_initializers, void 0));
5645
+ /** {en}
5646
+ * @brief Whether to automatically subscribe to the audio stream. The default is automatic subscription. <br>
5647
+ * This setting affects both the main stream and the screen-sharing stream.
5648
+ *
5649
+ */
5650
+ this.isAutoSubscribeAudio = (__runInitializers(this, _isPublishVideo_extraInitializers), __runInitializers(this, _isAutoSubscribeAudio_initializers, void 0));
5651
+ /** {en}
5652
+ * @brief Whether to automatically subscribe to the main video stream. The default is automatic subscription. <br>
5653
+ * This setting affects both the main stream and the screen-sharing stream.
5654
+ *
5655
+ */
5413
5656
  this.isAutoSubscribeVideo = (__runInitializers(this, _isAutoSubscribeAudio_extraInitializers), __runInitializers(this, _isAutoSubscribeVideo_initializers, void 0));
5657
+ /** {en}
5658
+ * @brief Expected configuration of remote video stream, see RemoteVideoConfig{@link #RemoteVideoConfig}.
5659
+ *
5660
+ */
5414
5661
  this.remoteVideoConfig = (__runInitializers(this, _isAutoSubscribeVideo_extraInitializers), __runInitializers(this, _remoteVideoConfig_initializers, void 0));
5415
5662
  __runInitializers(this, _remoteVideoConfig_extraInitializers);
5416
5663
  }
5664
+ RTCRoomConfig_1.prototype.isPublishAudio$ = function () {
5665
+ throw new Error('not implement');
5666
+ };
5417
5667
  return RTCRoomConfig_1;
5418
5668
  }());
5419
5669
  __setFunctionName(_classThis, "RTCRoomConfig");
5420
5670
  (function () {
5421
5671
  var _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
5422
5672
  _profile_decorators = [NativeMember()];
5423
- _isAutoPublish_decorators = [NativeMember()];
5673
+ _isPublishAudio_decorators = [NativeMember()];
5674
+ _isPublishVideo_decorators = [NativeMember()];
5424
5675
  _isAutoSubscribeAudio_decorators = [NativeMember()];
5425
5676
  _isAutoSubscribeVideo_decorators = [NativeMember()];
5426
5677
  _remoteVideoConfig_decorators = [NativeMember()];
5678
+ _isPublishAudio$_decorators = [NativeMethodSync('isPublishAudio')];
5679
+ __esDecorate(_classThis, null, _isPublishAudio$_decorators, { kind: "method", name: "isPublishAudio$", static: false, private: false, access: { has: function (obj) { return "isPublishAudio$" in obj; }, get: function (obj) { return obj.isPublishAudio$; } }, metadata: _metadata }, null, _instanceExtraInitializers);
5427
5680
  __esDecorate(null, null, _profile_decorators, { kind: "field", name: "profile", static: false, private: false, access: { has: function (obj) { return "profile" in obj; }, get: function (obj) { return obj.profile; }, set: function (obj, value) { obj.profile = value; } }, metadata: _metadata }, _profile_initializers, _profile_extraInitializers);
5428
- __esDecorate(null, null, _isAutoPublish_decorators, { kind: "field", name: "isAutoPublish", static: false, private: false, access: { has: function (obj) { return "isAutoPublish" in obj; }, get: function (obj) { return obj.isAutoPublish; }, set: function (obj, value) { obj.isAutoPublish = value; } }, metadata: _metadata }, _isAutoPublish_initializers, _isAutoPublish_extraInitializers);
5681
+ __esDecorate(null, null, _isPublishAudio_decorators, { kind: "field", name: "isPublishAudio", static: false, private: false, access: { has: function (obj) { return "isPublishAudio" in obj; }, get: function (obj) { return obj.isPublishAudio; }, set: function (obj, value) { obj.isPublishAudio = value; } }, metadata: _metadata }, _isPublishAudio_initializers, _isPublishAudio_extraInitializers);
5682
+ __esDecorate(null, null, _isPublishVideo_decorators, { kind: "field", name: "isPublishVideo", static: false, private: false, access: { has: function (obj) { return "isPublishVideo" in obj; }, get: function (obj) { return obj.isPublishVideo; }, set: function (obj, value) { obj.isPublishVideo = value; } }, metadata: _metadata }, _isPublishVideo_initializers, _isPublishVideo_extraInitializers);
5429
5683
  __esDecorate(null, null, _isAutoSubscribeAudio_decorators, { kind: "field", name: "isAutoSubscribeAudio", static: false, private: false, access: { has: function (obj) { return "isAutoSubscribeAudio" in obj; }, get: function (obj) { return obj.isAutoSubscribeAudio; }, set: function (obj, value) { obj.isAutoSubscribeAudio = value; } }, metadata: _metadata }, _isAutoSubscribeAudio_initializers, _isAutoSubscribeAudio_extraInitializers);
5430
5684
  __esDecorate(null, null, _isAutoSubscribeVideo_decorators, { kind: "field", name: "isAutoSubscribeVideo", static: false, private: false, access: { has: function (obj) { return "isAutoSubscribeVideo" in obj; }, get: function (obj) { return obj.isAutoSubscribeVideo; }, set: function (obj, value) { obj.isAutoSubscribeVideo = value; } }, metadata: _metadata }, _isAutoSubscribeVideo_initializers, _isAutoSubscribeVideo_extraInitializers);
5431
5685
  __esDecorate(null, null, _remoteVideoConfig_decorators, { kind: "field", name: "remoteVideoConfig", static: false, private: false, access: { has: function (obj) { return "remoteVideoConfig" in obj; }, get: function (obj) { return obj.remoteVideoConfig; }, set: function (obj, value) { obj.remoteVideoConfig = value; } }, metadata: _metadata }, _remoteVideoConfig_initializers, _remoteVideoConfig_extraInitializers);
@@ -10139,12 +10393,41 @@ var MediaStreamType$1;
10139
10393
  })(MediaStreamType$1 || (MediaStreamType$1 = {}));
10140
10394
  var MediaDeviceState$1;
10141
10395
  (function (MediaDeviceState) {
10396
+ /** {en}
10397
+ * @brief Device started capturing
10398
+ *
10399
+ */
10142
10400
  MediaDeviceState[MediaDeviceState["MEDIA_DEVICE_STATE_STARTED"] = 1] = "MEDIA_DEVICE_STATE_STARTED";
10401
+ /** {en}
10402
+ * @brief Device stopped capturing
10403
+ *
10404
+ */
10143
10405
  MediaDeviceState[MediaDeviceState["MEDIA_DEVICE_STATE_STOPPED"] = 2] = "MEDIA_DEVICE_STATE_STOPPED";
10406
+ /** {en}
10407
+ * @brief Runtime error <br>
10408
+ * For example, when the media device is expected to be working but no data is received.
10409
+ *
10410
+ */
10144
10411
  MediaDeviceState[MediaDeviceState["MEDIA_DEVICE_STATE_RUNTIMEERROR"] = 3] = "MEDIA_DEVICE_STATE_RUNTIMEERROR";
10412
+ /** {en}
10413
+ * @brief Device is added.
10414
+ *
10415
+ */
10145
10416
  MediaDeviceState[MediaDeviceState["MEDIA_DEVICE_STATE_ADDED"] = 10] = "MEDIA_DEVICE_STATE_ADDED";
10417
+ /** {en}
10418
+ * @brief Device is removed.
10419
+ *
10420
+ */
10146
10421
  MediaDeviceState[MediaDeviceState["MEDIA_DEVICE_STATE_REMOVED"] = 11] = "MEDIA_DEVICE_STATE_REMOVED";
10422
+ /** {en}
10423
+ * @brief A Phone call interrupted the RTC call. RTC call will resume once the call ends.
10424
+ *
10425
+ */
10147
10426
  MediaDeviceState[MediaDeviceState["MEDIA_DEVICE_STATE_INTERRUPTION_BEGAN"] = 12] = "MEDIA_DEVICE_STATE_INTERRUPTION_BEGAN";
10427
+ /** {en}
10428
+ * @brief RTC call resumed from the interruption caused by a phone call.
10429
+ *
10430
+ */
10148
10431
  MediaDeviceState[MediaDeviceState["MEDIA_DEVICE_STATE_INTERRUPTION_ENDED"] = 13] = "MEDIA_DEVICE_STATE_INTERRUPTION_ENDED";
10149
10432
  })(MediaDeviceState$1 || (MediaDeviceState$1 = {}));
10150
10433
  (function () {
@@ -12475,16 +12758,16 @@ var RTCRoom$1 = function () {
12475
12758
  var _sendRoomBinaryMessage_decorators;
12476
12759
  var _setMultiDeviceAVSync_decorators;
12477
12760
  var _setRemoteVideoConfig_decorators;
12478
- var _publishStream_decorators;
12479
- var _unpublishStream_decorators;
12480
- var _publishScreen_decorators;
12481
- var _unpublishScreen_decorators;
12482
- var _subscribeStream_decorators;
12761
+ var _publishStreamVideo_decorators;
12762
+ var _publishStreamAudio_decorators;
12763
+ var _publishScreenVideo_decorators;
12764
+ var _publishScreenAudio_decorators;
12765
+ var _subscribeStreamVideo_decorators;
12766
+ var _subscribeStreamAudio_decorators;
12767
+ var _subscribeScreenVideo_decorators;
12768
+ var _subscribeScreenAudio_decorators;
12483
12769
  var _subscribeAllStreams_decorators;
12484
- var _unsubscribeStream_decorators;
12485
12770
  var _unsubscribeAllStreams_decorators;
12486
- var _subscribeScreen_decorators;
12487
- var _unsubscribeScreen_decorators;
12488
12771
  var _pauseAllSubscribedStream_decorators;
12489
12772
  var _resumeAllSubscribedStream_decorators;
12490
12773
  var _startForwardStreamToRooms_decorators;
@@ -12541,34 +12824,178 @@ var RTCRoom$1 = function () {
12541
12824
  RTCRoom_1.prototype.setRemoteVideoConfig = function (userId, remoteVideoConfig) {
12542
12825
  throw new Error('not implement');
12543
12826
  };
12544
- RTCRoom_1.prototype.publishStream = function (type) {
12827
+ /** {en}
12828
+ * @detail api
12829
+ * @valid since 3.60.
12830
+ * @brief Start or stop publishing video streams captured by camera in the current room.
12831
+ * @param publish Whether to publish the media stream.
12832
+ * @return
12833
+ * - 0: Success.
12834
+ * - < 0 : Fail. See ReturnStatus{@link #ReturnStatus} for more details
12835
+ * @note
12836
+ * - You don't need to call this API if you set it to Auto-publish when calling joinRoom{@link #RTCRoom#joinRoom}.
12837
+ * - An invisible user cannot publish media streams. Call setUserVisibility{@link #RTCRoom#setUserVisibility} to change your visibility in the room.
12838
+ * - Call publishScreenAudio{@link #RTCRoom#publishScreenAudio} (not supported on Linux) and/or publishScreenVideo{@link #RTCRoom#publishScreenVideo} to start or stop screen sharing.
12839
+ * - Call publishStreamAudio{@link #RTCRoom#publishStreamAudio} to start or stop publishing the audio stream captured by the microphone.
12840
+ * - Call startForwardStreamToRooms{@link #RTCRoom#startForwardStreamToRooms} to forward the published streams to the other rooms.
12841
+ * - After you call this API, the other users in the room will receive onUserPublishStreamVideo{@link #IRTCRoomEventHandler#onUserPublishStreamVideo}. Those who successfully received your streams will receive onFirstRemoteVideoFrameDecoded{@link #IRTCEngineEventHandler#onFirstRemoteVideoFrameDecoded} at the same time.
12842
+ *
12843
+ */
12844
+ RTCRoom_1.prototype.publishStreamVideo = function (publish) {
12545
12845
  throw new Error('not implement');
12546
12846
  };
12547
- RTCRoom_1.prototype.unpublishStream = function (type) {
12847
+ /** {en}
12848
+ * @detail api
12849
+ * @valid since 3.60.
12850
+ * @brief Start or stop publishing media streams captured by the local microphone in the current room.
12851
+ * @param publish Whether to publish the media stream.
12852
+ * @return
12853
+ * - 0: Success.
12854
+ * - < 0 : Fail. See ReturnStatus{@link #ReturnStatus} for more details
12855
+ * @note
12856
+ * - You don't need to call this API if you set it to Auto-publish when calling joinRoom{@link #RTCRoom#joinRoom}.
12857
+ * - An invisible user cannot publish media streams. Call setUserVisibility{@link #RTCRoom#setUserVisibility} to change your visibility in the room.
12858
+ * - Call publishScreenAudio{@link #RTCRoom#publishScreenAudio} (not supported on Linux) and/or publishScreenVideo{@link #RTCRoom#publishScreenVideo} to start or stop screen sharing.
12859
+ * - Call publishStreamVideo{@link #RTCRoom#publishStreamVideo} to start or stop publishing the video stream captured by the camera.
12860
+ * - Call startForwardStreamToRooms{@link #RTCRoom#startForwardStreamToRooms} to forward the published streams to the other rooms.
12861
+ * - After you call this API, the other users in the room will receive onUserPublishStreamAudio{@link #IRTCRoomEventHandler#onUserPublishStreamAudio}. Those who successfully received your streams will receive onFirstRemoteAudioFrame{@link #IRTCEngineEventHandler#onFirstRemoteAudioFrame} at the same time.
12862
+ *
12863
+ */
12864
+ RTCRoom_1.prototype.publishStreamAudio = function (publish) {
12548
12865
  throw new Error('not implement');
12549
12866
  };
12550
- RTCRoom_1.prototype.publishScreen = function (type) {
12867
+ /** {en}
12868
+ * @detail api
12869
+ * @valid since 3.60.
12870
+ * @brief Start or stop sharing the local screen in the room.
12871
+ * If you need to share your screen in multiple rooms, you can use the same uid to join multiple rooms and call this API in each room. Also, you can publish different types of screen-sharing streams in different rooms.
12872
+ * @param publish Whether to publish video stream.
12873
+ * @return
12874
+ * - 0: Success.
12875
+ * - < 0 : Fail. See ReturnStatus{@link #ReturnStatus} for more details
12876
+ * @note
12877
+ * - You need to call this API to publish screen even if you set it to Auto-publish when calling joinRoom{@link #RTCRoom#joinRoom}.
12878
+ * - An invisible user cannot publish media streams. Call setUserVisibility{@link #RTCRoom#setUserVisibility} to change your visibility in the room.
12879
+ * - Call publishScreenAudio{@link #RTCRoom#publishScreenAudio} (not supported on Linux) to start or stop sharing computer audio.
12880
+ * - Call publishStreamVideo{@link #RTCRoom#publishStreamVideo} to start or stop publishing the video stream captured by the camera.
12881
+ * - Call publishStreamAudio{@link #RTCRoom#publishStreamAudio} to start or stop publishing the audio stream captured by the microphone.
12882
+ * - Call startForwardStreamToRooms{@link #RTCRoom#startForwardStreamToRooms} to forward the published streams to the other rooms.
12883
+ * - After you called this API, the other users in the room will receive onUserPublishScreenVideo{@link #IRTCRoomEventHandler#onUserPublishScreenVideo}. Those who successfully received your streams will receive onFirstRemoteVideoFrameDecoded{@link #IRTCEngineEventHandler#onFirstRemoteVideoFrameDecoded} at the same time.
12884
+ * - After calling this API, you'll receive onScreenVideoFrameSendStateChanged{@link #IRTCEngineEventHandler#onScreenVideoFrameSendStateChanged}.
12885
+ * - Refer to [Sharing Screen in PC](https://docs.byteplus.com/byteplus-rtc/docs/70144) for more information.
12886
+ *
12887
+ */
12888
+ RTCRoom_1.prototype.publishScreenVideo = function (publish) {
12551
12889
  throw new Error('not implement');
12552
12890
  };
12553
- RTCRoom_1.prototype.unpublishScreen = function (type) {
12891
+ /** {en}
12892
+ * @hidden(Linux)
12893
+ * @detail api
12894
+ * @valid since 3.60.
12895
+ * @brief Manually publishes local screen-sharing streams in the current room. <br>
12896
+ * If you need to share your screen in multiple rooms, you can use the same uid to join multiple rooms and call this API in each room. Also, you can publish different types of screen-sharing streams in different rooms.
12897
+ * @param publish Media stream type, used for specifying whether to publish audio stream or video stream.
12898
+ * @return
12899
+ * - 0: Success.
12900
+ * - < 0 : Fail. See ReturnStatus{@link #ReturnStatus} for more details
12901
+ * @note
12902
+ * - You need to call this API to publish screen even if you set it to Auto-publish when calling joinRoom{@link #RTCRoom#joinRoom}.
12903
+ * - An invisible user cannot publish media streams. Call setUserVisibility{@link #RTCRoom#setUserVisibility} to change your visibility in the room.
12904
+ * - Call publishScreenVideo{@link #RTCRoom#publishScreenVideo} to start or stop sharing the local screen.
12905
+ * - Call publishStreamVideo{@link #RTCRoom#publishStreamVideo} to start or stop publishing the video stream captured by the camera.
12906
+ * - Call publishStreamAudio{@link #RTCRoom#publishStreamAudio} to start or stop publishing the audio stream captured by the microphone.
12907
+ * - Call startForwardStreamToRooms{@link #RTCRoom#startForwardStreamToRooms} to forward the published streams to the other rooms.
12908
+ * - After you called this API, the other users in the room will receive onUserPublishScreenAudio{@link #IRTCRoomEventHandler#onUserPublishScreenAudio}. Those who successfully received your streams will receive onFirstRemoteAudioFrame{@link #IRTCEngineEventHandler#onFirstRemoteAudioFrame} at the same time.
12909
+ * - Refer to [Sharing Screen in PC](https://docs.byteplus.com/byteplus-rtc/docs/70144) for more information.
12910
+ *
12911
+ */
12912
+ RTCRoom_1.prototype.publishScreenAudio = function (publish) {
12554
12913
  throw new Error('not implement');
12555
12914
  };
12556
- RTCRoom_1.prototype.subscribeStream = function (uid, type) {
12915
+ /** {en}
12916
+ * @detail api
12917
+ * @valid since 3.60.
12918
+ * @brief Subscribes to specific remote media streams captured by the local camera. Or update the subscribe options of the subscribed user.
12919
+ * @param userId The ID of the remote user who published the target video stream.
12920
+ * @param subscribe Whether to subscribe to the stream.
12921
+ * @return API call result: <br>
12922
+ * - 0: Success.
12923
+ * - <0: Failure. See ReturnStatus{@link #ReturnStatus} for specific reasons.
12924
+ * @note
12925
+ * - Calling this API to update the subscribe configuration when the user has subscribed the remote user either by calling this API or by auto-subscribe.
12926
+ * - You must first get the remote stream information through onUserPublishStreamVideo{@link #IRTCRoomEventHandler#onUserPublishStreamVideo} before calling this API to subscribe to streams accordingly.
12927
+ * - After calling this API, you will be informed of the calling result with onVideoSubscribeStateChanged{@link #IRTCRoomEventHandler#onVideoSubscribeStateChanged}.
12928
+ * - Once the local user subscribes to the stream of a remote user, the subscription to the remote user will sustain until the local user leaves the room or unsubscribe from it by calling subscribeStreamVideo{@link #RTCRoom#subscribeStreamVideo}.
12929
+ * - Any other exceptions will be included in onVideoSubscribeStateChanged{@link #IRTCRoomEventHandler#onVideoSubscribeStateChanged}, see SubscribeStateChangeReason{@link #SubscribeStateChangeReason} for the reasons.
12930
+ *
12931
+ */
12932
+ RTCRoom_1.prototype.subscribeStreamVideo = function (userId, subscribe) {
12557
12933
  throw new Error('not implement');
12558
12934
  };
12559
- RTCRoom_1.prototype.subscribeAllStreams = function (type) {
12935
+ /** {en}
12936
+ * @detail api
12937
+ * @valid since 3.60.
12938
+ * @brief Subscribes to specific remote media streams captured by the local microphone. Or update the subscribe options of the subscribed user.
12939
+ * @param userId The ID of the remote user who published the target media stream.
12940
+ * @param subscribe Whether to subscribe to the audio stream.
12941
+ * @return API call result: <br>
12942
+ * - 0: Success.
12943
+ * - <0: Failure. See ReturnStatus{@link #ReturnStatus} for specific reasons.
12944
+ * @note
12945
+ * - Calling this API to update the subscribe configuration when the user has subscribed the remote user either by calling this API or by auto-subscribe.
12946
+ * - You must first get the remote stream information through onUserPublishStreamAudio{@link #IRTCRoomEventHandler#onUserPublishStreamAudio} before calling this API to subscribe to streams accordingly.
12947
+ * - After calling this API, you will be informed of the calling result with onAudioSubscribeStateChanged{@link #IRTCRoomEventHandler#onAudioSubscribeStateChanged}.
12948
+ * - Once the local user subscribes to the stream of a remote user, the subscription to the remote user will sustain until the local user leaves the room or unsubscribe from it by calling subscribeStreamAudio{@link #RTCRoom#subscribeStreamAudio}.
12949
+ * - Any other exceptions will be included in onAudioSubscribeStateChanged{@link #IRTCRoomEventHandler#onAudioSubscribeStateChanged}, see ErrorCode{@link #ErrorCode} for the reasons.
12950
+ *
12951
+ */
12952
+ RTCRoom_1.prototype.subscribeStreamAudio = function (userId, subscribe) {
12560
12953
  throw new Error('not implement');
12561
12954
  };
12562
- RTCRoom_1.prototype.unsubscribeStream = function (uid, type) {
12955
+ /** {en}
12956
+ * @detail api
12957
+ * @valid since 3.60.
12958
+ * @brief Subscribes to specific screen sharing media stream. Or update the subscribe options of the subscribed user.
12959
+ * @param userId The ID of the remote user who published the target screen video stream.
12960
+ * @param subscribe Whether to subscribe to the screen video stream.
12961
+ * @return API call result: <br>
12962
+ * - 0: Success.
12963
+ * - <0: Failure. See ReturnStatus{@link #ReturnStatus} for specific reasons.
12964
+ * @note
12965
+ * - Calling this API to update the subscribe configuration when the user has subscribed the remote user either by calling this API or by auto-subscribe.
12966
+ * - You must first get the remote stream information through onUserPublishScreenVideo{@link #IRTCRoomEventHandler#onUserPublishScreenVideo} before calling this API to subscribe to streams accordingly.
12967
+ * - After calling this API, you will be informed of the calling result with onScreenVideoSubscribeStateChanged{@link #IRTCRoomEventHandler#onScreenVideoSubscribeStateChanged}.
12968
+ * - Once the local user subscribes to the stream of a remote user, the subscription to the remote user will sustain until the local user leaves the room or unsubscribe from it by calling subscribeScreenVideo{@link #RTCRoom#subscribeScreenVideo}.
12969
+ * - Any other exceptions will be included in onScreenVideoSubscribeStateChanged{@link #IRTCRoomEventHandler#onScreenVideoSubscribeStateChanged}, see SubscribeStateChangeReason{@link #SubscribeStateChangeReason} for the reasons.
12970
+ *
12971
+ */
12972
+ RTCRoom_1.prototype.subscribeScreenVideo = function (userId, subscribe) {
12563
12973
  throw new Error('not implement');
12564
12974
  };
12565
- RTCRoom_1.prototype.unsubscribeAllStreams = function (type) {
12975
+ /** {en}
12976
+ * @detail api
12977
+ * @valid since 3.60.
12978
+ * @brief Subscribes to specific screen sharing media stream. Or update the subscribe options of the subscribed user.
12979
+ * @param userId The ID of the remote user who published the target screen audio stream.
12980
+ * @param subscribe Whether to subscribe to the screen audio stream.
12981
+ * @return API call result: <br>
12982
+ * - 0: Success.
12983
+ * - <0: Failure. See ReturnStatus{@link #ReturnStatus} for specific reasons.
12984
+ * @note
12985
+ * - Calling this API to update the subscribe configuration when the user has subscribed the remote user either by calling this API or by auto-subscribe.
12986
+ * - You must first get the remote stream information through onUserPublishScreenAudio{@link #IRTCRoomEventHandler#onUserPublishScreenAudio} before calling this API to subscribe to streams accordingly.
12987
+ * - After calling this API, you will be informed of the calling result with onScreenAudioSubscribeStateChanged{@link #IRTCRoomEventHandler#onScreenAudioSubscribeStateChanged}.
12988
+ * - Once the local user subscribes to the stream of a remote user, the subscription to the remote user will sustain until the local user leaves the room or unsubscribe from it by calling subscribeScreenAudio{@link #RTCRoom#subscribeScreenAudio}.
12989
+ * - Any other exceptions will be included in onScreenAudioSubscribeStateChanged{@link #IRTCRoomEventHandler#onScreenAudioSubscribeStateChanged}, see SubscribeStateChangeReason{@link #SubscribeStateChangeReason} for the reasons.
12990
+ *
12991
+ */
12992
+ RTCRoom_1.prototype.subscribeScreenAudio = function (userId, subscribe) {
12566
12993
  throw new Error('not implement');
12567
12994
  };
12568
- RTCRoom_1.prototype.subscribeScreen = function (uid, type) {
12995
+ RTCRoom_1.prototype.subscribeAllStreams = function (type) {
12569
12996
  throw new Error('not implement');
12570
12997
  };
12571
- RTCRoom_1.prototype.unsubscribeScreen = function (uid, type) {
12998
+ RTCRoom_1.prototype.unsubscribeAllStreams = function (type) {
12572
12999
  throw new Error('not implement');
12573
13000
  };
12574
13001
  RTCRoom_1.prototype.pauseAllSubscribedStream = function (mediaType) {
@@ -12636,16 +13063,16 @@ var RTCRoom$1 = function () {
12636
13063
  _sendRoomBinaryMessage_decorators = [NativeMethodSync()];
12637
13064
  _setMultiDeviceAVSync_decorators = [NativeMethodSync()];
12638
13065
  _setRemoteVideoConfig_decorators = [NativeMethodSync()];
12639
- _publishStream_decorators = [NativeMethodSync()];
12640
- _unpublishStream_decorators = [NativeMethodSync()];
12641
- _publishScreen_decorators = [NativeMethodSync()];
12642
- _unpublishScreen_decorators = [NativeMethodSync()];
12643
- _subscribeStream_decorators = [NativeMethodSync()];
13066
+ _publishStreamVideo_decorators = [NativeMethodSync()];
13067
+ _publishStreamAudio_decorators = [NativeMethodSync()];
13068
+ _publishScreenVideo_decorators = [NativeMethodSync()];
13069
+ _publishScreenAudio_decorators = [NativeMethodSync()];
13070
+ _subscribeStreamVideo_decorators = [NativeMethodSync()];
13071
+ _subscribeStreamAudio_decorators = [NativeMethodSync()];
13072
+ _subscribeScreenVideo_decorators = [NativeMethodSync()];
13073
+ _subscribeScreenAudio_decorators = [NativeMethodSync()];
12644
13074
  _subscribeAllStreams_decorators = [NativeMethodSync()];
12645
- _unsubscribeStream_decorators = [NativeMethodSync()];
12646
13075
  _unsubscribeAllStreams_decorators = [NativeMethodSync()];
12647
- _subscribeScreen_decorators = [NativeMethodSync()];
12648
- _unsubscribeScreen_decorators = [NativeMethodSync()];
12649
13076
  _pauseAllSubscribedStream_decorators = [NativeMethodSync()];
12650
13077
  _resumeAllSubscribedStream_decorators = [NativeMethodSync()];
12651
13078
  _startForwardStreamToRooms_decorators = [NativeMethodSync()];
@@ -12674,16 +13101,16 @@ var RTCRoom$1 = function () {
12674
13101
  __esDecorate(_classThis, null, _sendRoomBinaryMessage_decorators, { kind: "method", name: "sendRoomBinaryMessage", static: false, private: false, access: { has: function (obj) { return "sendRoomBinaryMessage" in obj; }, get: function (obj) { return obj.sendRoomBinaryMessage; } }, metadata: _metadata }, null, _instanceExtraInitializers);
12675
13102
  __esDecorate(_classThis, null, _setMultiDeviceAVSync_decorators, { kind: "method", name: "setMultiDeviceAVSync", static: false, private: false, access: { has: function (obj) { return "setMultiDeviceAVSync" in obj; }, get: function (obj) { return obj.setMultiDeviceAVSync; } }, metadata: _metadata }, null, _instanceExtraInitializers);
12676
13103
  __esDecorate(_classThis, null, _setRemoteVideoConfig_decorators, { kind: "method", name: "setRemoteVideoConfig", static: false, private: false, access: { has: function (obj) { return "setRemoteVideoConfig" in obj; }, get: function (obj) { return obj.setRemoteVideoConfig; } }, metadata: _metadata }, null, _instanceExtraInitializers);
12677
- __esDecorate(_classThis, null, _publishStream_decorators, { kind: "method", name: "publishStream", static: false, private: false, access: { has: function (obj) { return "publishStream" in obj; }, get: function (obj) { return obj.publishStream; } }, metadata: _metadata }, null, _instanceExtraInitializers);
12678
- __esDecorate(_classThis, null, _unpublishStream_decorators, { kind: "method", name: "unpublishStream", static: false, private: false, access: { has: function (obj) { return "unpublishStream" in obj; }, get: function (obj) { return obj.unpublishStream; } }, metadata: _metadata }, null, _instanceExtraInitializers);
12679
- __esDecorate(_classThis, null, _publishScreen_decorators, { kind: "method", name: "publishScreen", static: false, private: false, access: { has: function (obj) { return "publishScreen" in obj; }, get: function (obj) { return obj.publishScreen; } }, metadata: _metadata }, null, _instanceExtraInitializers);
12680
- __esDecorate(_classThis, null, _unpublishScreen_decorators, { kind: "method", name: "unpublishScreen", static: false, private: false, access: { has: function (obj) { return "unpublishScreen" in obj; }, get: function (obj) { return obj.unpublishScreen; } }, metadata: _metadata }, null, _instanceExtraInitializers);
12681
- __esDecorate(_classThis, null, _subscribeStream_decorators, { kind: "method", name: "subscribeStream", static: false, private: false, access: { has: function (obj) { return "subscribeStream" in obj; }, get: function (obj) { return obj.subscribeStream; } }, metadata: _metadata }, null, _instanceExtraInitializers);
13104
+ __esDecorate(_classThis, null, _publishStreamVideo_decorators, { kind: "method", name: "publishStreamVideo", static: false, private: false, access: { has: function (obj) { return "publishStreamVideo" in obj; }, get: function (obj) { return obj.publishStreamVideo; } }, metadata: _metadata }, null, _instanceExtraInitializers);
13105
+ __esDecorate(_classThis, null, _publishStreamAudio_decorators, { kind: "method", name: "publishStreamAudio", static: false, private: false, access: { has: function (obj) { return "publishStreamAudio" in obj; }, get: function (obj) { return obj.publishStreamAudio; } }, metadata: _metadata }, null, _instanceExtraInitializers);
13106
+ __esDecorate(_classThis, null, _publishScreenVideo_decorators, { kind: "method", name: "publishScreenVideo", static: false, private: false, access: { has: function (obj) { return "publishScreenVideo" in obj; }, get: function (obj) { return obj.publishScreenVideo; } }, metadata: _metadata }, null, _instanceExtraInitializers);
13107
+ __esDecorate(_classThis, null, _publishScreenAudio_decorators, { kind: "method", name: "publishScreenAudio", static: false, private: false, access: { has: function (obj) { return "publishScreenAudio" in obj; }, get: function (obj) { return obj.publishScreenAudio; } }, metadata: _metadata }, null, _instanceExtraInitializers);
13108
+ __esDecorate(_classThis, null, _subscribeStreamVideo_decorators, { kind: "method", name: "subscribeStreamVideo", static: false, private: false, access: { has: function (obj) { return "subscribeStreamVideo" in obj; }, get: function (obj) { return obj.subscribeStreamVideo; } }, metadata: _metadata }, null, _instanceExtraInitializers);
13109
+ __esDecorate(_classThis, null, _subscribeStreamAudio_decorators, { kind: "method", name: "subscribeStreamAudio", static: false, private: false, access: { has: function (obj) { return "subscribeStreamAudio" in obj; }, get: function (obj) { return obj.subscribeStreamAudio; } }, metadata: _metadata }, null, _instanceExtraInitializers);
13110
+ __esDecorate(_classThis, null, _subscribeScreenVideo_decorators, { kind: "method", name: "subscribeScreenVideo", static: false, private: false, access: { has: function (obj) { return "subscribeScreenVideo" in obj; }, get: function (obj) { return obj.subscribeScreenVideo; } }, metadata: _metadata }, null, _instanceExtraInitializers);
13111
+ __esDecorate(_classThis, null, _subscribeScreenAudio_decorators, { kind: "method", name: "subscribeScreenAudio", static: false, private: false, access: { has: function (obj) { return "subscribeScreenAudio" in obj; }, get: function (obj) { return obj.subscribeScreenAudio; } }, metadata: _metadata }, null, _instanceExtraInitializers);
12682
13112
  __esDecorate(_classThis, null, _subscribeAllStreams_decorators, { kind: "method", name: "subscribeAllStreams", static: false, private: false, access: { has: function (obj) { return "subscribeAllStreams" in obj; }, get: function (obj) { return obj.subscribeAllStreams; } }, metadata: _metadata }, null, _instanceExtraInitializers);
12683
- __esDecorate(_classThis, null, _unsubscribeStream_decorators, { kind: "method", name: "unsubscribeStream", static: false, private: false, access: { has: function (obj) { return "unsubscribeStream" in obj; }, get: function (obj) { return obj.unsubscribeStream; } }, metadata: _metadata }, null, _instanceExtraInitializers);
12684
13113
  __esDecorate(_classThis, null, _unsubscribeAllStreams_decorators, { kind: "method", name: "unsubscribeAllStreams", static: false, private: false, access: { has: function (obj) { return "unsubscribeAllStreams" in obj; }, get: function (obj) { return obj.unsubscribeAllStreams; } }, metadata: _metadata }, null, _instanceExtraInitializers);
12685
- __esDecorate(_classThis, null, _subscribeScreen_decorators, { kind: "method", name: "subscribeScreen", static: false, private: false, access: { has: function (obj) { return "subscribeScreen" in obj; }, get: function (obj) { return obj.subscribeScreen; } }, metadata: _metadata }, null, _instanceExtraInitializers);
12686
- __esDecorate(_classThis, null, _unsubscribeScreen_decorators, { kind: "method", name: "unsubscribeScreen", static: false, private: false, access: { has: function (obj) { return "unsubscribeScreen" in obj; }, get: function (obj) { return obj.unsubscribeScreen; } }, metadata: _metadata }, null, _instanceExtraInitializers);
12687
13114
  __esDecorate(_classThis, null, _pauseAllSubscribedStream_decorators, { kind: "method", name: "pauseAllSubscribedStream", static: false, private: false, access: { has: function (obj) { return "pauseAllSubscribedStream" in obj; }, get: function (obj) { return obj.pauseAllSubscribedStream; } }, metadata: _metadata }, null, _instanceExtraInitializers);
12688
13115
  __esDecorate(_classThis, null, _resumeAllSubscribedStream_decorators, { kind: "method", name: "resumeAllSubscribedStream", static: false, private: false, access: { has: function (obj) { return "resumeAllSubscribedStream" in obj; }, get: function (obj) { return obj.resumeAllSubscribedStream; } }, metadata: _metadata }, null, _instanceExtraInitializers);
12689
13116
  __esDecorate(_classThis, null, _startForwardStreamToRooms_decorators, { kind: "method", name: "startForwardStreamToRooms", static: false, private: false, access: { has: function (obj) { return "startForwardStreamToRooms" in obj; }, get: function (obj) { return obj.startForwardStreamToRooms; } }, metadata: _metadata }, null, _instanceExtraInitializers);
@@ -14385,6 +14812,105 @@ var ByteRTCMessageConfig;
14385
14812
  ByteRTCMessageConfig[ByteRTCMessageConfig["ByteRTCMessageConfigUnreliableOrdered"] = 1] = "ByteRTCMessageConfigUnreliableOrdered";
14386
14813
  ByteRTCMessageConfig[ByteRTCMessageConfig["ByteRTCMessageConfigUnreliableUnordered"] = 2] = "ByteRTCMessageConfigUnreliableUnordered";
14387
14814
  })(ByteRTCMessageConfig || (ByteRTCMessageConfig = {}));
14815
+ var ByteRTCPublishStateChangeReason;
14816
+ (function (ByteRTCPublishStateChangeReason) {
14817
+ /** {en}
14818
+ * @brief Requested to publish.
14819
+ *
14820
+ */
14821
+ ByteRTCPublishStateChangeReason[ByteRTCPublishStateChangeReason["ByteRTCPublishStateChangeReasonPublish"] = 0] = "ByteRTCPublishStateChangeReasonPublish";
14822
+ /** {en}
14823
+ * @brief Requested to remove.
14824
+ *
14825
+ */
14826
+ ByteRTCPublishStateChangeReason[ByteRTCPublishStateChangeReason["ByteRTCPublishStateChangeReasonUnpublish"] = 1] = "ByteRTCPublishStateChangeReasonUnpublish";
14827
+ /** {en}
14828
+ * @brief The token the user used was not permitted to publish.
14829
+ *
14830
+ */
14831
+ ByteRTCPublishStateChangeReason[ByteRTCPublishStateChangeReason["ByteRTCPublishStateChangeReasonNoPublishPermission"] = 2] = "ByteRTCPublishStateChangeReasonNoPublishPermission";
14832
+ /** {en}
14833
+ * @brief The number of streams the user has published has exceeded the limit.
14834
+ *
14835
+ */
14836
+ ByteRTCPublishStateChangeReason[ByteRTCPublishStateChangeReason["ByteRTCPublishStateChangeReasonOverStreamPublishLimit"] = 3] = "ByteRTCPublishStateChangeReasonOverStreamPublishLimit";
14837
+ /** {en}
14838
+ * @brief The stream failed to remove from a room when you are publishing the stream in two or more rooms.
14839
+ *
14840
+ */
14841
+ ByteRTCPublishStateChangeReason[ByteRTCPublishStateChangeReason["ByteRTCPublishStateChangeReasonMultiRoomUnpublishFailed"] = 4] = "ByteRTCPublishStateChangeReasonMultiRoomUnpublishFailed";
14842
+ /** {en}
14843
+ * @brief Failed to publish due to the server error.
14844
+ *
14845
+ */
14846
+ ByteRTCPublishStateChangeReason[ByteRTCPublishStateChangeReason["ByteRTCPublishStateChangeReasonPublishStreamFailed"] = 5] = "ByteRTCPublishStateChangeReasonPublishStreamFailed";
14847
+ /** {en}
14848
+ * @brief The user who tried to publish a stream is not a host. Call setUserVisibility{@link #IRTCRoom#setUserVisibility} to change the user role.
14849
+ *
14850
+ */
14851
+ ByteRTCPublishStateChangeReason[ByteRTCPublishStateChangeReason["ByteRTCPublishStateChangeReasonPublishStreamForbidden"] = 6] = "ByteRTCPublishStateChangeReasonPublishStreamForbidden";
14852
+ /** {en}
14853
+ * @brief The user who tried to publish a stream has already published a stream in a room.
14854
+ *
14855
+ */
14856
+ ByteRTCPublishStateChangeReason[ByteRTCPublishStateChangeReason["ByteRTCPublishStateChangeReasonUserInPublish"] = 7] = "ByteRTCPublishStateChangeReasonUserInPublish";
14857
+ })(ByteRTCPublishStateChangeReason || (ByteRTCPublishStateChangeReason = {}));
14858
+ var ByteRTCPublishState;
14859
+ (function (ByteRTCPublishState) {
14860
+ /** {en}
14861
+ * @brief Successfully published.
14862
+ *
14863
+ */
14864
+ ByteRTCPublishState[ByteRTCPublishState["ByteRTCPublishStatePublish"] = 0] = "ByteRTCPublishStatePublish";
14865
+ /** {en}
14866
+ * @brief Failed to publish.
14867
+ *
14868
+ */
14869
+ ByteRTCPublishState[ByteRTCPublishState["ByteRTCPublishStateUnpublish"] = 1] = "ByteRTCPublishStateUnpublish";
14870
+ })(ByteRTCPublishState || (ByteRTCPublishState = {}));
14871
+ var ByteRTCSubscribeStateChangeReason;
14872
+ (function (ByteRTCSubscribeStateChangeReason) {
14873
+ /** {en}
14874
+ * @brief Requested to subscribe.
14875
+ *
14876
+ */
14877
+ ByteRTCSubscribeStateChangeReason[ByteRTCSubscribeStateChangeReason["ByteRTCSubscribeStateChangeReasonSubscribe"] = 0] = "ByteRTCSubscribeStateChangeReasonSubscribe";
14878
+ /** {en}
14879
+ * @brief Requested to unsubscribe.
14880
+ *
14881
+ */
14882
+ ByteRTCSubscribeStateChangeReason[ByteRTCSubscribeStateChangeReason["ByteRTCSubscribeStateChangeReasonUnsubscribe"] = 1] = "ByteRTCSubscribeStateChangeReasonUnsubscribe";
14883
+ /** {en}
14884
+ * @brief The remote user published a stream.
14885
+ *
14886
+ */
14887
+ ByteRTCSubscribeStateChangeReason[ByteRTCSubscribeStateChangeReason["ByteRTCSubscribeStateChangeReasonRemotePublish"] = 2] = "ByteRTCSubscribeStateChangeReasonRemotePublish";
14888
+ /** {en}
14889
+ * @brief The remote user removed a stream.
14890
+ *
14891
+ */
14892
+ ByteRTCSubscribeStateChangeReason[ByteRTCSubscribeStateChangeReason["ByteRTCSubscribeStateChangeReasonRemoteUnpublish"] = 3] = "ByteRTCSubscribeStateChangeReasonRemoteUnpublish";
14893
+ /** {en}
14894
+ * @brief Failed to subscribe due to the server error. The SDK will automatically retry.
14895
+ *
14896
+ */
14897
+ ByteRTCSubscribeStateChangeReason[ByteRTCSubscribeStateChangeReason["ByteRTCSubscribeStateChangeReasonStreamFailed5xx"] = 4] = "ByteRTCSubscribeStateChangeReasonStreamFailed5xx";
14898
+ /** {en}
14899
+ * @brief Failed to subscribe since the stream to be subscribe to was not found in the room. The SDK will automatically retry the subscription. If the subscription still fails, we recommend you exit and retry.
14900
+ *
14901
+ */
14902
+ ByteRTCSubscribeStateChangeReason[ByteRTCSubscribeStateChangeReason["ByteRTCSubscribeStateChangeReasonStreamFailed404"] = 5] = "ByteRTCSubscribeStateChangeReasonStreamFailed404";
14903
+ /** {en}
14904
+ * @brief The number of streams the user has subscribed to has exceeded the limit.
14905
+ *
14906
+ */
14907
+ ByteRTCSubscribeStateChangeReason[ByteRTCSubscribeStateChangeReason["ByteRTCSubscribeStateChangeReasonOverStreamSubscribeLimit"] = 6] = "ByteRTCSubscribeStateChangeReasonOverStreamSubscribeLimit";
14908
+ /** {en}
14909
+ * @brief The user was not permitted to subscribe to the stream.
14910
+ *
14911
+ */
14912
+ ByteRTCSubscribeStateChangeReason[ByteRTCSubscribeStateChangeReason["ByteRTCSubscribeStateChangeReasonNoSubscribePermission"] = 7] = "ByteRTCSubscribeStateChangeReasonNoSubscribePermission";
14913
+ })(ByteRTCSubscribeStateChangeReason || (ByteRTCSubscribeStateChangeReason = {}));
14388
14914
  (function () {
14389
14915
  var _classDecorators = [NativeObserverClass('ByteRTCVideoSinkDelegate', {
14390
14916
  onFrame: 'onFrame:',
@@ -15845,13 +16371,50 @@ var ByteRTCAudioRecordingState;
15845
16371
  })(ByteRTCAudioRecordingState || (ByteRTCAudioRecordingState = {}));
15846
16372
  var ByteRTCMediaDeviceState;
15847
16373
  (function (ByteRTCMediaDeviceState) {
16374
+ /** {en}
16375
+ * @brief On
16376
+ *
16377
+ */
15848
16378
  ByteRTCMediaDeviceState[ByteRTCMediaDeviceState["ByteRTCMediaDeviceStateStarted"] = 1] = "ByteRTCMediaDeviceStateStarted";
16379
+ /** {en}
16380
+ * @brief Off
16381
+ *
16382
+ */
15849
16383
  ByteRTCMediaDeviceState[ByteRTCMediaDeviceState["ByteRTCMediaDeviceStateStopped"] = 2] = "ByteRTCMediaDeviceStateStopped";
16384
+ /** {en}
16385
+ * @brief Runtime error <br>
16386
+ * For example, when the media device is expected to be working but no data is received.
16387
+ *
16388
+ */
15850
16389
  ByteRTCMediaDeviceState[ByteRTCMediaDeviceState["ByteRTCMediaDeviceStateRuntimeError"] = 3] = "ByteRTCMediaDeviceStateRuntimeError";
16390
+ /** {en}
16391
+ * @brief Added <br>
16392
+ * Call enumerate-device api to update the device list when you get this notification.
16393
+ *
16394
+ */
15851
16395
  ByteRTCMediaDeviceState[ByteRTCMediaDeviceState["ByteRTCMediaDeviceStateAdded"] = 10] = "ByteRTCMediaDeviceStateAdded";
16396
+ /** {en}
16397
+ * @brief Removed <br>
16398
+ * Call enumerate-device api to update the device list when you get this notification.
16399
+ *
16400
+ */
15852
16401
  ByteRTCMediaDeviceState[ByteRTCMediaDeviceState["ByteRTCMediaDeviceStateRemoved"] = 11] = "ByteRTCMediaDeviceStateRemoved";
16402
+ /** {en}
16403
+ * @brief Phone calls, locking screen or the other Apps interrupted the RTC call. RTC call will resume once the call ends or the other Apps release the media devices.
16404
+ *
16405
+ */
15853
16406
  ByteRTCMediaDeviceState[ByteRTCMediaDeviceState["ByteRTCMediaDeviceStateInterruptionBegan"] = 12] = "ByteRTCMediaDeviceStateInterruptionBegan";
16407
+ /** {en}
16408
+ * @brief RTC call resumed from the interruption caused by the phone calls or the other Apps.
16409
+ *
16410
+ */
15854
16411
  ByteRTCMediaDeviceState[ByteRTCMediaDeviceState["ByteRTCMediaDeviceStateInterruptionEnded"] = 13] = "ByteRTCMediaDeviceStateInterruptionEnded";
16412
+ /** {en}
16413
+ * @hidden(iOS)
16414
+ * @brief Notification of receiving the device list after time-out. <br>
16415
+ * Call enumerate-device api to update the device list when you get this notification.
16416
+ *
16417
+ */
15855
16418
  ByteRTCMediaDeviceState[ByteRTCMediaDeviceState["ByteRTCMediaDeviceListUpdated"] = 16] = "ByteRTCMediaDeviceListUpdated";
15856
16419
  })(ByteRTCMediaDeviceState || (ByteRTCMediaDeviceState = {}));
15857
16420
  var ByteRTCAudioRoute;
@@ -16394,9 +16957,12 @@ var ByteRTCRoomConfig = function () {
16394
16957
  var _profile_decorators;
16395
16958
  var _profile_initializers = [];
16396
16959
  var _profile_extraInitializers = [];
16397
- var _isAutoPublish_decorators;
16398
- var _isAutoPublish_initializers = [];
16399
- var _isAutoPublish_extraInitializers = [];
16960
+ var _isPublishAudio_decorators;
16961
+ var _isPublishAudio_initializers = [];
16962
+ var _isPublishAudio_extraInitializers = [];
16963
+ var _isPublishVideo_decorators;
16964
+ var _isPublishVideo_initializers = [];
16965
+ var _isPublishVideo_extraInitializers = [];
16400
16966
  var _isAutoSubscribeAudio_decorators;
16401
16967
  var _isAutoSubscribeAudio_initializers = [];
16402
16968
  var _isAutoSubscribeAudio_extraInitializers = [];
@@ -16409,10 +16975,37 @@ var ByteRTCRoomConfig = function () {
16409
16975
  var _init_decorators;
16410
16976
  _classThis = /** @class */ (function () {
16411
16977
  function ByteRTCRoomConfig_1() {
16978
+ /** {en}
16979
+ * @brief Room profile. See ByteRTCRoomProfile{@link #ByteRTCRoomProfile}. The default is `ByteRTCRoomProfileCommunication`. The setting cannot be changed after joining the room.
16980
+ */
16412
16981
  this.profile = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _profile_initializers, void 0));
16413
- this.isAutoPublish = (__runInitializers(this, _profile_extraInitializers), __runInitializers(this, _isAutoPublish_initializers, void 0));
16414
- this.isAutoSubscribeAudio = (__runInitializers(this, _isAutoPublish_extraInitializers), __runInitializers(this, _isAutoSubscribeAudio_initializers, void 0));
16982
+ /** {en}
16983
+ * @brief Whether to automatically subscribe to the audio stream. The default is automatic subscription.
16984
+ * + Changing the user role to audience via `setUserVisibility` will void this setting.
16985
+ * + You can publish streams in only one of the rooms you have participated. If you have joined multiple rooms with the automatically publishing setting, the stream will be added into the first room you have joined only.
16986
+ *
16987
+ */
16988
+ this.isPublishAudio = (__runInitializers(this, _profile_extraInitializers), __runInitializers(this, _isPublishAudio_initializers, void 0));
16989
+ /** {en}
16990
+ * @brief Whether to publish media streams automatically. The default is automatic publishing.
16991
+ * + Changing the user role to audience via setUserVisibility:{@link #ByteRTCRoom#setUserVisibility} will void this setting.
16992
+ * + You can publish streams in only one of the rooms you have participated. If you have joined multiple rooms with the automatically publishing setting, the stream will be added into the first room you have joined only.
16993
+ *
16994
+ */
16995
+ this.isPublishVideo = (__runInitializers(this, _isPublishAudio_extraInitializers), __runInitializers(this, _isPublishVideo_initializers, void 0));
16996
+ /** {en}
16997
+ * @brief Whether to automatically subscribe to the audio stream. The default is automatic subscription. <br>
16998
+ * This setting affects both the main stream and the screen-sharing stream.
16999
+ */
17000
+ this.isAutoSubscribeAudio = (__runInitializers(this, _isPublishVideo_extraInitializers), __runInitializers(this, _isAutoSubscribeAudio_initializers, void 0));
17001
+ /** {en}
17002
+ * @brief Whether to automatically subscribe to the video stream. The default is automatic subscription. <br>
17003
+ * This setting affects both the main stream and the screen-sharing stream.
17004
+ */
16415
17005
  this.isAutoSubscribeVideo = (__runInitializers(this, _isAutoSubscribeAudio_extraInitializers), __runInitializers(this, _isAutoSubscribeVideo_initializers, void 0));
17006
+ /** {en}
17007
+ * @brief Expected configuration of remote video stream, see ByteRTCRemoteVideoConfig{@link #ByteRTCRemoteVideoConfig}.
17008
+ */
16416
17009
  this.remoteVideoConfig = (__runInitializers(this, _isAutoSubscribeVideo_extraInitializers), __runInitializers(this, _remoteVideoConfig_initializers, void 0));
16417
17010
  __runInitializers(this, _remoteVideoConfig_extraInitializers);
16418
17011
  }
@@ -16425,14 +17018,16 @@ var ByteRTCRoomConfig = function () {
16425
17018
  (function () {
16426
17019
  var _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
16427
17020
  _profile_decorators = [NativeMember()];
16428
- _isAutoPublish_decorators = [NativeMember()];
17021
+ _isPublishAudio_decorators = [NativeMember()];
17022
+ _isPublishVideo_decorators = [NativeMember()];
16429
17023
  _isAutoSubscribeAudio_decorators = [NativeMember()];
16430
17024
  _isAutoSubscribeVideo_decorators = [NativeMember()];
16431
17025
  _remoteVideoConfig_decorators = [NativeMember()];
16432
17026
  _init_decorators = [NativeMethodSync('init')];
16433
17027
  __esDecorate(_classThis, null, _init_decorators, { kind: "method", name: "init", static: false, private: false, access: { has: function (obj) { return "init" in obj; }, get: function (obj) { return obj.init; } }, metadata: _metadata }, null, _instanceExtraInitializers);
16434
17028
  __esDecorate(null, null, _profile_decorators, { kind: "field", name: "profile", static: false, private: false, access: { has: function (obj) { return "profile" in obj; }, get: function (obj) { return obj.profile; }, set: function (obj, value) { obj.profile = value; } }, metadata: _metadata }, _profile_initializers, _profile_extraInitializers);
16435
- __esDecorate(null, null, _isAutoPublish_decorators, { kind: "field", name: "isAutoPublish", static: false, private: false, access: { has: function (obj) { return "isAutoPublish" in obj; }, get: function (obj) { return obj.isAutoPublish; }, set: function (obj, value) { obj.isAutoPublish = value; } }, metadata: _metadata }, _isAutoPublish_initializers, _isAutoPublish_extraInitializers);
17029
+ __esDecorate(null, null, _isPublishAudio_decorators, { kind: "field", name: "isPublishAudio", static: false, private: false, access: { has: function (obj) { return "isPublishAudio" in obj; }, get: function (obj) { return obj.isPublishAudio; }, set: function (obj, value) { obj.isPublishAudio = value; } }, metadata: _metadata }, _isPublishAudio_initializers, _isPublishAudio_extraInitializers);
17030
+ __esDecorate(null, null, _isPublishVideo_decorators, { kind: "field", name: "isPublishVideo", static: false, private: false, access: { has: function (obj) { return "isPublishVideo" in obj; }, get: function (obj) { return obj.isPublishVideo; }, set: function (obj, value) { obj.isPublishVideo = value; } }, metadata: _metadata }, _isPublishVideo_initializers, _isPublishVideo_extraInitializers);
16436
17031
  __esDecorate(null, null, _isAutoSubscribeAudio_decorators, { kind: "field", name: "isAutoSubscribeAudio", static: false, private: false, access: { has: function (obj) { return "isAutoSubscribeAudio" in obj; }, get: function (obj) { return obj.isAutoSubscribeAudio; }, set: function (obj, value) { obj.isAutoSubscribeAudio = value; } }, metadata: _metadata }, _isAutoSubscribeAudio_initializers, _isAutoSubscribeAudio_extraInitializers);
16437
17032
  __esDecorate(null, null, _isAutoSubscribeVideo_decorators, { kind: "field", name: "isAutoSubscribeVideo", static: false, private: false, access: { has: function (obj) { return "isAutoSubscribeVideo" in obj; }, get: function (obj) { return obj.isAutoSubscribeVideo; }, set: function (obj, value) { obj.isAutoSubscribeVideo = value; } }, metadata: _metadata }, _isAutoSubscribeVideo_initializers, _isAutoSubscribeVideo_extraInitializers);
16438
17033
  __esDecorate(null, null, _remoteVideoConfig_decorators, { kind: "field", name: "remoteVideoConfig", static: false, private: false, access: { has: function (obj) { return "remoteVideoConfig" in obj; }, get: function (obj) { return obj.remoteVideoConfig; }, set: function (obj, value) { obj.remoteVideoConfig = value; } }, metadata: _metadata }, _remoteVideoConfig_initializers, _remoteVideoConfig_extraInitializers);
@@ -21643,10 +22238,16 @@ var ByteRTCMixedStreamAudioConfig = function () {
21643
22238
  }();
21644
22239
  var ByteRTCSubscribeState;
21645
22240
  (function (ByteRTCSubscribeState) {
21646
- ByteRTCSubscribeState[ByteRTCSubscribeState["ByteRTCSubscribeStateSuccess"] = 0] = "ByteRTCSubscribeStateSuccess";
21647
- ByteRTCSubscribeState[ByteRTCSubscribeState["ByteRTCSubscribeStateFailedNotInRoom"] = 1] = "ByteRTCSubscribeStateFailedNotInRoom";
21648
- ByteRTCSubscribeState[ByteRTCSubscribeState["ByteRTCSubscribeStateFailedStreamNotFound"] = 2] = "ByteRTCSubscribeStateFailedStreamNotFound";
21649
- ByteRTCSubscribeState[ByteRTCSubscribeState["ByteRTCSubscribeStateFailedOverLimit"] = 3] = "ByteRTCSubscribeStateFailedOverLimit";
22241
+ /** {en}
22242
+ * @brief Successfully subscribed.
22243
+ *
22244
+ */
22245
+ ByteRTCSubscribeState[ByteRTCSubscribeState["ByteRTCSubscribeStateSubscribe"] = 0] = "ByteRTCSubscribeStateSubscribe";
22246
+ /** {en}
22247
+ * @brief Failed to subscribe.
22248
+ *
22249
+ */
22250
+ ByteRTCSubscribeState[ByteRTCSubscribeState["ByteRTCSubscribeStateUnsubscribe"] = 1] = "ByteRTCSubscribeStateUnsubscribe";
21650
22251
  })(ByteRTCSubscribeState || (ByteRTCSubscribeState = {}));
21651
22252
  var ByteRTCVideoEncoderPreference;
21652
22253
  (function (ByteRTCVideoEncoderPreference) {
@@ -22756,24 +23357,16 @@ var ByteRTCRoom = function () {
22756
23357
  var _leaveRoom_decorators;
22757
23358
  var _updateToken_decorators;
22758
23359
  var _setRemoteVideoConfig_decorators;
22759
- var _publishStream_decorators;
22760
23360
  var _publishStreamVideo_decorators;
22761
23361
  var _publishStreamAudio_decorators;
22762
- var _subscribeStreamVideo_decorators;
22763
- var _subscribeStreamAudio_decorators;
22764
23362
  var _publishScreenVideo_decorators;
22765
23363
  var _publishScreenAudio_decorators;
23364
+ var _subscribeStreamVideo_decorators;
23365
+ var _subscribeStreamAudio_decorators;
22766
23366
  var _subscribeScreenVideo_decorators;
22767
23367
  var _subscribeScreenAudio_decorators;
22768
- var _unpublishStream_decorators;
22769
- var _publishScreen_decorators;
22770
- var _unpublishScreen_decorators;
22771
- var _subscribeStream_decorators;
22772
23368
  var _subscribeAllStreamsWithMediaStreamType_decorators;
22773
- var _unsubscribeStream_decorators;
22774
23369
  var _unsubscribeAllStreamsWithMediaStreamType_decorators;
22775
- var _subscribeScreen_decorators;
22776
- var _unsubscribeScreen_decorators;
22777
23370
  var _pauseAllSubscribedStream_decorators;
22778
23371
  var _resumeAllSubscribedStream_decorators;
22779
23372
  var _sendUserMessage_decorators;
@@ -22826,61 +23419,180 @@ var ByteRTCRoom = function () {
22826
23419
  ByteRTCRoom_1.prototype.setRemoteVideoConfig = function (userId, remoteVideoConfig) {
22827
23420
  throw new Error('not implement');
22828
23421
  };
22829
- ByteRTCRoom_1.prototype.publishStream = function (type) {
22830
- throw new Error('not implement');
22831
- };
22832
- ByteRTCRoom_1.prototype.publishStreamVideo = function (enable) {
22833
- throw new Error('not implement');
22834
- };
22835
- ByteRTCRoom_1.prototype.publishStreamAudio = function (enable) {
22836
- throw new Error('not implement');
22837
- };
22838
- ByteRTCRoom_1.prototype.subscribeStreamVideo = function (userId, enable) {
22839
- throw new Error('not implement');
22840
- };
22841
- ByteRTCRoom_1.prototype.subscribeStreamAudio = function (userId, enable) {
22842
- throw new Error('not implement');
22843
- };
22844
- // screen
22845
- ByteRTCRoom_1.prototype.publishScreenVideo = function (enable) {
23422
+ /** {en}
23423
+ * @detail api
23424
+ * @valid since 3.60.
23425
+ * @brief Start or stop publishing video streams captured by camera in the current room.
23426
+ * @param publish Whether to publish the media stream.
23427
+ * @return
23428
+ * - 0: Success.
23429
+ * - < 0 : Fail. See ByteRTCReturnStatus{@link #ByteRTCReturnStatus} for more details
23430
+ * @note
23431
+ * - You don't need to call this API if you set it to Auto-publish when calling joinRoom:userInfo:roomConfig:{@link #ByteRTCRoom#joinRoom:userInfo:roomConfig}.
23432
+ * - An invisible user cannot publish media streams. Call setUserVisibility{@link #IRTCRoom#setUserVisibility} to change your visibility in the room.
23433
+ * - Call publishScreenAudio:{@link #ByteRTCRoom#publishScreenAudio} (not supported on Linux) and/or publishScreenVideo:{@link #ByteRTCRoom#publishScreenVideo} to start or stop screen sharing.
23434
+ * - Call publishStreamAudio:{@link #ByteRTCRoom#publishStreamAudio} to start or stop publishing the audio stream captured by the microphone.
23435
+ * - Call startForwardStreamToRooms:{@link #ByteRTCRoom#startForwardStreamToRooms} to forward the published streams to the other rooms.
23436
+ * - After you call this API, the other users in the room will receive rtcRoom:onUserPublishStreamVideo:uid:isPublish:{@link #ByteRTCRoomDelegate#rtcRoom:onUserPublishStreamVideo:uid:isPublish}. Those who successfully received your streams will receive rtcEngine:onFirstRemoteVideoFrameDecoded:withFrameInfo:{@link #ByteRTCRoomDelegate#rtcEngine:onFirstRemoteVideoFrameDecoded:withFrameInfo} at the same time.
23437
+ *
23438
+ */
23439
+ ByteRTCRoom_1.prototype.publishStreamVideo = function (publish) {
22846
23440
  throw new Error('not implement');
22847
23441
  };
22848
- ByteRTCRoom_1.prototype.publishScreenAudio = function (enable) {
23442
+ /** {en}
23443
+ * @detail api
23444
+ * @valid since 3.60.
23445
+ * @brief Start or stop publishing media streams captured by the local microphone in the current room.
23446
+ * @param publish Whether to publish the media stream.
23447
+ * @return
23448
+ * - 0: Success.
23449
+ * - < 0 : Fail. See ByteRTCReturnStatus{@link #ByteRTCReturnStatus} for more details
23450
+ * @note
23451
+ * - You don't need to call this API if you set it to Auto-publish when calling joinRoom:userInfo:roomConfig:{@link #ByteRTCRoom#joinRoom:userInfo:roomConfig}.
23452
+ * - An invisible user cannot publish media streams. Call setUserVisibility{@link #IRTCRoom#setUserVisibility} to change your visibility in the room.
23453
+ * - Call publishScreenAudio:{@link #ByteRTCRoom#publishScreenAudio} (not supported on Linux) and/or publishScreenVideo:{@link #ByteRTCRoom#publishScreenVideo} to start or stop screen sharing.
23454
+ * - Call publishStreamVideo:{@link #ByteRTCRoom#publishStreamVideo} to start or stop publishing the video stream captured by the camera.
23455
+ * - Call startForwardStreamToRooms:{@link #ByteRTCRoom#startForwardStreamToRooms} to forward the published streams to the other rooms.
23456
+ * - After you call this API, the other users in the room will receive rtcRoom:onUserPublishStreamAudio:uid:isPublish:{@link #ByteRTCRoomDelegate#rtcRoom:onUserPublishStreamAudio:uid:isPublish}. Those who successfully received your streams will receive rtcEngine:onFirstRemoteAudioFrame:{@link #ByteRTCEngineDelegate#rtcEngine:onFirstRemoteAudioFrame} at the same time.
23457
+ *
23458
+ */
23459
+ ByteRTCRoom_1.prototype.publishStreamAudio = function (publish) {
22849
23460
  throw new Error('not implement');
22850
23461
  };
22851
- ByteRTCRoom_1.prototype.subscribeScreenVideo = function (userId, enable) {
23462
+ /** {en}
23463
+ * @detail api
23464
+ * @valid since 3.60.
23465
+ * @brief Start or stop sharing the local screen in the room.
23466
+ * If you need to share your screen in multiple rooms, you can use the same uid to join multiple rooms and call this API in each room. Also, you can publish different types of screen-sharing streams in different rooms.
23467
+ * @param publish Whether to publish video stream.
23468
+ * @return
23469
+ * - 0: Success.
23470
+ * - < 0 : Fail. See ByteRTCReturnStatus{@link #ByteRTCReturnStatus} for more details
23471
+ * @note
23472
+ * - You need to call this API to publish screen even if you set it to Auto-publish when calling joinRoom:userInfo:roomConfig:{@link #ByteRTCRoom#joinRoom:userInfo:roomConfig}.
23473
+ * - An invisible user cannot publish media streams. Call setUserVisibility{@link #IRTCRoom#setUserVisibility} to change your visibility in the room.
23474
+ * - Call publishScreenAudio:{@link #ByteRTCRoom#publishScreenAudio} (not supported on Linux) to start or stop sharing computer audio.
23475
+ * - Call publishStreamVideo:{@link #ByteRTCRoom#publishStreamVideo} to start or stop publishing the video stream captured by the camera.
23476
+ * - Call publishStreamAudio:{@link #ByteRTCRoom#publishStreamAudio} to start or stop publishing the audio stream captured by the microphone.
23477
+ * - Call startForwardStreamToRooms:{@link #ByteRTCRoom#startForwardStreamToRooms} to forward the published streams to the other rooms.
23478
+ * - After you called this API, the other users in the room will receive rtcRoom:onUserPublishScreenVideo:uid:isPublish:{@link #ByteRTCRoomDelegate#rtcRoom:onUserPublishScreenVideo:uid:isPublish}. Those who successfully received your streams will receive rtcEngine:onFirstRemoteVideoFrameDecoded:withFrameInfo:{@link #ByteRTCRoomDelegate#rtcEngine:onFirstRemoteVideoFrameDecoded:withFrameInfo} at the same time.
23479
+ * - After calling this API, you'll receive rtcEngine:onScreenVideoFrameSendStateChanged:rtcUser:state:{@link #ByteRTCEngineDelegate#rtcEngine:onScreenVideoFrameSendStateChanged:rtcUser:state}.
23480
+ * - Refer to [Sharing Screen in PC](https://docs.byteplus.com/byteplus-rtc/docs/70144) for more information.
23481
+ *
23482
+ */
23483
+ ByteRTCRoom_1.prototype.publishScreenVideo = function (publish) {
22852
23484
  throw new Error('not implement');
22853
23485
  };
22854
- ByteRTCRoom_1.prototype.subscribeScreenAudio = function (userId, enable) {
23486
+ /** {en}
23487
+ * @hidden(Linux)
23488
+ * @detail api
23489
+ * @valid since 3.60.
23490
+ * @brief Manually publishes local screen-sharing streams in the current room. <br>
23491
+ * If you need to share your screen in multiple rooms, you can use the same uid to join multiple rooms and call this API in each room. Also, you can publish different types of screen-sharing streams in different rooms.
23492
+ * @param publish Media stream type, used for specifying whether to publish audio stream or video stream.
23493
+ * @return
23494
+ * - 0: Success.
23495
+ * - < 0 : Fail. See ByteRTCReturnStatus{@link #ByteRTCReturnStatus} for more details
23496
+ * @note
23497
+ * - You need to call this API to publish screen even if you set it to Auto-publish when calling joinRoom:userInfo:roomConfig:{@link #ByteRTCRoom#joinRoom:userInfo:roomConfig}.
23498
+ * - An invisible user cannot publish media streams. Call setUserVisibility{@link #IRTCRoom#setUserVisibility} to change your visibility in the room.
23499
+ * - Call publishScreenVideo:{@link #ByteRTCRoom#publishScreenVideo} to start or stop sharing the local screen.
23500
+ * - Call publishStreamVideo:{@link #ByteRTCRoom#publishStreamVideo} to start or stop publishing the video stream captured by the camera.
23501
+ * - Call publishStreamAudio:{@link #ByteRTCRoom#publishStreamAudio} to start or stop publishing the audio stream captured by the microphone.
23502
+ * - Call startForwardStreamToRooms:{@link #ByteRTCRoom#startForwardStreamToRooms} to forward the published streams to the other rooms.
23503
+ * - After you called this API, the other users in the room will receive rtcRoom:onUserPublishScreenAudio:uid:isPublish:{@link #ByteRTCRoomDelegate#rtcRoom:onUserPublishScreenAudio:uid:isPublish}. Those who successfully received your streams will receive rtcEngine:onFirstRemoteAudioFrame:{@link #ByteRTCEngineDelegate#rtcEngine:onFirstRemoteAudioFrame} at the same time.
23504
+ * - Refer to [Sharing Screen in PC](https://docs.byteplus.com/byteplus-rtc/docs/70144) for more information.
23505
+ *
23506
+ */
23507
+ ByteRTCRoom_1.prototype.publishScreenAudio = function (publish) {
22855
23508
  throw new Error('not implement');
22856
23509
  };
22857
- ByteRTCRoom_1.prototype.unpublishStream = function (type) {
23510
+ /** {en}
23511
+ * @detail api
23512
+ * @valid since 3.60.
23513
+ * @brief Subscribes to specific remote media streams captured by the local camera. Or update the subscribe options of the subscribed user.
23514
+ * @param userId The ID of the remote user who published the target video stream.
23515
+ * @param subscribe Whether to subscribe to the stream.
23516
+ * @return API call result: <br>
23517
+ * - 0: Success.
23518
+ * - <0: Failure. See ByteRTCReturnStatus{@link #ByteRTCReturnStatus} for specific reasons.
23519
+ * @note
23520
+ * - Calling this API to update the subscribe configuration when the user has subscribed the remote user either by calling this API or by auto-subscribe.
23521
+ * - You must first get the remote stream information through rtcRoom:onUserPublishStreamVideo:uid:isPublish:{@link #ByteRTCRoomDelegate#rtcRoom:onUserPublishStreamVideo:uid:isPublish} before calling this API to subscribe to streams accordingly.
23522
+ * - After calling this API, you will be informed of the calling result with onVideoSubscribeStateChanged{@link #ByteRTCRoomDelegate#onVideoSubscribeStateChanged}.
23523
+ * - Once the local user subscribes to the stream of a remote user, the subscription to the remote user will sustain until the local user leaves the room or unsubscribe from it by calling subscribeStreamVideo{@link #IRTCRoom#subscribeStreamVideo}.
23524
+ * - Any other exceptions will be included in onVideoSubscribeStateChanged{@link #ByteRTCRoomDelegate#onVideoSubscribeStateChanged}, see SubscribeStateChangeReason{@link #SubscribeStateChangeReason} for the reasons.
23525
+ *
23526
+ */
23527
+ ByteRTCRoom_1.prototype.subscribeStreamVideo = function (userId, subscribe) {
22858
23528
  throw new Error('not implement');
22859
23529
  };
22860
- ByteRTCRoom_1.prototype.publishScreen = function (type) {
23530
+ /** {en}
23531
+ * @detail api
23532
+ * @valid since 3.60.
23533
+ * @brief Subscribes to specific remote media streams captured by the local microphone. Or update the subscribe options of the subscribed user.
23534
+ * @param userId The ID of the remote user who published the target media stream.
23535
+ * @param subscribe Whether to subscribe to the audio stream.
23536
+ * @return API call result: <br>
23537
+ * - 0: Success.
23538
+ * - <0: Failure. See ByteRTCReturnStatus{@link #ByteRTCReturnStatus} for specific reasons.
23539
+ * @note
23540
+ * - Calling this API to update the subscribe configuration when the user has subscribed the remote user either by calling this API or by auto-subscribe.
23541
+ * - You must first get the remote stream information through rtcRoom:onUserPublishStreamAudio:uid:isPublish:{@link #ByteRTCRoomDelegate#rtcRoom:onUserPublishStreamAudio:uid:isPublish} before calling this API to subscribe to streams accordingly.
23542
+ * - After calling this API, you will be informed of the calling result with onAudioSubscribeStateChanged{@link #ByteRTCRoomDelegate#onAudioSubscribeStateChanged}.
23543
+ * - Once the local user subscribes to the stream of a remote user, the subscription to the remote user will sustain until the local user leaves the room or unsubscribe from it by calling subscribeStreamAudio{@link #IRTCRoom#subscribeStreamAudio}.
23544
+ * - Any other exceptions will be included in onAudioSubscribeStateChanged{@link #ByteRTCRoomDelegate#onAudioSubscribeStateChanged}, see ErrorCode{@link #ErrorCode} for the reasons.
23545
+ *
23546
+ */
23547
+ ByteRTCRoom_1.prototype.subscribeStreamAudio = function (userId, subscribe) {
22861
23548
  throw new Error('not implement');
22862
23549
  };
22863
- ByteRTCRoom_1.prototype.unpublishScreen = function (type) {
23550
+ /** {en}
23551
+ * @detail api
23552
+ * @valid since 3.60.
23553
+ * @brief Subscribes to specific screen sharing media stream. Or update the subscribe options of the subscribed user.
23554
+ * @param userId The ID of the remote user who published the target screen video stream.
23555
+ * @param subscribe Whether to subscribe to the screen video stream.
23556
+ * @return API call result: <br>
23557
+ * - 0: Success.
23558
+ * - <0: Failure. See ByteRTCReturnStatus{@link #ByteRTCReturnStatus} for specific reasons.
23559
+ * @note
23560
+ * - Calling this API to update the subscribe configuration when the user has subscribed the remote user either by calling this API or by auto-subscribe.
23561
+ * - You must first get the remote stream information through rtcRoom:onUserPublishScreenVideo:uid:isPublish:{@link #ByteRTCRoomDelegate#rtcRoom:onUserPublishScreenVideo:uid:isPublish} before calling this API to subscribe to streams accordingly.
23562
+ * - After calling this API, you will be informed of the calling result with onScreenVideoSubscribeStateChanged{@link #ByteRTCRoomDelegate#onScreenVideoSubscribeStateChanged}.
23563
+ * - Once the local user subscribes to the stream of a remote user, the subscription to the remote user will sustain until the local user leaves the room or unsubscribe from it by calling subscribeScreenVideo{@link #IRTCRoom#subscribeScreenVideo}.
23564
+ * - Any other exceptions will be included in onScreenVideoSubscribeStateChanged{@link #ByteRTCRoomDelegate#onScreenVideoSubscribeStateChanged}, see SubscribeStateChangeReason{@link #SubscribeStateChangeReason} for the reasons.
23565
+ *
23566
+ */
23567
+ ByteRTCRoom_1.prototype.subscribeScreenVideo = function (userId, subscribe) {
22864
23568
  throw new Error('not implement');
22865
23569
  };
22866
- ByteRTCRoom_1.prototype.subscribeStream = function (userId, mediaStreamType) {
23570
+ /** {en}
23571
+ * @detail api
23572
+ * @valid since 3.60.
23573
+ * @brief Subscribes to specific screen sharing media stream. Or update the subscribe options of the subscribed user.
23574
+ * @param userId The ID of the remote user who published the target screen audio stream.
23575
+ * @param subscribe Whether to subscribe to the screen audio stream.
23576
+ * @return API call result: <br>
23577
+ * - 0: Success.
23578
+ * - <0: Failure. See ByteRTCReturnStatus{@link #ByteRTCReturnStatus} for specific reasons.
23579
+ * @note
23580
+ * - Calling this API to update the subscribe configuration when the user has subscribed the remote user either by calling this API or by auto-subscribe.
23581
+ * - You must first get the remote stream information through rtcRoom:onUserPublishScreenAudio:uid:isPublish:{@link #ByteRTCRoomDelegate#rtcRoom:onUserPublishScreenAudio:uid:isPublish} before calling this API to subscribe to streams accordingly.
23582
+ * - After calling this API, you will be informed of the calling result with onScreenAudioSubscribeStateChanged{@link #ByteRTCRoomDelegate#onScreenAudioSubscribeStateChanged}.
23583
+ * - Once the local user subscribes to the stream of a remote user, the subscription to the remote user will sustain until the local user leaves the room or unsubscribe from it by calling subscribeScreenAudio{@link #IRTCRoom#subscribeScreenAudio}.
23584
+ * - Any other exceptions will be included in onScreenAudioSubscribeStateChanged{@link #ByteRTCRoomDelegate#onScreenAudioSubscribeStateChanged}, see SubscribeStateChangeReason{@link #SubscribeStateChangeReason} for the reasons.
23585
+ *
23586
+ */
23587
+ ByteRTCRoom_1.prototype.subscribeScreenAudio = function (userId, subscribe) {
22867
23588
  throw new Error('not implement');
22868
23589
  };
22869
23590
  ByteRTCRoom_1.prototype.subscribeAllStreamsWithMediaStreamType = function (mediaStreamType) {
22870
23591
  throw new Error('not implement');
22871
23592
  };
22872
- ByteRTCRoom_1.prototype.unsubscribeStream = function (userId, mediaStreamType) {
22873
- throw new Error('not implement');
22874
- };
22875
23593
  ByteRTCRoom_1.prototype.unsubscribeAllStreamsWithMediaStreamType = function (mediaStreamType) {
22876
23594
  throw new Error('not implement');
22877
23595
  };
22878
- ByteRTCRoom_1.prototype.subscribeScreen = function (userId, mediaStreamType) {
22879
- throw new Error('not implement');
22880
- };
22881
- ByteRTCRoom_1.prototype.unsubscribeScreen = function (userId, mediaStreamType) {
22882
- throw new Error('not implement');
22883
- };
22884
23596
  ByteRTCRoom_1.prototype.pauseAllSubscribedStream = function (mediaType) {
22885
23597
  throw new Error('not implement');
22886
23598
  };
@@ -22956,24 +23668,16 @@ var ByteRTCRoom = function () {
22956
23668
  _leaveRoom_decorators = [NativeMethodSync('leaveRoom')];
22957
23669
  _updateToken_decorators = [NativeMethodSync('updateToken:')];
22958
23670
  _setRemoteVideoConfig_decorators = [NativeMethodSync('setRemoteVideoConfig:remoteVideoConfig:')];
22959
- _publishStream_decorators = [NativeMethodSync('publishStream:')];
22960
23671
  _publishStreamVideo_decorators = [NativeMethodSync('publishStreamVideo:')];
22961
23672
  _publishStreamAudio_decorators = [NativeMethodSync('publishStreamAudio:')];
22962
- _subscribeStreamVideo_decorators = [NativeMethodSync('subscribeStreamVideo:subscribe:')];
22963
- _subscribeStreamAudio_decorators = [NativeMethodSync('subscribeStreamAudio:subscribe:')];
22964
23673
  _publishScreenVideo_decorators = [NativeMethodSync('publishScreenVideo:')];
22965
23674
  _publishScreenAudio_decorators = [NativeMethodSync('publishScreenAudio:')];
23675
+ _subscribeStreamVideo_decorators = [NativeMethodSync('subscribeStreamVideo:subscribe:')];
23676
+ _subscribeStreamAudio_decorators = [NativeMethodSync('subscribeStreamAudio:subscribe:')];
22966
23677
  _subscribeScreenVideo_decorators = [NativeMethodSync('subscribeScreenVideo:subscribe:')];
22967
- _subscribeScreenAudio_decorators = [NativeMethodSync('subscribeScreenAudio:subscribe')];
22968
- _unpublishStream_decorators = [NativeMethodSync('unpublishStream:')];
22969
- _publishScreen_decorators = [NativeMethodSync('publishScreen:')];
22970
- _unpublishScreen_decorators = [NativeMethodSync('unpublishScreen:')];
22971
- _subscribeStream_decorators = [NativeMethodSync('subscribeStream:mediaStreamType:')];
23678
+ _subscribeScreenAudio_decorators = [NativeMethodSync('subscribeScreenAudio:subscribe:')];
22972
23679
  _subscribeAllStreamsWithMediaStreamType_decorators = [NativeMethodSync('subscribeAllStreamsWithMediaStreamType:')];
22973
- _unsubscribeStream_decorators = [NativeMethodSync('unsubscribeStream:mediaStreamType:')];
22974
23680
  _unsubscribeAllStreamsWithMediaStreamType_decorators = [NativeMethodSync('unsubscribeAllStreamsWithMediaStreamType:')];
22975
- _subscribeScreen_decorators = [NativeMethodSync('subscribeScreen:mediaStreamType:')];
22976
- _unsubscribeScreen_decorators = [NativeMethodSync('unsubscribeScreen:mediaStreamType:')];
22977
23681
  _pauseAllSubscribedStream_decorators = [NativeMethodSync('pauseAllSubscribedStream:')];
22978
23682
  _resumeAllSubscribedStream_decorators = [NativeMethodSync('resumeAllSubscribedStream:')];
22979
23683
  _sendUserMessage_decorators = [NativeMethodSync('sendUserMessage:message:config:')];
@@ -23003,24 +23707,16 @@ var ByteRTCRoom = function () {
23003
23707
  __esDecorate(_classThis, null, _leaveRoom_decorators, { kind: "method", name: "leaveRoom", static: false, private: false, access: { has: function (obj) { return "leaveRoom" in obj; }, get: function (obj) { return obj.leaveRoom; } }, metadata: _metadata }, null, _instanceExtraInitializers);
23004
23708
  __esDecorate(_classThis, null, _updateToken_decorators, { kind: "method", name: "updateToken", static: false, private: false, access: { has: function (obj) { return "updateToken" in obj; }, get: function (obj) { return obj.updateToken; } }, metadata: _metadata }, null, _instanceExtraInitializers);
23005
23709
  __esDecorate(_classThis, null, _setRemoteVideoConfig_decorators, { kind: "method", name: "setRemoteVideoConfig", static: false, private: false, access: { has: function (obj) { return "setRemoteVideoConfig" in obj; }, get: function (obj) { return obj.setRemoteVideoConfig; } }, metadata: _metadata }, null, _instanceExtraInitializers);
23006
- __esDecorate(_classThis, null, _publishStream_decorators, { kind: "method", name: "publishStream", static: false, private: false, access: { has: function (obj) { return "publishStream" in obj; }, get: function (obj) { return obj.publishStream; } }, metadata: _metadata }, null, _instanceExtraInitializers);
23007
23710
  __esDecorate(_classThis, null, _publishStreamVideo_decorators, { kind: "method", name: "publishStreamVideo", static: false, private: false, access: { has: function (obj) { return "publishStreamVideo" in obj; }, get: function (obj) { return obj.publishStreamVideo; } }, metadata: _metadata }, null, _instanceExtraInitializers);
23008
23711
  __esDecorate(_classThis, null, _publishStreamAudio_decorators, { kind: "method", name: "publishStreamAudio", static: false, private: false, access: { has: function (obj) { return "publishStreamAudio" in obj; }, get: function (obj) { return obj.publishStreamAudio; } }, metadata: _metadata }, null, _instanceExtraInitializers);
23009
- __esDecorate(_classThis, null, _subscribeStreamVideo_decorators, { kind: "method", name: "subscribeStreamVideo", static: false, private: false, access: { has: function (obj) { return "subscribeStreamVideo" in obj; }, get: function (obj) { return obj.subscribeStreamVideo; } }, metadata: _metadata }, null, _instanceExtraInitializers);
23010
- __esDecorate(_classThis, null, _subscribeStreamAudio_decorators, { kind: "method", name: "subscribeStreamAudio", static: false, private: false, access: { has: function (obj) { return "subscribeStreamAudio" in obj; }, get: function (obj) { return obj.subscribeStreamAudio; } }, metadata: _metadata }, null, _instanceExtraInitializers);
23011
23712
  __esDecorate(_classThis, null, _publishScreenVideo_decorators, { kind: "method", name: "publishScreenVideo", static: false, private: false, access: { has: function (obj) { return "publishScreenVideo" in obj; }, get: function (obj) { return obj.publishScreenVideo; } }, metadata: _metadata }, null, _instanceExtraInitializers);
23012
23713
  __esDecorate(_classThis, null, _publishScreenAudio_decorators, { kind: "method", name: "publishScreenAudio", static: false, private: false, access: { has: function (obj) { return "publishScreenAudio" in obj; }, get: function (obj) { return obj.publishScreenAudio; } }, metadata: _metadata }, null, _instanceExtraInitializers);
23714
+ __esDecorate(_classThis, null, _subscribeStreamVideo_decorators, { kind: "method", name: "subscribeStreamVideo", static: false, private: false, access: { has: function (obj) { return "subscribeStreamVideo" in obj; }, get: function (obj) { return obj.subscribeStreamVideo; } }, metadata: _metadata }, null, _instanceExtraInitializers);
23715
+ __esDecorate(_classThis, null, _subscribeStreamAudio_decorators, { kind: "method", name: "subscribeStreamAudio", static: false, private: false, access: { has: function (obj) { return "subscribeStreamAudio" in obj; }, get: function (obj) { return obj.subscribeStreamAudio; } }, metadata: _metadata }, null, _instanceExtraInitializers);
23013
23716
  __esDecorate(_classThis, null, _subscribeScreenVideo_decorators, { kind: "method", name: "subscribeScreenVideo", static: false, private: false, access: { has: function (obj) { return "subscribeScreenVideo" in obj; }, get: function (obj) { return obj.subscribeScreenVideo; } }, metadata: _metadata }, null, _instanceExtraInitializers);
23014
23717
  __esDecorate(_classThis, null, _subscribeScreenAudio_decorators, { kind: "method", name: "subscribeScreenAudio", static: false, private: false, access: { has: function (obj) { return "subscribeScreenAudio" in obj; }, get: function (obj) { return obj.subscribeScreenAudio; } }, metadata: _metadata }, null, _instanceExtraInitializers);
23015
- __esDecorate(_classThis, null, _unpublishStream_decorators, { kind: "method", name: "unpublishStream", static: false, private: false, access: { has: function (obj) { return "unpublishStream" in obj; }, get: function (obj) { return obj.unpublishStream; } }, metadata: _metadata }, null, _instanceExtraInitializers);
23016
- __esDecorate(_classThis, null, _publishScreen_decorators, { kind: "method", name: "publishScreen", static: false, private: false, access: { has: function (obj) { return "publishScreen" in obj; }, get: function (obj) { return obj.publishScreen; } }, metadata: _metadata }, null, _instanceExtraInitializers);
23017
- __esDecorate(_classThis, null, _unpublishScreen_decorators, { kind: "method", name: "unpublishScreen", static: false, private: false, access: { has: function (obj) { return "unpublishScreen" in obj; }, get: function (obj) { return obj.unpublishScreen; } }, metadata: _metadata }, null, _instanceExtraInitializers);
23018
- __esDecorate(_classThis, null, _subscribeStream_decorators, { kind: "method", name: "subscribeStream", static: false, private: false, access: { has: function (obj) { return "subscribeStream" in obj; }, get: function (obj) { return obj.subscribeStream; } }, metadata: _metadata }, null, _instanceExtraInitializers);
23019
23718
  __esDecorate(_classThis, null, _subscribeAllStreamsWithMediaStreamType_decorators, { kind: "method", name: "subscribeAllStreamsWithMediaStreamType", static: false, private: false, access: { has: function (obj) { return "subscribeAllStreamsWithMediaStreamType" in obj; }, get: function (obj) { return obj.subscribeAllStreamsWithMediaStreamType; } }, metadata: _metadata }, null, _instanceExtraInitializers);
23020
- __esDecorate(_classThis, null, _unsubscribeStream_decorators, { kind: "method", name: "unsubscribeStream", static: false, private: false, access: { has: function (obj) { return "unsubscribeStream" in obj; }, get: function (obj) { return obj.unsubscribeStream; } }, metadata: _metadata }, null, _instanceExtraInitializers);
23021
23719
  __esDecorate(_classThis, null, _unsubscribeAllStreamsWithMediaStreamType_decorators, { kind: "method", name: "unsubscribeAllStreamsWithMediaStreamType", static: false, private: false, access: { has: function (obj) { return "unsubscribeAllStreamsWithMediaStreamType" in obj; }, get: function (obj) { return obj.unsubscribeAllStreamsWithMediaStreamType; } }, metadata: _metadata }, null, _instanceExtraInitializers);
23022
- __esDecorate(_classThis, null, _subscribeScreen_decorators, { kind: "method", name: "subscribeScreen", static: false, private: false, access: { has: function (obj) { return "subscribeScreen" in obj; }, get: function (obj) { return obj.subscribeScreen; } }, metadata: _metadata }, null, _instanceExtraInitializers);
23023
- __esDecorate(_classThis, null, _unsubscribeScreen_decorators, { kind: "method", name: "unsubscribeScreen", static: false, private: false, access: { has: function (obj) { return "unsubscribeScreen" in obj; }, get: function (obj) { return obj.unsubscribeScreen; } }, metadata: _metadata }, null, _instanceExtraInitializers);
23024
23720
  __esDecorate(_classThis, null, _pauseAllSubscribedStream_decorators, { kind: "method", name: "pauseAllSubscribedStream", static: false, private: false, access: { has: function (obj) { return "pauseAllSubscribedStream" in obj; }, get: function (obj) { return obj.pauseAllSubscribedStream; } }, metadata: _metadata }, null, _instanceExtraInitializers);
23025
23721
  __esDecorate(_classThis, null, _resumeAllSubscribedStream_decorators, { kind: "method", name: "resumeAllSubscribedStream", static: false, private: false, access: { has: function (obj) { return "resumeAllSubscribedStream" in obj; }, get: function (obj) { return obj.resumeAllSubscribedStream; } }, metadata: _metadata }, null, _instanceExtraInitializers);
23026
23722
  __esDecorate(_classThis, null, _sendUserMessage_decorators, { kind: "method", name: "sendUserMessage", static: false, private: false, access: { has: function (obj) { return "sendUserMessage" in obj; }, get: function (obj) { return obj.sendUserMessage; } }, metadata: _metadata }, null, _instanceExtraInitializers);
@@ -24820,6 +25516,14 @@ var ByteRTCRoomDelegate = function () {
24820
25516
  rtcRoom$onStreamStateChanged$withUid$state$extraInfo: 'rtcRoom:onStreamStateChanged:withUid:state:extraInfo:',
24821
25517
  rtcRoom$onLeaveRoom: 'rtcRoom:onLeaveRoom:',
24822
25518
  rtcRoom$onAVSyncStateChange: 'rtcRoom:onAVSyncStateChange:',
25519
+ rtcRoom$onVideoPublishStateChanged$Uid$state$reason: 'rtcRoom:onVideoPublishStateChanged:Uid:state:reason:',
25520
+ rtcRoom$onAudioPublishStateChanged$Uid$state$reason: 'rtcRoom:onAudioPublishStateChanged:Uid:state:reason:',
25521
+ rtcRoom$onScreenVideoPublishStateChanged$Uid$state$reason: 'rtcRoom:onScreenVideoPublishStateChanged:Uid:state:reason:',
25522
+ rtcRoom$onScreenAudioPublishStateChanged$Uid$state$reason: 'rtcRoom:onScreenAudioPublishStateChanged:Uid:state:reason:',
25523
+ rtcRoom$onVideoSubscribeStateChanged$Uid$state$reason: 'rtcRoom:onVideoSubscribeStateChanged:Uid:state:reason:',
25524
+ rtcRoom$onAudioSubscribeStateChanged$Uid$state$reason: 'rtcRoom:onAudioSubscribeStateChanged:Uid:state:reason:',
25525
+ rtcRoom$onScreenVideoSubscribeStateChanged$Uid$state$reason: 'rtcRoom:onScreenVideoSubscribeStateChanged:Uid:state:reason:',
25526
+ rtcRoom$onScreenAudioSubscribeStateChanged$Uid$state$reason: 'rtcRoom:onScreenAudioSubscribeStateChanged:Uid:state:reason:',
24823
25527
  rtcRoom$onRoomStats: 'rtcRoom:onRoomStats:',
24824
25528
  rtcRoom$onLocalStreamStats: 'rtcRoom:onLocalStreamStats:',
24825
25529
  rtcRoom$onRemoteStreamStats: 'rtcRoom:onRemoteStreamStats:',
@@ -24828,11 +25532,11 @@ var ByteRTCRoomDelegate = function () {
24828
25532
  onTokenWillExpire: 'onTokenWillExpire:',
24829
25533
  onPublishPrivilegeTokenWillExpire: 'onPublishPrivilegeTokenWillExpire:',
24830
25534
  onSubscribePrivilegeTokenWillExpire: 'onSubscribePrivilegeTokenWillExpire:',
24831
- rtcRoom$onUserPublishStream$type: 'rtcRoom:onUserPublishStream:type:',
24832
- rtcRoom$onUserUnpublishStream$type$reason: 'rtcRoom:onUserUnpublishStream:type:reason:',
24833
- rtcRoom$onUserPublishScreen$type: 'rtcRoom:onUserPublishScreen:type:',
24834
- rtcRoom$onUserUnpublishScreen$type$reason: 'rtcRoom:onUserUnpublishScreen:type:reason:',
24835
- rtcRoom$onStreamSubscribed$userId$subscribeConfig: 'rtcRoom:onStreamSubscribed:userId:subscribeConfig:',
25535
+ rtcRoom$onAVSyncEvent$userId$eventCode: 'rtcRoom:onAVSyncEvent:userId:eventCode:',
25536
+ rtcRoom$onUserPublishStreamVideo$uid$isPublish: 'rtcRoom:onUserPublishStreamVideo:uid:isPublish:',
25537
+ rtcRoom$onUserPublishStreamAudio$uid$isPublish: 'rtcRoom:onUserPublishStreamAudio:uid:isPublish:',
25538
+ rtcRoom$onUserPublishScreenVideo$uid$isPublish: 'rtcRoom:onUserPublishScreenVideo:uid:isPublish:',
25539
+ rtcRoom$onUserPublishScreenAudio$uid$isPublish: 'rtcRoom:onUserPublishScreenAudio:uid:isPublish:',
24836
25540
  rtcRoom$onRoomMessageReceived$message: 'rtcRoom:onRoomMessageReceived:message:',
24837
25541
  rtcRoom$onRoomBinaryMessageReceived$message: 'rtcRoom:onRoomBinaryMessageReceived:message:',
24838
25542
  rtcRoom$onUserMessageReceived$message: 'rtcRoom:onUserMessageReceived:message:',
@@ -24852,7 +25556,6 @@ var ByteRTCRoomDelegate = function () {
24852
25556
  rtcRoom$onRoomWarning: 'rtcRoom:onRoomWarning:',
24853
25557
  rtcRoom$onRoomError: 'rtcRoom:onRoomError:',
24854
25558
  rtcRoom$onStreamAdd: 'rtcRoom:onStreamAdd:',
24855
- rtcRoom$onStreamRemove$stream$reason: 'rtcRoom:onStreamRemove:stream:reason:',
24856
25559
  })];
24857
25560
  var _classDescriptor;
24858
25561
  var _classExtraInitializers = [];
@@ -25496,6 +26199,41 @@ var RTCNetworkType;
25496
26199
  RTCNetworkType[RTCNetworkType["NONE"] = 7] = "NONE";
25497
26200
  RTCNetworkType[RTCNetworkType["ByteRTCNetworkTypeDisconnected"] = 8] = "ByteRTCNetworkTypeDisconnected";
25498
26201
  })(RTCNetworkType || (RTCNetworkType = {}));
26202
+ var SubscribeStateChangeReason;
26203
+ (function (SubscribeStateChangeReason) {
26204
+ SubscribeStateChangeReason[SubscribeStateChangeReason["SUBSCRIBE"] = 0] = "SUBSCRIBE";
26205
+ SubscribeStateChangeReason[SubscribeStateChangeReason["UNSUBSCRIBE"] = 1] = "UNSUBSCRIBE";
26206
+ SubscribeStateChangeReason[SubscribeStateChangeReason["REMOTE_PUBLISH"] = 2] = "REMOTE_PUBLISH";
26207
+ SubscribeStateChangeReason[SubscribeStateChangeReason["REMOTE_UNPUBLISH"] = 3] = "REMOTE_UNPUBLISH";
26208
+ SubscribeStateChangeReason[SubscribeStateChangeReason["STREAM_FAILED_5XX"] = 4] = "STREAM_FAILED_5XX";
26209
+ SubscribeStateChangeReason[SubscribeStateChangeReason["STREAM_FAILED_404"] = 5] = "STREAM_FAILED_404";
26210
+ SubscribeStateChangeReason[SubscribeStateChangeReason["OVER_STREAM_SUBSCRIBE_LIMIT"] = 6] = "OVER_STREAM_SUBSCRIBE_LIMIT";
26211
+ SubscribeStateChangeReason[SubscribeStateChangeReason["NO_SUBSCRIBE_PERMISSION"] = 7] = "NO_SUBSCRIBE_PERMISSION";
26212
+ })(SubscribeStateChangeReason || (SubscribeStateChangeReason = {}));
26213
+ var PublishStateChangeReason;
26214
+ (function (PublishStateChangeReason) {
26215
+ PublishStateChangeReason[PublishStateChangeReason["PUBLISH"] = 0] = "PUBLISH";
26216
+ PublishStateChangeReason[PublishStateChangeReason["UNPUBLISH"] = 1] = "UNPUBLISH";
26217
+ PublishStateChangeReason[PublishStateChangeReason["NO_PUBLISH_PERMISSION"] = 2] = "NO_PUBLISH_PERMISSION";
26218
+ PublishStateChangeReason[PublishStateChangeReason["OVER_STREAM_PUBLISH_LIMIT"] = 3] = "OVER_STREAM_PUBLISH_LIMIT";
26219
+ PublishStateChangeReason[PublishStateChangeReason["MULTIROOM_UNPUBLISH_FAILED"] = 4] = "MULTIROOM_UNPUBLISH_FAILED";
26220
+ PublishStateChangeReason[PublishStateChangeReason["PUBLISH_STREAM_FAILED"] = 5] = "PUBLISH_STREAM_FAILED";
26221
+ PublishStateChangeReason[PublishStateChangeReason["PUBLISH_STREAM_FORBIDEN"] = 6] = "PUBLISH_STREAM_FORBIDEN";
26222
+ PublishStateChangeReason[PublishStateChangeReason["USER_IN_PUBLISH"] = 7] = "USER_IN_PUBLISH";
26223
+ })(PublishStateChangeReason || (PublishStateChangeReason = {}));
26224
+ var PublishState;
26225
+ (function (PublishState) {
26226
+ /** {en}
26227
+ * @brief Successfully published.
26228
+ *
26229
+ */
26230
+ PublishState[PublishState["PUBLISHED"] = 0] = "PUBLISHED";
26231
+ /** {en}
26232
+ * @brief Failed to publish.
26233
+ *
26234
+ */
26235
+ PublishState[PublishState["UNPUBLISHED"] = 1] = "UNPUBLISHED";
26236
+ })(PublishState || (PublishState = {}));
25499
26237
  var RTCUserOfflineReason;
25500
26238
  (function (RTCUserOfflineReason) {
25501
26239
  RTCUserOfflineReason[RTCUserOfflineReason["ByteRTCUserOfflineReasonQuit"] = 0] = "ByteRTCUserOfflineReasonQuit";
@@ -30168,11 +30906,17 @@ var RemoteMirrorType;
30168
30906
  })(RemoteMirrorType || (RemoteMirrorType = {}));
30169
30907
  var SubscribeState;
30170
30908
  (function (SubscribeState) {
30171
- SubscribeState[SubscribeState["SUBSCRIBE_STATE_SUCCESS"] = 0] = "SUBSCRIBE_STATE_SUCCESS";
30172
- SubscribeState[SubscribeState["SUBSCRIBE_STATE_FAILED_NOT_IN_ROOM"] = 1] = "SUBSCRIBE_STATE_FAILED_NOT_IN_ROOM";
30173
- SubscribeState[SubscribeState["SUBSCRIBE_STATE_FAILED_STREAM_NOT_FOUND"] = 2] = "SUBSCRIBE_STATE_FAILED_STREAM_NOT_FOUND";
30174
- SubscribeState[SubscribeState["SUBSCRIBE_STATE_FAILED_SIGNAL"] = 3] = "SUBSCRIBE_STATE_FAILED_SIGNAL";
30175
- SubscribeState[SubscribeState["ByteRTCSubscribeStateFailedOverLimit"] = 4] = "ByteRTCSubscribeStateFailedOverLimit";
30909
+ /** {en}
30910
+ * @platform android
30911
+ * @brief Successfully subscribed.
30912
+ *
30913
+ */
30914
+ SubscribeState[SubscribeState["SUBSCRIBED"] = 0] = "SUBSCRIBED";
30915
+ /** {en}
30916
+ * @brief Failed to subscribe.
30917
+ *
30918
+ */
30919
+ SubscribeState[SubscribeState["UNSUBSCRIBED"] = 1] = "UNSUBSCRIBED";
30176
30920
  })(SubscribeState || (SubscribeState = {}));
30177
30921
  var VirtualBackgroundSource = function () {
30178
30922
  var _classDecorators = [PackClass()];
@@ -31750,8 +32494,7 @@ var RTCRoomConfig = function () {
31750
32494
  }
31751
32495
  Object.defineProperty(RTCRoomConfig_1.prototype, "profile", {
31752
32496
  /** {en}
31753
- * @brief Room profile. See {@link ChannelProfile ChannelProfile}. The default is `CHANNEL_PROFILE_COMMUNICATION`. The setting cannot be changed after joining the room.
31754
- *
32497
+ * @brief Room profile. See ChannelProfile{@link #ChannelProfile}. The default is `CHANNEL_PROFILE_COMMUNICATION`. The setting cannot be changed after joining the room.
31755
32498
  *
31756
32499
  */
31757
32500
  get: function () {
@@ -31781,20 +32524,20 @@ var RTCRoomConfig = function () {
31781
32524
  enumerable: false,
31782
32525
  configurable: true
31783
32526
  });
31784
- Object.defineProperty(RTCRoomConfig_1.prototype, "isAutoPublish", {
32527
+ Object.defineProperty(RTCRoomConfig_1.prototype, "isPublishAudio", {
31785
32528
  /** {en}
31786
- * @brief Whether to publish media streams automatically. The default is automatic publishing. <br>
31787
- * Only one of the rooms the user joined can be set to auto-publish. If no settings are made in each room, the stream is automatically published in the first room joined by default. <br>
31788
- * If you call {@link setUserVisibility setUserVisibility} to set your own visibility to false, you will not publish media streams regardless of the value of `isAutoPublish`.
32529
+ * @brief Whether to publish media streams automatically. The default is automatic publishing.
32530
+ * + Changing the user role to audience via `setUserVisibility` will void this setting.
32531
+ * + You can publish streams in only one of the rooms you have participated. If you have joined multiple rooms with the automatically publishing setting, the stream will be added into the first room you have joined only.
31789
32532
  *
31790
32533
  */
31791
32534
  get: function () {
31792
32535
  var $os = env.getOS();
31793
32536
  if ($os === 'android') {
31794
- return this._instance.isAutoPublish;
32537
+ return this._instance.isPublishAudio;
31795
32538
  }
31796
32539
  else if ($os === 'ios') {
31797
- return this._instance.isAutoPublish;
32540
+ return this._instance.isPublishAudio;
31798
32541
  }
31799
32542
  else {
31800
32543
  throw new Error('Not Support Platform ' + $os);
@@ -31803,10 +32546,10 @@ var RTCRoomConfig = function () {
31803
32546
  set: function (value) {
31804
32547
  var $os = env.getOS();
31805
32548
  if ($os === 'android') {
31806
- this._instance.isAutoPublish = value;
32549
+ this._instance.isPublishAudio = value;
31807
32550
  }
31808
32551
  else if ($os === 'ios') {
31809
- this._instance.isAutoPublish = value;
32552
+ this._instance.isPublishAudio = value;
31810
32553
  }
31811
32554
  else {
31812
32555
  throw new Error('Not Support Platform ' + $os);
@@ -31815,20 +32558,20 @@ var RTCRoomConfig = function () {
31815
32558
  enumerable: false,
31816
32559
  configurable: true
31817
32560
  });
31818
- Object.defineProperty(RTCRoomConfig_1.prototype, "isAutoSubscribeAudio", {
32561
+ Object.defineProperty(RTCRoomConfig_1.prototype, "isPublishVideo", {
31819
32562
  /** {en}
31820
- * @brief Whether to automatically subscribe to the audio stream. The default is automatic subscription. <br>
31821
- * This setting affects both the main stream and the screen-sharing stream.
31822
- *
32563
+ * @brief Whether to publish media streams automatically. The default is automatic publishing.
32564
+ * + Changing the user role to audience via `setUserVisibility` will void this setting.
32565
+ * + You can publish streams in only one of the rooms you have participated. If you have joined multiple rooms with the automatically publishing setting, the stream will be added into the first room you have joined only.
31823
32566
  *
31824
32567
  */
31825
32568
  get: function () {
31826
32569
  var $os = env.getOS();
31827
32570
  if ($os === 'android') {
31828
- return this._instance.isAutoSubscribeAudio;
32571
+ return this._instance.isPublishVideo;
31829
32572
  }
31830
32573
  else if ($os === 'ios') {
31831
- return this._instance.isAutoSubscribeAudio;
32574
+ return this._instance.isPublishVideo;
31832
32575
  }
31833
32576
  else {
31834
32577
  throw new Error('Not Support Platform ' + $os);
@@ -31837,10 +32580,10 @@ var RTCRoomConfig = function () {
31837
32580
  set: function (value) {
31838
32581
  var $os = env.getOS();
31839
32582
  if ($os === 'android') {
31840
- this._instance.isAutoSubscribeAudio = value;
32583
+ this._instance.isPublishVideo = value;
31841
32584
  }
31842
32585
  else if ($os === 'ios') {
31843
- this._instance.isAutoSubscribeAudio = value;
32586
+ this._instance.isPublishVideo = value;
31844
32587
  }
31845
32588
  else {
31846
32589
  throw new Error('Not Support Platform ' + $os);
@@ -31849,19 +32592,19 @@ var RTCRoomConfig = function () {
31849
32592
  enumerable: false,
31850
32593
  configurable: true
31851
32594
  });
31852
- Object.defineProperty(RTCRoomConfig_1.prototype, "isAutoSubscribeVideo", {
32595
+ Object.defineProperty(RTCRoomConfig_1.prototype, "isAutoSubscribeAudio", {
31853
32596
  /** {en}
31854
- * @brief Whether to automatically subscribe to the main video stream. The default is automatic subscription. <br>
32597
+ * @brief Whether to automatically subscribe to the audio stream. The default is automatic subscription. <br>
31855
32598
  * This setting affects both the main stream and the screen-sharing stream.
31856
32599
  *
31857
32600
  */
31858
32601
  get: function () {
31859
32602
  var $os = env.getOS();
31860
32603
  if ($os === 'android') {
31861
- return this._instance.isAutoSubscribeVideo;
32604
+ return this._instance.isAutoSubscribeAudio;
31862
32605
  }
31863
32606
  else if ($os === 'ios') {
31864
- return this._instance.isAutoSubscribeVideo;
32607
+ return this._instance.isAutoSubscribeAudio;
31865
32608
  }
31866
32609
  else {
31867
32610
  throw new Error('Not Support Platform ' + $os);
@@ -31870,10 +32613,10 @@ var RTCRoomConfig = function () {
31870
32613
  set: function (value) {
31871
32614
  var $os = env.getOS();
31872
32615
  if ($os === 'android') {
31873
- this._instance.isAutoSubscribeVideo = value;
32616
+ this._instance.isAutoSubscribeAudio = value;
31874
32617
  }
31875
32618
  else if ($os === 'ios') {
31876
- this._instance.isAutoSubscribeVideo = value;
32619
+ this._instance.isAutoSubscribeAudio = value;
31877
32620
  }
31878
32621
  else {
31879
32622
  throw new Error('Not Support Platform ' + $os);
@@ -31882,18 +32625,19 @@ var RTCRoomConfig = function () {
31882
32625
  enumerable: false,
31883
32626
  configurable: true
31884
32627
  });
31885
- Object.defineProperty(RTCRoomConfig_1.prototype, "remoteVideoConfig", {
32628
+ Object.defineProperty(RTCRoomConfig_1.prototype, "isAutoSubscribeVideo", {
31886
32629
  /** {en}
31887
- * @brief Expected configuration of remote video stream, see {@link RemoteVideoConfig RemoteVideoConfig}.
32630
+ * @brief Whether to automatically subscribe to the main video stream. The default is automatic subscription. <br>
32631
+ * This setting affects both the main stream and the screen-sharing stream.
31888
32632
  *
31889
32633
  */
31890
32634
  get: function () {
31891
32635
  var $os = env.getOS();
31892
32636
  if ($os === 'android') {
31893
- return packObject(this._instance.remoteVideoConfig, RemoteVideoConfig);
32637
+ return this._instance.isAutoSubscribeVideo;
31894
32638
  }
31895
32639
  else if ($os === 'ios') {
31896
- return packObject(this._instance.remoteVideoConfig, RemoteVideoConfig);
32640
+ return this._instance.isAutoSubscribeVideo;
31897
32641
  }
31898
32642
  else {
31899
32643
  throw new Error('Not Support Platform ' + $os);
@@ -31902,10 +32646,10 @@ var RTCRoomConfig = function () {
31902
32646
  set: function (value) {
31903
32647
  var $os = env.getOS();
31904
32648
  if ($os === 'android') {
31905
- this._instance.remoteVideoConfig = unpackObject(value);
32649
+ this._instance.isAutoSubscribeVideo = value;
31906
32650
  }
31907
32651
  else if ($os === 'ios') {
31908
- this._instance.remoteVideoConfig = unpackObject(value);
32652
+ this._instance.isAutoSubscribeVideo = value;
31909
32653
  }
31910
32654
  else {
31911
32655
  throw new Error('Not Support Platform ' + $os);
@@ -31945,6 +32689,17 @@ var RTCRoomConfig = function () {
31945
32689
  throw new Error('Not Support Platform ' + $os);
31946
32690
  }
31947
32691
  };
32692
+ /**
32693
+ * @platform android
32694
+ */
32695
+ /**
32696
+ * @platform android
32697
+ */
32698
+ RTCRoomConfig_1.prototype.android_isPublishAudio$ = function () {
32699
+ var _this = this;
32700
+ var $ = function () { return _this._instance.isPublishAudio$(); };
32701
+ return $();
32702
+ };
31948
32703
  return RTCRoomConfig_1;
31949
32704
  }());
31950
32705
  __setFunctionName(_classThis, "RTCRoomConfig");
@@ -44372,12 +45127,50 @@ var MediaDeviceState;
44372
45127
  *
44373
45128
  */
44374
45129
  MediaDeviceState[MediaDeviceState["MEDIA_DEVICE_STATE_INTERRUPTION_ENDED"] = 6] = "MEDIA_DEVICE_STATE_INTERRUPTION_ENDED";
45130
+ /** {en}
45131
+ * @platform ios
45132
+ * @brief On
45133
+ *
45134
+ */
44375
45135
  MediaDeviceState[MediaDeviceState["ByteRTCMediaDeviceStateStarted"] = 7] = "ByteRTCMediaDeviceStateStarted";
45136
+ /** {en}
45137
+ * @platform ios
45138
+ * @brief Off
45139
+ *
45140
+ */
44376
45141
  MediaDeviceState[MediaDeviceState["ByteRTCMediaDeviceStateStopped"] = 8] = "ByteRTCMediaDeviceStateStopped";
45142
+ /** {en}
45143
+ * @platform ios
45144
+ * @brief Runtime error <br>
45145
+ * For example, when the media device is expected to be working but no data is received.
45146
+ *
45147
+ */
44377
45148
  MediaDeviceState[MediaDeviceState["ByteRTCMediaDeviceStateRuntimeError"] = 9] = "ByteRTCMediaDeviceStateRuntimeError";
45149
+ /** {en}
45150
+ * @platform ios
45151
+ * @brief Added <br>
45152
+ * Call enumerate-device api to update the device list when you get this notification.
45153
+ *
45154
+ */
44378
45155
  MediaDeviceState[MediaDeviceState["ByteRTCMediaDeviceStateAdded"] = 10] = "ByteRTCMediaDeviceStateAdded";
45156
+ /** {en}
45157
+ * @platform ios
45158
+ * @brief Removed <br>
45159
+ * Call enumerate-device api to update the device list when you get this notification.
45160
+ *
45161
+ */
44379
45162
  MediaDeviceState[MediaDeviceState["ByteRTCMediaDeviceStateRemoved"] = 11] = "ByteRTCMediaDeviceStateRemoved";
45163
+ /** {en}
45164
+ * @platform ios
45165
+ * @brief Phone calls, locking screen or the other Apps interrupted the RTC call. RTC call will resume once the call ends or the other Apps release the media devices.
45166
+ *
45167
+ */
44380
45168
  MediaDeviceState[MediaDeviceState["ByteRTCMediaDeviceStateInterruptionBegan"] = 12] = "ByteRTCMediaDeviceStateInterruptionBegan";
45169
+ /** {en}
45170
+ * @platform ios
45171
+ * @brief RTC call resumed from the interruption caused by the phone calls or the other Apps.
45172
+ *
45173
+ */
44381
45174
  MediaDeviceState[MediaDeviceState["ByteRTCMediaDeviceStateInterruptionEnded"] = 13] = "ByteRTCMediaDeviceStateInterruptionEnded";
44382
45175
  })(MediaDeviceState || (MediaDeviceState = {}));
44383
45176
  var LocalProxyType;
@@ -48713,6 +49506,213 @@ var t_RTCNetworkType = /** @class */ (function () {
48713
49506
  };
48714
49507
  return t_RTCNetworkType;
48715
49508
  }());
49509
+ var t_SubscribeStateChangeReason = /** @class */ (function () {
49510
+ function t_SubscribeStateChangeReason() {
49511
+ }
49512
+ t_SubscribeStateChangeReason.ts_to_android = function (value) {
49513
+ var _a;
49514
+ var $m = (_a = {},
49515
+ _a[SubscribeStateChangeReason.SUBSCRIBE] = SubscribeStateChangeReason$1.SUBSCRIBE,
49516
+ _a[SubscribeStateChangeReason.UNSUBSCRIBE] = SubscribeStateChangeReason$1.UNSUBSCRIBE,
49517
+ _a[SubscribeStateChangeReason.REMOTE_PUBLISH] = SubscribeStateChangeReason$1.REMOTE_PUBLISH,
49518
+ _a[SubscribeStateChangeReason.REMOTE_UNPUBLISH] = SubscribeStateChangeReason$1.REMOTE_UNPUBLISH,
49519
+ _a[SubscribeStateChangeReason.STREAM_FAILED_5XX] = SubscribeStateChangeReason$1.STREAM_FAILED_5XX,
49520
+ _a[SubscribeStateChangeReason.STREAM_FAILED_404] = SubscribeStateChangeReason$1.STREAM_FAILED_404,
49521
+ _a[SubscribeStateChangeReason.OVER_STREAM_SUBSCRIBE_LIMIT] = SubscribeStateChangeReason$1.OVER_STREAM_SUBSCRIBE_LIMIT,
49522
+ _a[SubscribeStateChangeReason.NO_SUBSCRIBE_PERMISSION] = SubscribeStateChangeReason$1.NO_SUBSCRIBE_PERMISSION,
49523
+ _a);
49524
+ if (!(value in $m)) {
49525
+ throw new Error('android not support:' + value);
49526
+ }
49527
+ // @ts-ignore
49528
+ return $m[value];
49529
+ };
49530
+ t_SubscribeStateChangeReason.android_to_ts = function (value) {
49531
+ var _a;
49532
+ var $m = (_a = {},
49533
+ _a[SubscribeStateChangeReason$1.SUBSCRIBE] = SubscribeStateChangeReason.SUBSCRIBE,
49534
+ _a[SubscribeStateChangeReason$1.UNSUBSCRIBE] = SubscribeStateChangeReason.UNSUBSCRIBE,
49535
+ _a[SubscribeStateChangeReason$1.REMOTE_PUBLISH] = SubscribeStateChangeReason.REMOTE_PUBLISH,
49536
+ _a[SubscribeStateChangeReason$1.REMOTE_UNPUBLISH] = SubscribeStateChangeReason.REMOTE_UNPUBLISH,
49537
+ _a[SubscribeStateChangeReason$1.STREAM_FAILED_5XX] = SubscribeStateChangeReason.STREAM_FAILED_5XX,
49538
+ _a[SubscribeStateChangeReason$1.STREAM_FAILED_404] = SubscribeStateChangeReason.STREAM_FAILED_404,
49539
+ _a[SubscribeStateChangeReason$1.OVER_STREAM_SUBSCRIBE_LIMIT] = SubscribeStateChangeReason.OVER_STREAM_SUBSCRIBE_LIMIT,
49540
+ _a[SubscribeStateChangeReason$1.NO_SUBSCRIBE_PERMISSION] = SubscribeStateChangeReason.NO_SUBSCRIBE_PERMISSION,
49541
+ _a);
49542
+ if (!(value in $m)) {
49543
+ throw new Error('invalid value:' + value);
49544
+ }
49545
+ // @ts-ignore
49546
+ return $m[value];
49547
+ };
49548
+ t_SubscribeStateChangeReason.ts_to_ios = function (value) {
49549
+ var _a;
49550
+ var $m = (_a = {},
49551
+ _a[SubscribeStateChangeReason.SUBSCRIBE] = ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonSubscribe,
49552
+ _a[SubscribeStateChangeReason.UNSUBSCRIBE] = ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonUnsubscribe,
49553
+ _a[SubscribeStateChangeReason.REMOTE_PUBLISH] = ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonRemotePublish,
49554
+ _a[SubscribeStateChangeReason.REMOTE_UNPUBLISH] = ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonRemoteUnpublish,
49555
+ _a[SubscribeStateChangeReason.STREAM_FAILED_5XX] = ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonStreamFailed5xx,
49556
+ _a[SubscribeStateChangeReason.STREAM_FAILED_404] = ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonStreamFailed404,
49557
+ _a[SubscribeStateChangeReason.OVER_STREAM_SUBSCRIBE_LIMIT] = ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonOverStreamSubscribeLimit,
49558
+ _a[SubscribeStateChangeReason.NO_SUBSCRIBE_PERMISSION] = ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonNoSubscribePermission,
49559
+ _a);
49560
+ if (!(value in $m)) {
49561
+ throw new Error('ios not support:' + value);
49562
+ }
49563
+ // @ts-ignore
49564
+ return $m[value];
49565
+ };
49566
+ t_SubscribeStateChangeReason.ios_to_ts = function (value) {
49567
+ var _a;
49568
+ var $m = (_a = {},
49569
+ _a[ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonSubscribe] = SubscribeStateChangeReason.SUBSCRIBE,
49570
+ _a[ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonUnsubscribe] = SubscribeStateChangeReason.UNSUBSCRIBE,
49571
+ _a[ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonRemotePublish] = SubscribeStateChangeReason.REMOTE_PUBLISH,
49572
+ _a[ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonRemoteUnpublish] = SubscribeStateChangeReason.REMOTE_UNPUBLISH,
49573
+ _a[ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonStreamFailed5xx] = SubscribeStateChangeReason.STREAM_FAILED_5XX,
49574
+ _a[ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonStreamFailed404] = SubscribeStateChangeReason.STREAM_FAILED_404,
49575
+ _a[ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonOverStreamSubscribeLimit] = SubscribeStateChangeReason.OVER_STREAM_SUBSCRIBE_LIMIT,
49576
+ _a[ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonNoSubscribePermission] = SubscribeStateChangeReason.NO_SUBSCRIBE_PERMISSION,
49577
+ _a);
49578
+ if (!(value in $m)) {
49579
+ throw new Error('invalid value:' + value);
49580
+ }
49581
+ // @ts-ignore
49582
+ return $m[value];
49583
+ };
49584
+ return t_SubscribeStateChangeReason;
49585
+ }());
49586
+ var t_PublishStateChangeReason = /** @class */ (function () {
49587
+ function t_PublishStateChangeReason() {
49588
+ }
49589
+ t_PublishStateChangeReason.ts_to_android = function (value) {
49590
+ var _a;
49591
+ var $m = (_a = {},
49592
+ _a[PublishStateChangeReason.PUBLISH] = PublishStateChangeReason$1.PUBLISH,
49593
+ _a[PublishStateChangeReason.UNPUBLISH] = PublishStateChangeReason$1.UNPUBLISH,
49594
+ _a[PublishStateChangeReason.NO_PUBLISH_PERMISSION] = PublishStateChangeReason$1.NO_PUBLISH_PERMISSION,
49595
+ _a[PublishStateChangeReason.OVER_STREAM_PUBLISH_LIMIT] = PublishStateChangeReason$1.OVER_STREAM_PUBLISH_LIMIT,
49596
+ _a[PublishStateChangeReason.MULTIROOM_UNPUBLISH_FAILED] = PublishStateChangeReason$1.MULTIROOM_UNPUBLISH_FAILED,
49597
+ _a[PublishStateChangeReason.PUBLISH_STREAM_FAILED] = PublishStateChangeReason$1.PUBLISH_STREAM_FAILED,
49598
+ _a[PublishStateChangeReason.PUBLISH_STREAM_FORBIDEN] = PublishStateChangeReason$1.PUBLISH_STREAM_FORBIDEN,
49599
+ _a[PublishStateChangeReason.USER_IN_PUBLISH] = PublishStateChangeReason$1.USER_IN_PUBLISH,
49600
+ _a);
49601
+ if (!(value in $m)) {
49602
+ throw new Error('android not support:' + value);
49603
+ }
49604
+ // @ts-ignore
49605
+ return $m[value];
49606
+ };
49607
+ t_PublishStateChangeReason.android_to_ts = function (value) {
49608
+ var _a;
49609
+ var $m = (_a = {},
49610
+ _a[PublishStateChangeReason$1.PUBLISH] = PublishStateChangeReason.PUBLISH,
49611
+ _a[PublishStateChangeReason$1.UNPUBLISH] = PublishStateChangeReason.UNPUBLISH,
49612
+ _a[PublishStateChangeReason$1.NO_PUBLISH_PERMISSION] = PublishStateChangeReason.NO_PUBLISH_PERMISSION,
49613
+ _a[PublishStateChangeReason$1.OVER_STREAM_PUBLISH_LIMIT] = PublishStateChangeReason.OVER_STREAM_PUBLISH_LIMIT,
49614
+ _a[PublishStateChangeReason$1.MULTIROOM_UNPUBLISH_FAILED] = PublishStateChangeReason.MULTIROOM_UNPUBLISH_FAILED,
49615
+ _a[PublishStateChangeReason$1.PUBLISH_STREAM_FAILED] = PublishStateChangeReason.PUBLISH_STREAM_FAILED,
49616
+ _a[PublishStateChangeReason$1.PUBLISH_STREAM_FORBIDEN] = PublishStateChangeReason.PUBLISH_STREAM_FORBIDEN,
49617
+ _a[PublishStateChangeReason$1.USER_IN_PUBLISH] = PublishStateChangeReason.USER_IN_PUBLISH,
49618
+ _a);
49619
+ if (!(value in $m)) {
49620
+ throw new Error('invalid value:' + value);
49621
+ }
49622
+ // @ts-ignore
49623
+ return $m[value];
49624
+ };
49625
+ t_PublishStateChangeReason.ts_to_ios = function (value) {
49626
+ var _a;
49627
+ var $m = (_a = {},
49628
+ _a[PublishStateChangeReason.PUBLISH] = ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonPublish,
49629
+ _a[PublishStateChangeReason.UNPUBLISH] = ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonUnpublish,
49630
+ _a[PublishStateChangeReason.NO_PUBLISH_PERMISSION] = ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonNoPublishPermission,
49631
+ _a[PublishStateChangeReason.OVER_STREAM_PUBLISH_LIMIT] = ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonOverStreamPublishLimit,
49632
+ _a[PublishStateChangeReason.MULTIROOM_UNPUBLISH_FAILED] = ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonMultiRoomUnpublishFailed,
49633
+ _a[PublishStateChangeReason.PUBLISH_STREAM_FAILED] = ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonPublishStreamFailed,
49634
+ _a[PublishStateChangeReason.PUBLISH_STREAM_FORBIDEN] = ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonPublishStreamForbidden,
49635
+ _a[PublishStateChangeReason.USER_IN_PUBLISH] = ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonUserInPublish,
49636
+ _a);
49637
+ if (!(value in $m)) {
49638
+ throw new Error('ios not support:' + value);
49639
+ }
49640
+ // @ts-ignore
49641
+ return $m[value];
49642
+ };
49643
+ t_PublishStateChangeReason.ios_to_ts = function (value) {
49644
+ var _a;
49645
+ var $m = (_a = {},
49646
+ _a[ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonPublish] = PublishStateChangeReason.PUBLISH,
49647
+ _a[ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonUnpublish] = PublishStateChangeReason.UNPUBLISH,
49648
+ _a[ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonNoPublishPermission] = PublishStateChangeReason.NO_PUBLISH_PERMISSION,
49649
+ _a[ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonOverStreamPublishLimit] = PublishStateChangeReason.OVER_STREAM_PUBLISH_LIMIT,
49650
+ _a[ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonMultiRoomUnpublishFailed] = PublishStateChangeReason.MULTIROOM_UNPUBLISH_FAILED,
49651
+ _a[ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonPublishStreamFailed] = PublishStateChangeReason.PUBLISH_STREAM_FAILED,
49652
+ _a[ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonPublishStreamForbidden] = PublishStateChangeReason.PUBLISH_STREAM_FORBIDEN,
49653
+ _a[ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonUserInPublish] = PublishStateChangeReason.USER_IN_PUBLISH,
49654
+ _a);
49655
+ if (!(value in $m)) {
49656
+ throw new Error('invalid value:' + value);
49657
+ }
49658
+ // @ts-ignore
49659
+ return $m[value];
49660
+ };
49661
+ return t_PublishStateChangeReason;
49662
+ }());
49663
+ var t_PublishState = /** @class */ (function () {
49664
+ function t_PublishState() {
49665
+ }
49666
+ t_PublishState.ts_to_android = function (value) {
49667
+ var _a;
49668
+ var $m = (_a = {},
49669
+ _a[PublishState.PUBLISHED] = PublishState$1.PUBLISHED,
49670
+ _a[PublishState.UNPUBLISHED] = PublishState$1.UNPUBLISHED,
49671
+ _a);
49672
+ if (!(value in $m)) {
49673
+ throw new Error('android not support:' + value);
49674
+ }
49675
+ // @ts-ignore
49676
+ return $m[value];
49677
+ };
49678
+ t_PublishState.android_to_ts = function (value) {
49679
+ var _a;
49680
+ var $m = (_a = {},
49681
+ _a[PublishState$1.PUBLISHED] = PublishState.PUBLISHED,
49682
+ _a[PublishState$1.UNPUBLISHED] = PublishState.UNPUBLISHED,
49683
+ _a);
49684
+ if (!(value in $m)) {
49685
+ throw new Error('invalid value:' + value);
49686
+ }
49687
+ // @ts-ignore
49688
+ return $m[value];
49689
+ };
49690
+ t_PublishState.ts_to_ios = function (value) {
49691
+ var _a;
49692
+ var $m = (_a = {},
49693
+ _a[PublishState.PUBLISHED] = ByteRTCPublishState.ByteRTCPublishStatePublish,
49694
+ _a[PublishState.UNPUBLISHED] = ByteRTCPublishState.ByteRTCPublishStateUnpublish,
49695
+ _a);
49696
+ if (!(value in $m)) {
49697
+ throw new Error('ios not support:' + value);
49698
+ }
49699
+ // @ts-ignore
49700
+ return $m[value];
49701
+ };
49702
+ t_PublishState.ios_to_ts = function (value) {
49703
+ var _a;
49704
+ var $m = (_a = {},
49705
+ _a[ByteRTCPublishState.ByteRTCPublishStatePublish] = PublishState.PUBLISHED,
49706
+ _a[ByteRTCPublishState.ByteRTCPublishStateUnpublish] = PublishState.UNPUBLISHED,
49707
+ _a);
49708
+ if (!(value in $m)) {
49709
+ throw new Error('invalid value:' + value);
49710
+ }
49711
+ // @ts-ignore
49712
+ return $m[value];
49713
+ };
49714
+ return t_PublishState;
49715
+ }());
48716
49716
  var t_RTCUserOfflineReason = /** @class */ (function () {
48717
49717
  function t_RTCUserOfflineReason() {
48718
49718
  }
@@ -51163,10 +52163,8 @@ var t_SubscribeState = /** @class */ (function () {
51163
52163
  t_SubscribeState.ts_to_android = function (value) {
51164
52164
  var _a;
51165
52165
  var $m = (_a = {},
51166
- _a[SubscribeState.SUBSCRIBE_STATE_SUCCESS] = SubscribeState$1.SUBSCRIBE_STATE_SUCCESS,
51167
- _a[SubscribeState.SUBSCRIBE_STATE_FAILED_NOT_IN_ROOM] = SubscribeState$1.SUBSCRIBE_STATE_FAILED_NOT_IN_ROOM,
51168
- _a[SubscribeState.SUBSCRIBE_STATE_FAILED_STREAM_NOT_FOUND] = SubscribeState$1.SUBSCRIBE_STATE_FAILED_STREAM_NOT_FOUND,
51169
- _a[SubscribeState.SUBSCRIBE_STATE_FAILED_SIGNAL] = SubscribeState$1.SUBSCRIBE_STATE_FAILED_SIGNAL,
52166
+ _a[SubscribeState.SUBSCRIBED] = SubscribeState$1.SUBSCRIBED,
52167
+ _a[SubscribeState.UNSUBSCRIBED] = SubscribeState$1.UNSUBSCRIBED,
51170
52168
  _a);
51171
52169
  if (!(value in $m)) {
51172
52170
  throw new Error('android not support:' + value);
@@ -51177,10 +52175,8 @@ var t_SubscribeState = /** @class */ (function () {
51177
52175
  t_SubscribeState.android_to_ts = function (value) {
51178
52176
  var _a;
51179
52177
  var $m = (_a = {},
51180
- _a[SubscribeState$1.SUBSCRIBE_STATE_SUCCESS] = SubscribeState.SUBSCRIBE_STATE_SUCCESS,
51181
- _a[SubscribeState$1.SUBSCRIBE_STATE_FAILED_NOT_IN_ROOM] = SubscribeState.SUBSCRIBE_STATE_FAILED_NOT_IN_ROOM,
51182
- _a[SubscribeState$1.SUBSCRIBE_STATE_FAILED_STREAM_NOT_FOUND] = SubscribeState.SUBSCRIBE_STATE_FAILED_STREAM_NOT_FOUND,
51183
- _a[SubscribeState$1.SUBSCRIBE_STATE_FAILED_SIGNAL] = SubscribeState.SUBSCRIBE_STATE_FAILED_SIGNAL,
52178
+ _a[SubscribeState$1.SUBSCRIBED] = SubscribeState.SUBSCRIBED,
52179
+ _a[SubscribeState$1.UNSUBSCRIBED] = SubscribeState.UNSUBSCRIBED,
51184
52180
  _a);
51185
52181
  if (!(value in $m)) {
51186
52182
  throw new Error('invalid value:' + value);
@@ -51191,10 +52187,8 @@ var t_SubscribeState = /** @class */ (function () {
51191
52187
  t_SubscribeState.ts_to_ios = function (value) {
51192
52188
  var _a;
51193
52189
  var $m = (_a = {},
51194
- _a[SubscribeState.SUBSCRIBE_STATE_SUCCESS] = ByteRTCSubscribeState.ByteRTCSubscribeStateSuccess,
51195
- _a[SubscribeState.SUBSCRIBE_STATE_FAILED_NOT_IN_ROOM] = ByteRTCSubscribeState.ByteRTCSubscribeStateFailedNotInRoom,
51196
- _a[SubscribeState.SUBSCRIBE_STATE_FAILED_STREAM_NOT_FOUND] = ByteRTCSubscribeState.ByteRTCSubscribeStateFailedStreamNotFound,
51197
- _a[SubscribeState.ByteRTCSubscribeStateFailedOverLimit] = ByteRTCSubscribeState.ByteRTCSubscribeStateFailedOverLimit,
52190
+ _a[SubscribeState.SUBSCRIBED] = ByteRTCSubscribeState.ByteRTCSubscribeStateSubscribe,
52191
+ _a[SubscribeState.UNSUBSCRIBED] = ByteRTCSubscribeState.ByteRTCSubscribeStateUnsubscribe,
51198
52192
  _a);
51199
52193
  if (!(value in $m)) {
51200
52194
  throw new Error('ios not support:' + value);
@@ -51205,10 +52199,8 @@ var t_SubscribeState = /** @class */ (function () {
51205
52199
  t_SubscribeState.ios_to_ts = function (value) {
51206
52200
  var _a;
51207
52201
  var $m = (_a = {},
51208
- _a[ByteRTCSubscribeState.ByteRTCSubscribeStateSuccess] = SubscribeState.SUBSCRIBE_STATE_SUCCESS,
51209
- _a[ByteRTCSubscribeState.ByteRTCSubscribeStateFailedNotInRoom] = SubscribeState.SUBSCRIBE_STATE_FAILED_NOT_IN_ROOM,
51210
- _a[ByteRTCSubscribeState.ByteRTCSubscribeStateFailedStreamNotFound] = SubscribeState.SUBSCRIBE_STATE_FAILED_STREAM_NOT_FOUND,
51211
- _a[ByteRTCSubscribeState.ByteRTCSubscribeStateFailedOverLimit] = SubscribeState.ByteRTCSubscribeStateFailedOverLimit,
52202
+ _a[ByteRTCSubscribeState.ByteRTCSubscribeStateSubscribe] = SubscribeState.SUBSCRIBED,
52203
+ _a[ByteRTCSubscribeState.ByteRTCSubscribeStateUnsubscribe] = SubscribeState.UNSUBSCRIBED,
51212
52204
  _a);
51213
52205
  if (!(value in $m)) {
51214
52206
  throw new Error('invalid value:' + value);
@@ -58659,29 +59651,53 @@ var android_RTCRoomEventHandler = /** @class */ (function (_super) {
58659
59651
  }
58660
59652
  return this._instance['onSubscribePrivilegeTokenWillExpire']();
58661
59653
  };
58662
- android_RTCRoomEventHandler.prototype.onUserPublishStream = function (uid, type) {
58663
- if (!this._instance['onUserPublishStream']) {
59654
+ android_RTCRoomEventHandler.prototype.onVideoPublishStateChanged = function (roomId, uid, state, reason) {
59655
+ if (!this._instance['onVideoPublishStateChanged']) {
59656
+ return;
59657
+ }
59658
+ return this._instance['onVideoPublishStateChanged'](String(roomId), String(uid), t_PublishState.android_to_ts(state), t_PublishStateChangeReason.android_to_ts(reason));
59659
+ };
59660
+ android_RTCRoomEventHandler.prototype.onAudioPublishStateChanged = function (roomId, uid, state, reason) {
59661
+ if (!this._instance['onAudioPublishStateChanged']) {
59662
+ return;
59663
+ }
59664
+ return this._instance['onAudioPublishStateChanged'](String(roomId), String(uid), t_PublishState.android_to_ts(state), t_PublishStateChangeReason.android_to_ts(reason));
59665
+ };
59666
+ android_RTCRoomEventHandler.prototype.onScreenVideoPublishStateChanged = function (roomId, uid, state, reason) {
59667
+ if (!this._instance['onScreenVideoPublishStateChanged']) {
58664
59668
  return;
58665
59669
  }
58666
- return this._instance['onUserPublishStream'](String(uid), t_MediaStreamType.android_to_ts(type));
59670
+ return this._instance['onScreenVideoPublishStateChanged'](String(roomId), String(uid), t_PublishState.android_to_ts(state), t_PublishStateChangeReason.android_to_ts(reason));
58667
59671
  };
58668
- android_RTCRoomEventHandler.prototype.onUserUnpublishStream = function (uid, type, reason) {
58669
- if (!this._instance['onUserUnpublishStream']) {
59672
+ android_RTCRoomEventHandler.prototype.onScreenAudioPublishStateChanged = function (roomId, uid, state, reason) {
59673
+ if (!this._instance['onScreenAudioPublishStateChanged']) {
58670
59674
  return;
58671
59675
  }
58672
- return this._instance['onUserUnpublishStream'](String(uid), t_MediaStreamType.android_to_ts(type), t_StreamRemoveReason.android_to_ts(reason));
59676
+ return this._instance['onScreenAudioPublishStateChanged'](String(roomId), String(uid), t_PublishState.android_to_ts(state), t_PublishStateChangeReason.android_to_ts(reason));
58673
59677
  };
58674
- android_RTCRoomEventHandler.prototype.onUserPublishScreen = function (uid, type) {
58675
- if (!this._instance['onUserPublishScreen']) {
59678
+ android_RTCRoomEventHandler.prototype.onVideoSubscribeStateChanged = function (roomId, uid, state, reason) {
59679
+ if (!this._instance['onVideoSubscribeStateChanged']) {
58676
59680
  return;
58677
59681
  }
58678
- return this._instance['onUserPublishScreen'](String(uid), t_MediaStreamType.android_to_ts(type));
59682
+ return this._instance['onVideoSubscribeStateChanged'](String(roomId), String(uid), t_SubscribeState.android_to_ts(state), t_SubscribeStateChangeReason.android_to_ts(reason));
58679
59683
  };
58680
- android_RTCRoomEventHandler.prototype.onUserUnpublishScreen = function (uid, type, reason) {
58681
- if (!this._instance['onUserUnpublishScreen']) {
59684
+ android_RTCRoomEventHandler.prototype.onAudioSubscribeStateChanged = function (roomId, uid, state, reason) {
59685
+ if (!this._instance['onAudioSubscribeStateChanged']) {
58682
59686
  return;
58683
59687
  }
58684
- return this._instance['onUserUnpublishScreen'](String(uid), t_MediaStreamType.android_to_ts(type), t_StreamRemoveReason.android_to_ts(reason));
59688
+ return this._instance['onAudioSubscribeStateChanged'](String(roomId), String(uid), t_SubscribeState.android_to_ts(state), t_SubscribeStateChangeReason.android_to_ts(reason));
59689
+ };
59690
+ android_RTCRoomEventHandler.prototype.onScreenVideoSubscribeStateChanged = function (roomId, uid, state, reason) {
59691
+ if (!this._instance['onScreenVideoSubscribeStateChanged']) {
59692
+ return;
59693
+ }
59694
+ return this._instance['onScreenVideoSubscribeStateChanged'](String(roomId), String(uid), t_SubscribeState.android_to_ts(state), t_SubscribeStateChangeReason.android_to_ts(reason));
59695
+ };
59696
+ android_RTCRoomEventHandler.prototype.onScreenAudioSubscribeStateChanged = function (roomId, uid, state, reason) {
59697
+ if (!this._instance['onScreenAudioSubscribeStateChanged']) {
59698
+ return;
59699
+ }
59700
+ return this._instance['onScreenAudioSubscribeStateChanged'](String(roomId), String(uid), t_SubscribeState.android_to_ts(state), t_SubscribeStateChangeReason.android_to_ts(reason));
58685
59701
  };
58686
59702
  android_RTCRoomEventHandler.prototype.onLocalStreamStats = function (stats) {
58687
59703
  if (!this._instance['onLocalStreamStats']) {
@@ -58701,6 +59717,30 @@ var android_RTCRoomEventHandler = /** @class */ (function (_super) {
58701
59717
  }
58702
59718
  return this._instance['onStreamSubscribed'](t_SubscribeState.android_to_ts(stateCode), String(userId), packObject(info, SubscribeConfig));
58703
59719
  };
59720
+ android_RTCRoomEventHandler.prototype.onUserPublishStreamVideo = function (roomId, uid, isPublish) {
59721
+ if (!this._instance['onUserPublishStreamVideo']) {
59722
+ return;
59723
+ }
59724
+ return this._instance['onUserPublishStreamVideo'](String(roomId), String(uid), isPublish);
59725
+ };
59726
+ android_RTCRoomEventHandler.prototype.onUserPublishStreamAudio = function (roomId, uid, isPublish) {
59727
+ if (!this._instance['onUserPublishStreamAudio']) {
59728
+ return;
59729
+ }
59730
+ return this._instance['onUserPublishStreamAudio'](String(roomId), String(uid), isPublish);
59731
+ };
59732
+ android_RTCRoomEventHandler.prototype.onUserPublishScreenVideo = function (roomId, uid, isPublish) {
59733
+ if (!this._instance['onUserPublishScreenVideo']) {
59734
+ return;
59735
+ }
59736
+ return this._instance['onUserPublishScreenVideo'](String(roomId), String(uid), isPublish);
59737
+ };
59738
+ android_RTCRoomEventHandler.prototype.onUserPublishScreenAudio = function (roomId, uid, isPublish) {
59739
+ if (!this._instance['onUserPublishScreenAudio']) {
59740
+ return;
59741
+ }
59742
+ return this._instance['onUserPublishScreenAudio'](String(roomId), String(uid), isPublish);
59743
+ };
58704
59744
  android_RTCRoomEventHandler.prototype.onRoomMessageReceived = function (uid, message) {
58705
59745
  if (!this._instance['onRoomMessageReceived']) {
58706
59746
  return;
@@ -58884,29 +59924,77 @@ var ios_RTCRoomEventHandler = /** @class */ (function (_super) {
58884
59924
  }
58885
59925
  return this._instance['onSubscribePrivilegeTokenWillExpire']();
58886
59926
  };
58887
- ios_RTCRoomEventHandler.prototype.rtcRoom$onUserPublishStream$type = function (rtcRoom, userId, type) {
58888
- if (!this._instance['onUserPublishStream']) {
59927
+ ios_RTCRoomEventHandler.prototype.rtcRoom$onUserPublishStreamVideo$uid$isPublish = function (rtcRoom, roomId, uid, isPublish) {
59928
+ if (!this._instance['onUserPublishStreamVideo']) {
59929
+ return;
59930
+ }
59931
+ return this._instance['onUserPublishStreamVideo'](String(roomId), String(uid), isPublish);
59932
+ };
59933
+ ios_RTCRoomEventHandler.prototype.rtcRoom$onUserPublishStreamAudio$uid$isPublish = function (rtcRoom, roomId, uid, isPublish) {
59934
+ if (!this._instance['onUserPublishStreamAudio']) {
58889
59935
  return;
58890
59936
  }
58891
- return this._instance['onUserPublishStream'](String(userId), t_MediaStreamType.ios_to_ts(type));
59937
+ return this._instance['onUserPublishStreamAudio'](String(roomId), String(uid), isPublish);
58892
59938
  };
58893
- ios_RTCRoomEventHandler.prototype.rtcRoom$onUserUnpublishStream$type$reason = function (rtcRoom, userId, type, reason) {
58894
- if (!this._instance['onUserUnpublishStream']) {
59939
+ ios_RTCRoomEventHandler.prototype.rtcRoom$onUserPublishScreenVideo$uid$isPublish = function (rtcRoom, roomId, uid, isPublish) {
59940
+ if (!this._instance['onUserPublishScreenVideo']) {
58895
59941
  return;
58896
59942
  }
58897
- return this._instance['onUserUnpublishStream'](String(userId), t_MediaStreamType.ios_to_ts(type), t_StreamRemoveReason.ios_to_ts(reason));
59943
+ return this._instance['onUserPublishScreenVideo'](String(roomId), String(uid), isPublish);
58898
59944
  };
58899
- ios_RTCRoomEventHandler.prototype.rtcRoom$onUserPublishScreen$type = function (rtcRoom, userId, type) {
58900
- if (!this._instance['onUserPublishScreen']) {
59945
+ ios_RTCRoomEventHandler.prototype.rtcRoom$onUserPublishScreenAudio$uid$isPublish = function (rtcRoom, roomId, uid, isPublish) {
59946
+ if (!this._instance['onUserPublishScreenAudio']) {
58901
59947
  return;
58902
59948
  }
58903
- return this._instance['onUserPublishScreen'](String(userId), t_MediaStreamType.ios_to_ts(type));
59949
+ return this._instance['onUserPublishScreenAudio'](String(roomId), String(uid), isPublish);
58904
59950
  };
58905
- ios_RTCRoomEventHandler.prototype.rtcRoom$onUserUnpublishScreen$type$reason = function (rtcRoom, userId, type, reason) {
58906
- if (!this._instance['onUserUnpublishScreen']) {
59951
+ ios_RTCRoomEventHandler.prototype.rtcRoom$onVideoPublishStateChanged$Uid$state$reason = function (rtcRoom, roomId, uid, state, reason) {
59952
+ if (!this._instance['onVideoPublishStateChanged']) {
58907
59953
  return;
58908
59954
  }
58909
- return this._instance['onUserUnpublishScreen'](String(userId), t_MediaStreamType.ios_to_ts(type), t_StreamRemoveReason.ios_to_ts(reason));
59955
+ return this._instance['onVideoPublishStateChanged'](String(roomId), String(uid), t_PublishState.ios_to_ts(state), t_PublishStateChangeReason.ios_to_ts(reason));
59956
+ };
59957
+ ios_RTCRoomEventHandler.prototype.rtcRoom$onAudioPublishStateChanged$Uid$state$reason = function (rtcRoom, roomId, uid, state, reason) {
59958
+ if (!this._instance['onAudioPublishStateChanged']) {
59959
+ return;
59960
+ }
59961
+ return this._instance['onAudioPublishStateChanged'](String(roomId), String(uid), t_PublishState.ios_to_ts(state), t_PublishStateChangeReason.ios_to_ts(reason));
59962
+ };
59963
+ ios_RTCRoomEventHandler.prototype.rtcRoom$onScreenVideoPublishStateChanged$Uid$state$reason = function (rtcRoom, roomId, uid, state, reason) {
59964
+ if (!this._instance['onScreenVideoPublishStateChanged']) {
59965
+ return;
59966
+ }
59967
+ return this._instance['onScreenVideoPublishStateChanged'](String(roomId), String(uid), t_PublishState.ios_to_ts(state), t_PublishStateChangeReason.ios_to_ts(reason));
59968
+ };
59969
+ ios_RTCRoomEventHandler.prototype.rtcRoom$onScreenAudioPublishStateChanged$Uid$state$reason = function (rtcRoom, roomId, uid, state, reason) {
59970
+ if (!this._instance['onScreenAudioPublishStateChanged']) {
59971
+ return;
59972
+ }
59973
+ return this._instance['onScreenAudioPublishStateChanged'](String(roomId), String(uid), t_PublishState.ios_to_ts(state), t_PublishStateChangeReason.ios_to_ts(reason));
59974
+ };
59975
+ ios_RTCRoomEventHandler.prototype.rtcRoom$onVideoSubscribeStateChanged$Uid$state$reason = function (rtcRoom, roomId, uid, state, reason) {
59976
+ if (!this._instance['onVideoSubscribeStateChanged']) {
59977
+ return;
59978
+ }
59979
+ return this._instance['onVideoSubscribeStateChanged'](String(roomId), String(uid), t_SubscribeState.ios_to_ts(state), t_SubscribeStateChangeReason.ios_to_ts(reason));
59980
+ };
59981
+ ios_RTCRoomEventHandler.prototype.rtcRoom$onAudioSubscribeStateChanged$Uid$state$reason = function (rtcRoom, roomId, uid, state, reason) {
59982
+ if (!this._instance['onAudioSubscribeStateChanged']) {
59983
+ return;
59984
+ }
59985
+ return this._instance['onAudioSubscribeStateChanged'](String(roomId), String(uid), t_SubscribeState.ios_to_ts(state), t_SubscribeStateChangeReason.ios_to_ts(reason));
59986
+ };
59987
+ ios_RTCRoomEventHandler.prototype.rtcRoom$onScreenVideoSubscribeStateChanged$Uid$state$reason = function (rtcRoom, roomId, uid, state, reason) {
59988
+ if (!this._instance['onScreenVideoSubscribeStateChanged']) {
59989
+ return;
59990
+ }
59991
+ return this._instance['onScreenVideoSubscribeStateChanged'](String(roomId), String(uid), t_SubscribeState.ios_to_ts(state), t_SubscribeStateChangeReason.ios_to_ts(reason));
59992
+ };
59993
+ ios_RTCRoomEventHandler.prototype.rtcRoom$onScreenAudioSubscribeStateChanged$Uid$state$reason = function (rtcRoom, roomId, uid, state, reason) {
59994
+ if (!this._instance['onScreenAudioSubscribeStateChanged']) {
59995
+ return;
59996
+ }
59997
+ return this._instance['onScreenAudioSubscribeStateChanged'](String(roomId), String(uid), t_SubscribeState.ios_to_ts(state), t_SubscribeStateChangeReason.ios_to_ts(reason));
58910
59998
  };
58911
59999
  ios_RTCRoomEventHandler.prototype.rtcRoom$onLocalStreamStats = function (rtcRoom, stats) {
58912
60000
  if (!this._instance['onLocalStreamStats']) {
@@ -59505,55 +60593,6 @@ var ios_IAudioFrameProcessor = /** @class */ (function (_super) {
59505
60593
  return ios_IAudioFrameProcessor;
59506
60594
  }(ByteRTCAudioFrameProcessor));
59507
60595
 
59508
- var VertcHelper$1 = function () {
59509
- var _classDecorators = [NativeClass('VertcHelper')];
59510
- var _classDescriptor;
59511
- var _classExtraInitializers = [];
59512
- var _classThis;
59513
- var _staticExtraInitializers = [];
59514
- var _instanceExtraInitializers = [];
59515
- var _static_getInstance_decorators;
59516
- var _static_isUnionLiveModeEnable_decorators;
59517
- var _init_decorators;
59518
- var _invokeStartPushSingleStreamToCDN_decorators;
59519
- var VertcHelper = _classThis = /** @class */ (function () {
59520
- function VertcHelper_1() {
59521
- __runInitializers(this, _instanceExtraInitializers);
59522
- }
59523
- VertcHelper_1.prototype.init = function () {
59524
- throw new Error('not implement');
59525
- };
59526
- VertcHelper_1.getInstance = function () {
59527
- throw new Error('not implement');
59528
- };
59529
- VertcHelper_1.prototype.invokeStartPushSingleStreamToCDN = function (video, taskId, param) {
59530
- throw new Error('not implement');
59531
- };
59532
- VertcHelper_1.isUnionLiveModeEnable = function () {
59533
- throw new Error('not implement');
59534
- };
59535
- return VertcHelper_1;
59536
- }());
59537
- __setFunctionName(_classThis, "VertcHelper");
59538
- (function () {
59539
- var _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
59540
- _init_decorators = [NativeMethodSync('init')];
59541
- _static_getInstance_decorators = [ReturnClass(function () { return VertcHelper; }), NativeStaticMethodSync('getInstance')];
59542
- _invokeStartPushSingleStreamToCDN_decorators = [NativeMethod('invokeStartPushSingleStreamToCDN:taskId:singleStream:')];
59543
- _static_isUnionLiveModeEnable_decorators = [NativeStaticMethodSync('isUnionLiveModeEnable')];
59544
- __esDecorate(_classThis, null, _static_getInstance_decorators, { kind: "method", name: "getInstance", static: true, private: false, access: { has: function (obj) { return "getInstance" in obj; }, get: function (obj) { return obj.getInstance; } }, metadata: _metadata }, null, _staticExtraInitializers);
59545
- __esDecorate(_classThis, null, _static_isUnionLiveModeEnable_decorators, { kind: "method", name: "isUnionLiveModeEnable", static: true, private: false, access: { has: function (obj) { return "isUnionLiveModeEnable" in obj; }, get: function (obj) { return obj.isUnionLiveModeEnable; } }, metadata: _metadata }, null, _staticExtraInitializers);
59546
- __esDecorate(_classThis, null, _init_decorators, { kind: "method", name: "init", static: false, private: false, access: { has: function (obj) { return "init" in obj; }, get: function (obj) { return obj.init; } }, metadata: _metadata }, null, _instanceExtraInitializers);
59547
- __esDecorate(_classThis, null, _invokeStartPushSingleStreamToCDN_decorators, { kind: "method", name: "invokeStartPushSingleStreamToCDN", static: false, private: false, access: { has: function (obj) { return "invokeStartPushSingleStreamToCDN" in obj; }, get: function (obj) { return obj.invokeStartPushSingleStreamToCDN; } }, metadata: _metadata }, null, _instanceExtraInitializers);
59548
- __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
59549
- VertcHelper = _classThis = _classDescriptor.value;
59550
- if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
59551
- __runInitializers(_classThis, _staticExtraInitializers);
59552
- __runInitializers(_classThis, _classExtraInitializers);
59553
- })();
59554
- return VertcHelper = _classThis;
59555
- }();
59556
-
59557
60596
  var ForwardStreamInfo = function () {
59558
60597
  var _classDecorators = [PackClass()];
59559
60598
  var _classDescriptor;
@@ -65578,510 +66617,267 @@ var RTCRoom = function () {
65578
66617
  };
65579
66618
  /** {en}
65580
66619
  * @detail api
65581
- * @region Room Management
65582
- * @author shenpengliang
65583
- * @brief Publishes media streams captured by camera/microphone in the current room.
65584
- * @param type Media stream type, used for specifying whether to publish audio stream or video stream. See {@link MediaStreamType MediaStreamType}.
66620
+ * @valid since 3.60.
66621
+ * @brief Start or stop publishing video streams captured by camera in the current room.
66622
+ * @param publish Whether to publish the media stream.
65585
66623
  * @return
65586
66624
  * - 0: Success.
65587
- * - < 0 : Fail. See {@link ReturnStatus ReturnStatus} for more details
66625
+ * - < 0 : Fail. See ReturnStatus{@link #ReturnStatus} for more details
65588
66626
  * @note
65589
- * - You don't need to call this API if you set it to Auto-publish when calling {@link joinRoom joinRoom}.
65590
- * - An invisible user cannot publish media streams. Call {@link setUserVisibility setUserVisibility} to change your visibility in the room.
65591
- * - Call {@link publishScreen publishScreen} to start screen sharing.
65592
- * - Call {@link startForwardStreamToRooms startForwardStreamToRooms} to forward the published streams to the other rooms.
65593
- * - After you call this API, the other users in the room will receive {@link onUserPublishStream onUserPublishStream}. Those who successfully received your streams will receive {@link onFirstRemoteAudioFrame onFirstRemoteAudioFrame}{@link onFirstRemoteVideoFrameDecoded /onFirstRemoteVideoFrameDecoded} at the same time.
65594
- * - Call {@link unpublishStream unpublishStream} to stop publishing streams.
66627
+ * - You don't need to call this API if you set it to Auto-publish when calling joinRoom{@link #RTCRoom#joinRoom}.
66628
+ * - An invisible user cannot publish media streams. Call setUserVisibility{@link #RTCRoom#setUserVisibility} to change your visibility in the room.
66629
+ * - Call publishScreenAudio{@link #RTCRoom#publishScreenAudio} (not supported on Linux) and/or publishScreenVideo{@link #RTCRoom#publishScreenVideo} to start or stop screen sharing.
66630
+ * - Call publishStreamAudio{@link #RTCRoom#publishStreamAudio} to start or stop publishing the audio stream captured by the microphone.
66631
+ * - Call startForwardStreamToRooms{@link #RTCRoom#startForwardStreamToRooms} to forward the published streams to the other rooms.
66632
+ * - After you call this API, the other users in the room will receive onUserPublishStreamVideo{@link #IRTCRoomEventHandler#onUserPublishStreamVideo}. Those who successfully received your streams will receive onFirstRemoteVideoFrameDecoded{@link #IRTCEngineEventHandler#onFirstRemoteVideoFrameDecoded} at the same time.
65595
66633
  *
65596
66634
  */
65597
- RTCRoom_1.prototype.publishStream = function (type) {
65598
- return __awaiter(this, void 0, void 0, function () {
65599
- var a, i, $os;
65600
- var _this = this;
65601
- return __generator(this, function (_a) {
65602
- switch (_a.label) {
65603
- case 0:
65604
- a = function () { return Number(_this._instance.publishStream(t_MediaStreamType.ts_to_android(type))); };
65605
- i = function () { return __awaiter(_this, void 0, void 0, function () {
65606
- var enable, result, audioRes, videoRes;
65607
- return __generator(this, function (_a) {
65608
- switch (_a.label) {
65609
- case 0: return [4 /*yield*/, VertcHelper$1.isUnionLiveModeEnable()];
65610
- case 1:
65611
- enable = _a.sent();
65612
- if (enable) {
65613
- result = 0;
65614
- if (type !== MediaStreamType.RTC_MEDIA_STREAM_TYPE_VIDEO) {
65615
- audioRes = Number(this._instance.publishStreamAudio(true));
65616
- result = audioRes === 0 ? 0 : audioRes;
65617
- }
65618
- if (type !== MediaStreamType.RTC_MEDIA_STREAM_TYPE_AUDIO) {
65619
- videoRes = Number(this._instance.publishStreamVideo(true));
65620
- result = videoRes === 0 ? 0 : videoRes;
65621
- }
65622
- return [2 /*return*/, result];
65623
- }
65624
- else {
65625
- return [2 /*return*/, Number(this._instance.publishStream(t_MediaStreamType.ts_to_ios(type)))];
65626
- }
65627
- }
65628
- });
65629
- }); };
65630
- $os = env.getOS();
65631
- if (!($os === 'android')) return [3 /*break*/, 2];
65632
- return [4 /*yield*/, a()];
65633
- case 1: return [2 /*return*/, _a.sent()];
65634
- case 2:
65635
- if (!($os === 'ios')) return [3 /*break*/, 4];
65636
- return [4 /*yield*/, i()];
65637
- case 3: return [2 /*return*/, _a.sent()];
65638
- case 4: throw new Error('Not Support Platform ' + $os);
65639
- }
65640
- });
65641
- });
66635
+ RTCRoom_1.prototype.publishStreamVideo = function (publish) {
66636
+ var _this = this;
66637
+ var a = function () { return Number(_this._instance.publishStreamVideo(publish)); };
66638
+ var i = function () { return Number(_this._instance.publishStreamVideo(publish)); };
66639
+ var $os = env.getOS();
66640
+ if ($os === 'android') {
66641
+ return a();
66642
+ }
66643
+ else if ($os === 'ios') {
66644
+ return i();
66645
+ }
66646
+ else {
66647
+ throw new Error('Not Support Platform ' + $os);
66648
+ }
65642
66649
  };
65643
66650
  /** {en}
65644
66651
  * @detail api
65645
- * @region Room Management
65646
- * @author shenpengliang
65647
- * @brief Stops publishing media streams captured by camera/microphone in the current room.
65648
- * @param type Media stream type, used for specifying whether to stop publishing audio stream or video stream. See {@link MediaStreamType MediaStreamType}.
66652
+ * @valid since 3.60.
66653
+ * @brief Start or stop publishing media streams captured by the local microphone in the current room.
66654
+ * @param publish Whether to publish the media stream.
65649
66655
  * @return
65650
66656
  * - 0: Success.
65651
- * - < 0 : Fail. See {@link ReturnStatus ReturnStatus} for more details
66657
+ * - < 0 : Fail. See ReturnStatus{@link #ReturnStatus} for more details
65652
66658
  * @note
65653
- * - After calling {@link publishStream publishStream}, call this API to stop publishing streams.
65654
- * - After calling this API, the other users in the room will receive {@link onUserUnpublishStream onUserUnpublishStream}
66659
+ * - You don't need to call this API if you set it to Auto-publish when calling joinRoom{@link #RTCRoom#joinRoom}.
66660
+ * - An invisible user cannot publish media streams. Call setUserVisibility{@link #RTCRoom#setUserVisibility} to change your visibility in the room.
66661
+ * - Call publishScreenAudio{@link #RTCRoom#publishScreenAudio} (not supported on Linux) and/or publishScreenVideo{@link #RTCRoom#publishScreenVideo} to start or stop screen sharing.
66662
+ * - Call publishStreamVideo{@link #RTCRoom#publishStreamVideo} to start or stop publishing the video stream captured by the camera.
66663
+ * - Call startForwardStreamToRooms{@link #RTCRoom#startForwardStreamToRooms} to forward the published streams to the other rooms.
66664
+ * - After you call this API, the other users in the room will receive onUserPublishStreamAudio{@link #IRTCRoomEventHandler#onUserPublishStreamAudio}. Those who successfully received your streams will receive onFirstRemoteAudioFrame{@link #IRTCEngineEventHandler#onFirstRemoteAudioFrame} at the same time.
65655
66665
  *
65656
66666
  */
65657
- RTCRoom_1.prototype.unpublishStream = function (type) {
65658
- return __awaiter(this, void 0, void 0, function () {
65659
- var a, i, $os;
65660
- var _this = this;
65661
- return __generator(this, function (_a) {
65662
- switch (_a.label) {
65663
- case 0:
65664
- a = function () { return Number(_this._instance.unpublishStream(t_MediaStreamType.ts_to_android(type))); };
65665
- i = function () { return __awaiter(_this, void 0, void 0, function () {
65666
- var enable, result, audioRes, videoRes;
65667
- return __generator(this, function (_a) {
65668
- switch (_a.label) {
65669
- case 0: return [4 /*yield*/, VertcHelper$1.isUnionLiveModeEnable()];
65670
- case 1:
65671
- enable = _a.sent();
65672
- if (enable) {
65673
- result = 0;
65674
- if (type !== MediaStreamType.RTC_MEDIA_STREAM_TYPE_VIDEO) {
65675
- audioRes = Number(this._instance.publishStreamAudio(false));
65676
- result = audioRes === 0 ? 0 : audioRes;
65677
- }
65678
- if (type !== MediaStreamType.RTC_MEDIA_STREAM_TYPE_AUDIO) {
65679
- videoRes = Number(this._instance.publishStreamVideo(false));
65680
- result = videoRes === 0 ? 0 : videoRes;
65681
- }
65682
- return [2 /*return*/, result];
65683
- }
65684
- else {
65685
- return [2 /*return*/, Number(this._instance.unpublishStream(t_MediaStreamType.ts_to_ios(type)))];
65686
- }
65687
- }
65688
- });
65689
- }); };
65690
- $os = env.getOS();
65691
- if (!($os === 'android')) return [3 /*break*/, 2];
65692
- return [4 /*yield*/, a()];
65693
- case 1: return [2 /*return*/, _a.sent()];
65694
- case 2:
65695
- if (!($os === 'ios')) return [3 /*break*/, 4];
65696
- return [4 /*yield*/, i()];
65697
- case 3: return [2 /*return*/, _a.sent()];
65698
- case 4: throw new Error('Not Support Platform ' + $os);
65699
- }
65700
- });
65701
- });
66667
+ RTCRoom_1.prototype.publishStreamAudio = function (publish) {
66668
+ var _this = this;
66669
+ var a = function () { return Number(_this._instance.publishStreamAudio(publish)); };
66670
+ var i = function () { return Number(_this._instance.publishStreamAudio(publish)); };
66671
+ var $os = env.getOS();
66672
+ if ($os === 'android') {
66673
+ return a();
66674
+ }
66675
+ else if ($os === 'ios') {
66676
+ return i();
66677
+ }
66678
+ else {
66679
+ throw new Error('Not Support Platform ' + $os);
66680
+ }
65702
66681
  };
65703
66682
  /** {en}
65704
66683
  * @detail api
65705
- * @region Screen Sharing
65706
- * @author liyi.000
65707
- * @brief Publishes local screen sharing streams in the current room.
65708
- * @param type Media stream type, used for specifying whether to publish audio stream or video stream. See {@link MediaStreamType MediaStreamType}.
66684
+ * @valid since 3.60.
66685
+ * @brief Start or stop sharing the local screen in the room.
66686
+ * If you need to share your screen in multiple rooms, you can use the same uid to join multiple rooms and call this API in each room. Also, you can publish different types of screen-sharing streams in different rooms.
66687
+ * @param publish Whether to publish video stream.
65709
66688
  * @return
65710
66689
  * - 0: Success.
65711
- * - < 0 : Fail. See {@link ReturnStatus ReturnStatus} for more details
66690
+ * - < 0 : Fail. See ReturnStatus{@link #ReturnStatus} for more details
65712
66691
  * @note
65713
- * - You need to call this API to publish screen even if you set it to Auto-publish when calling {@link joinRoom joinRoom}.
65714
- * - An invisible user cannot publish media streams. Call {@link setUserVisibility setUserVisibility} to change your visibility in the room.
65715
- * - After you called this API, the other users in the room will receive {@link onUserPublishScreen onUserPublishScreen}. Those who successfully received your streams will receive {@link onFirstRemoteAudioFrame onFirstRemoteAudioFrame}{@link onFirstRemoteVideoFrameDecoded /onFirstRemoteVideoFrameDecoded} at the same time.
65716
- * - After calling this API, you'll receive {@link onScreenVideoFrameSendStateChanged onScreenVideoFrameSendStateChanged}.
65717
- * - Call {@link startForwardStreamToRooms startForwardStreamToRooms} to forward the published streams to the other rooms.
65718
- * - Call {@link unpublishScreen unpublishScreen} to stop publishing screen-sharing streams.
65719
- * - Refer to [Sharing Screen in Android](https://docs.byteplus.com/byteplus-rtc/docs/124176) for more information.
66692
+ * - You need to call this API to publish screen even if you set it to Auto-publish when calling joinRoom{@link #RTCRoom#joinRoom}.
66693
+ * - An invisible user cannot publish media streams. Call setUserVisibility{@link #RTCRoom#setUserVisibility} to change your visibility in the room.
66694
+ * - Call publishScreenAudio{@link #RTCRoom#publishScreenAudio} (not supported on Linux) to start or stop sharing computer audio.
66695
+ * - Call publishStreamVideo{@link #RTCRoom#publishStreamVideo} to start or stop publishing the video stream captured by the camera.
66696
+ * - Call publishStreamAudio{@link #RTCRoom#publishStreamAudio} to start or stop publishing the audio stream captured by the microphone.
66697
+ * - Call startForwardStreamToRooms{@link #RTCRoom#startForwardStreamToRooms} to forward the published streams to the other rooms.
66698
+ * - After you called this API, the other users in the room will receive onUserPublishScreenVideo{@link #IRTCRoomEventHandler#onUserPublishScreenVideo}. Those who successfully received your streams will receive onFirstRemoteVideoFrameDecoded{@link #IRTCEngineEventHandler#onFirstRemoteVideoFrameDecoded} at the same time.
66699
+ * - After calling this API, you'll receive onScreenVideoFrameSendStateChanged{@link #IRTCEngineEventHandler#onScreenVideoFrameSendStateChanged}.
66700
+ * - Refer to [Sharing Screen in PC](https://docs.byteplus.com/byteplus-rtc/docs/70144) for more information.
65720
66701
  *
65721
66702
  */
65722
- RTCRoom_1.prototype.publishScreen = function (type) {
65723
- return __awaiter(this, void 0, void 0, function () {
65724
- var a, i, $os;
65725
- var _this = this;
65726
- return __generator(this, function (_a) {
65727
- switch (_a.label) {
65728
- case 0:
65729
- a = function () { return Number(_this._instance.publishScreen(t_MediaStreamType.ts_to_android(type))); };
65730
- i = function () { return __awaiter(_this, void 0, void 0, function () {
65731
- var enable, result, audioRes, videoRes;
65732
- return __generator(this, function (_a) {
65733
- switch (_a.label) {
65734
- case 0: return [4 /*yield*/, VertcHelper$1.isUnionLiveModeEnable()];
65735
- case 1:
65736
- enable = _a.sent();
65737
- if (enable) {
65738
- result = 0;
65739
- if (type !== MediaStreamType.RTC_MEDIA_STREAM_TYPE_VIDEO) {
65740
- audioRes = Number(this._instance.publishScreenAudio(true));
65741
- result = audioRes === 0 ? 0 : audioRes;
65742
- }
65743
- if (type !== MediaStreamType.RTC_MEDIA_STREAM_TYPE_AUDIO) {
65744
- videoRes = Number(this._instance.publishScreenVideo(true));
65745
- result = videoRes === 0 ? 0 : videoRes;
65746
- }
65747
- return [2 /*return*/, result];
65748
- }
65749
- else {
65750
- return [2 /*return*/, Number(this._instance.publishScreen(t_MediaStreamType.ts_to_ios(type)))];
65751
- }
65752
- }
65753
- });
65754
- }); };
65755
- $os = env.getOS();
65756
- if (!($os === 'android')) return [3 /*break*/, 2];
65757
- return [4 /*yield*/, a()];
65758
- case 1: return [2 /*return*/, _a.sent()];
65759
- case 2:
65760
- if (!($os === 'ios')) return [3 /*break*/, 4];
65761
- return [4 /*yield*/, i()];
65762
- case 3: return [2 /*return*/, _a.sent()];
65763
- case 4: throw new Error('Not Support Platform ' + $os);
65764
- }
65765
- });
65766
- });
66703
+ RTCRoom_1.prototype.publishScreenVideo = function (publish) {
66704
+ var _this = this;
66705
+ var a = function () { return Number(_this._instance.publishScreenVideo(publish)); };
66706
+ var i = function () { return Number(_this._instance.publishScreenVideo(publish)); };
66707
+ var $os = env.getOS();
66708
+ if ($os === 'android') {
66709
+ return a();
66710
+ }
66711
+ else if ($os === 'ios') {
66712
+ return i();
66713
+ }
66714
+ else {
66715
+ throw new Error('Not Support Platform ' + $os);
66716
+ }
65767
66717
  };
65768
66718
  /** {en}
66719
+ * @hidden(Linux)
65769
66720
  * @detail api
65770
- * @region Screen Sharing
65771
- * @author liyi.000
65772
- * @brief Stops publishing local screen sharing streams in the current room.
65773
- * @param type Media stream type, used for specifying whether to stop publishing audio stream or video stream. See {@link MediaStreamType MediaStreamType}.
66721
+ * @valid since 3.60.
66722
+ * @brief Manually publishes local screen-sharing streams in the current room. <br>
66723
+ * If you need to share your screen in multiple rooms, you can use the same uid to join multiple rooms and call this API in each room. Also, you can publish different types of screen-sharing streams in different rooms.
66724
+ * @param publish Media stream type, used for specifying whether to publish audio stream or video stream.
65774
66725
  * @return
65775
66726
  * - 0: Success.
65776
- * - < 0 : Fail. See {@link ReturnStatus ReturnStatus} for more details
66727
+ * - < 0 : Fail. See ReturnStatus{@link #ReturnStatus} for more details
65777
66728
  * @note
65778
- * - After calling {@link publishScreen publishScreen}, call this API to stop publishing streams.
65779
- * - After calling this API, the other users in the room will receive {@link onUserUnpublishScreen onUserUnpublishScreen}.
66729
+ * - You need to call this API to publish screen even if you set it to Auto-publish when calling joinRoom{@link #RTCRoom#joinRoom}.
66730
+ * - An invisible user cannot publish media streams. Call setUserVisibility{@link #RTCRoom#setUserVisibility} to change your visibility in the room.
66731
+ * - Call publishScreenVideo{@link #RTCRoom#publishScreenVideo} to start or stop sharing the local screen.
66732
+ * - Call publishStreamVideo{@link #RTCRoom#publishStreamVideo} to start or stop publishing the video stream captured by the camera.
66733
+ * - Call publishStreamAudio{@link #RTCRoom#publishStreamAudio} to start or stop publishing the audio stream captured by the microphone.
66734
+ * - Call startForwardStreamToRooms{@link #RTCRoom#startForwardStreamToRooms} to forward the published streams to the other rooms.
66735
+ * - After you called this API, the other users in the room will receive onUserPublishScreenAudio{@link #IRTCRoomEventHandler#onUserPublishScreenAudio}. Those who successfully received your streams will receive onFirstRemoteAudioFrame{@link #IRTCEngineEventHandler#onFirstRemoteAudioFrame} at the same time.
66736
+ * - Refer to [Sharing Screen in PC](https://docs.byteplus.com/byteplus-rtc/docs/70144) for more information.
65780
66737
  *
65781
66738
  */
65782
- RTCRoom_1.prototype.unpublishScreen = function (type) {
65783
- return __awaiter(this, void 0, void 0, function () {
65784
- var a, i, $os;
65785
- var _this = this;
65786
- return __generator(this, function (_a) {
65787
- switch (_a.label) {
65788
- case 0:
65789
- a = function () { return Number(_this._instance.unpublishScreen(t_MediaStreamType.ts_to_android(type))); };
65790
- i = function () { return __awaiter(_this, void 0, void 0, function () {
65791
- var enable, result, audioRes, videoRes;
65792
- return __generator(this, function (_a) {
65793
- switch (_a.label) {
65794
- case 0: return [4 /*yield*/, VertcHelper$1.isUnionLiveModeEnable()];
65795
- case 1:
65796
- enable = _a.sent();
65797
- if (enable) {
65798
- result = 0;
65799
- if (type !== MediaStreamType.RTC_MEDIA_STREAM_TYPE_VIDEO) {
65800
- audioRes = Number(this._instance.publishScreenAudio(false));
65801
- result = audioRes === 0 ? 0 : audioRes;
65802
- }
65803
- if (type !== MediaStreamType.RTC_MEDIA_STREAM_TYPE_AUDIO) {
65804
- videoRes = Number(this._instance.publishScreenVideo(false));
65805
- result = videoRes === 0 ? 0 : videoRes;
65806
- }
65807
- return [2 /*return*/, result];
65808
- }
65809
- else {
65810
- return [2 /*return*/, Number(this._instance.unpublishScreen(t_MediaStreamType.ts_to_ios(type)))];
65811
- }
65812
- }
65813
- });
65814
- }); };
65815
- $os = env.getOS();
65816
- if (!($os === 'android')) return [3 /*break*/, 2];
65817
- return [4 /*yield*/, a()];
65818
- case 1: return [2 /*return*/, _a.sent()];
65819
- case 2:
65820
- if (!($os === 'ios')) return [3 /*break*/, 4];
65821
- return [4 /*yield*/, i()];
65822
- case 3: return [2 /*return*/, _a.sent()];
65823
- case 4: throw new Error('Not Support Platform ' + $os);
65824
- }
65825
- });
65826
- });
66739
+ RTCRoom_1.prototype.publishScreenAudio = function (publish) {
66740
+ var _this = this;
66741
+ var a = function () { return Number(_this._instance.publishScreenAudio(publish)); };
66742
+ var i = function () { return Number(_this._instance.publishScreenAudio(publish)); };
66743
+ var $os = env.getOS();
66744
+ if ($os === 'android') {
66745
+ return a();
66746
+ }
66747
+ else if ($os === 'ios') {
66748
+ return i();
66749
+ }
66750
+ else {
66751
+ throw new Error('Not Support Platform ' + $os);
66752
+ }
65827
66753
  };
65828
66754
  /** {en}
65829
66755
  * @detail api
65830
- * @region Room Management
65831
- * @author shenpengliang
65832
- * @brief Subscribes to specific remote media streams captured by camera/microphone. Or update the options of the subscribed user.
65833
- * @param uid ID of the remote user who published the target audio/video stream.
65834
- * @param type Media stream type, used for specifying whether to subscribe to the audio stream or the video stream. See {@link MediaStreamType MediaStreamType}.
66756
+ * @valid since 3.60.
66757
+ * @brief Subscribes to specific remote media streams captured by the local camera. Or update the subscribe options of the subscribed user.
66758
+ * @param userId The ID of the remote user who published the target video stream.
66759
+ * @param subscribe Whether to subscribe to the stream.
65835
66760
  * @return API call result: <br>
65836
66761
  * - 0: Success.
65837
- * - <0: Failure. See {@link ReturnStatus ReturnStatus} for specific reasons.
66762
+ * - <0: Failure. See ReturnStatus{@link #ReturnStatus} for specific reasons.
65838
66763
  * @note
65839
66764
  * - Calling this API to update the subscribe configuration when the user has subscribed the remote user either by calling this API or by auto-subscribe.
65840
- * - You must first get the remote stream information through {@link onUserPublishStream onUserPublishStream} before calling this API to subscribe to streams accordingly.
65841
- * - After calling this API, you will be informed of the calling result with {@link onStreamSubscribed onStreamSubscribed}.
65842
- * - Once the local user subscribes to the stream of a remote user, the subscription to the remote user will sustain until the local user leaves the room or unsubscribe from it by calling {@link unsubscribeStream unsubscribeStream}.
65843
- * - Any other exceptions will be included in {@link onStreamStateChanged onStreamStateChanged}, see {@link ErrorCode ErrorCode} for the reasons.
66765
+ * - You must first get the remote stream information through onUserPublishStreamVideo{@link #IRTCRoomEventHandler#onUserPublishStreamVideo} before calling this API to subscribe to streams accordingly.
66766
+ * - After calling this API, you will be informed of the calling result with onVideoSubscribeStateChanged{@link #IRTCRoomEventHandler#onVideoSubscribeStateChanged}.
66767
+ * - Once the local user subscribes to the stream of a remote user, the subscription to the remote user will sustain until the local user leaves the room or unsubscribe from it by calling subscribeStreamVideo{@link #RTCRoom#subscribeStreamVideo}.
66768
+ * - Any other exceptions will be included in onVideoSubscribeStateChanged{@link #IRTCRoomEventHandler#onVideoSubscribeStateChanged}, see SubscribeStateChangeReason{@link #SubscribeStateChangeReason} for the reasons.
65844
66769
  *
65845
66770
  */
65846
- RTCRoom_1.prototype.subscribeStream = function (uid, type) {
65847
- return __awaiter(this, void 0, void 0, function () {
65848
- var a, i, $os;
65849
- var _this = this;
65850
- return __generator(this, function (_a) {
65851
- switch (_a.label) {
65852
- case 0:
65853
- a = function () {
65854
- return Number(_this._instance.subscribeStream(uid, t_MediaStreamType.ts_to_android(type)));
65855
- };
65856
- i = function () { return __awaiter(_this, void 0, void 0, function () {
65857
- var enable, result, audioRes, videoRes;
65858
- return __generator(this, function (_a) {
65859
- switch (_a.label) {
65860
- case 0: return [4 /*yield*/, VertcHelper$1.isUnionLiveModeEnable()];
65861
- case 1:
65862
- enable = _a.sent();
65863
- if (enable) {
65864
- result = 0;
65865
- if (type !== MediaStreamType.RTC_MEDIA_STREAM_TYPE_VIDEO) {
65866
- audioRes = Number(this._instance.subscribeStreamAudio(uid, true));
65867
- result = audioRes === 0 ? 0 : audioRes;
65868
- }
65869
- if (type !== MediaStreamType.RTC_MEDIA_STREAM_TYPE_AUDIO) {
65870
- videoRes = Number(this._instance.subscribeStreamVideo(uid, true));
65871
- result = videoRes === 0 ? 0 : videoRes;
65872
- }
65873
- return [2 /*return*/, result];
65874
- }
65875
- else {
65876
- return [2 /*return*/, Number(this._instance.subscribeStream(uid, t_MediaStreamType.ts_to_ios(type)))];
65877
- }
65878
- }
65879
- });
65880
- }); };
65881
- $os = env.getOS();
65882
- if (!($os === 'android')) return [3 /*break*/, 2];
65883
- return [4 /*yield*/, a()];
65884
- case 1: return [2 /*return*/, _a.sent()];
65885
- case 2:
65886
- if (!($os === 'ios')) return [3 /*break*/, 4];
65887
- return [4 /*yield*/, i()];
65888
- case 3: return [2 /*return*/, _a.sent()];
65889
- case 4: throw new Error('Not Support Platform ' + $os);
65890
- }
65891
- });
65892
- });
66771
+ RTCRoom_1.prototype.subscribeStreamVideo = function (userId, subscribe) {
66772
+ var _this = this;
66773
+ var a = function () { return Number(_this._instance.subscribeStreamVideo(userId, subscribe)); };
66774
+ var i = function () { return Number(_this._instance.subscribeStreamVideo(userId, subscribe)); };
66775
+ var $os = env.getOS();
66776
+ if ($os === 'android') {
66777
+ return a();
66778
+ }
66779
+ else if ($os === 'ios') {
66780
+ return i();
66781
+ }
66782
+ else {
66783
+ throw new Error('Not Support Platform ' + $os);
66784
+ }
65893
66785
  };
65894
66786
  /** {en}
65895
66787
  * @detail api
65896
- * @region Room Management
65897
- * @author shenpengliang
65898
- * @brief Unsubscribes from specific remote media streams captured by camera/microphone. <br>
65899
- * You can call this API in both automatic subscription mode and manual subscription mode.
65900
- * @param uid The ID of the remote user who published the target audio/video stream.
65901
- * @param type Media stream type, used for specifying whether to unsubscribe from the audio stream or the video stream. See {@link MediaStreamType MediaStreamType}.
66788
+ * @valid since 3.60.
66789
+ * @brief Subscribes to specific remote media streams captured by the local microphone. Or update the subscribe options of the subscribed user.
66790
+ * @param userId The ID of the remote user who published the target media stream.
66791
+ * @param subscribe Whether to subscribe to the audio stream.
65902
66792
  * @return API call result: <br>
65903
66793
  * - 0: Success.
65904
- * - <0: Failure. See {@link ReturnStatus ReturnStatus} for specific reasons.
66794
+ * - <0: Failure. See ReturnStatus{@link #ReturnStatus} for specific reasons.
65905
66795
  * @note
65906
- * - After calling this API, you will be informed of the calling result with {@link onStreamSubscribed onStreamSubscribed}.
65907
- * - Any other exceptions will be included in {@link onStreamStateChanged onStreamStateChanged}, see {@link ErrorCode ErrorCode} for the reasons.
66796
+ * - Calling this API to update the subscribe configuration when the user has subscribed the remote user either by calling this API or by auto-subscribe.
66797
+ * - You must first get the remote stream information through onUserPublishStreamAudio{@link #IRTCRoomEventHandler#onUserPublishStreamAudio} before calling this API to subscribe to streams accordingly.
66798
+ * - After calling this API, you will be informed of the calling result with onAudioSubscribeStateChanged{@link #IRTCRoomEventHandler#onAudioSubscribeStateChanged}.
66799
+ * - Once the local user subscribes to the stream of a remote user, the subscription to the remote user will sustain until the local user leaves the room or unsubscribe from it by calling subscribeStreamAudio{@link #RTCRoom#subscribeStreamAudio}.
66800
+ * - Any other exceptions will be included in onAudioSubscribeStateChanged{@link #IRTCRoomEventHandler#onAudioSubscribeStateChanged}, see ErrorCode{@link #ErrorCode} for the reasons.
65908
66801
  *
65909
66802
  */
65910
- RTCRoom_1.prototype.unsubscribeStream = function (uid, type) {
65911
- return __awaiter(this, void 0, void 0, function () {
65912
- var a, i, $os;
65913
- var _this = this;
65914
- return __generator(this, function (_a) {
65915
- switch (_a.label) {
65916
- case 0:
65917
- a = function () {
65918
- return Number(_this._instance.unsubscribeStream(uid, t_MediaStreamType.ts_to_android(type)));
65919
- };
65920
- i = function () { return __awaiter(_this, void 0, void 0, function () {
65921
- var enable, result, audioRes, videoRes;
65922
- return __generator(this, function (_a) {
65923
- switch (_a.label) {
65924
- case 0: return [4 /*yield*/, VertcHelper$1.isUnionLiveModeEnable()];
65925
- case 1:
65926
- enable = _a.sent();
65927
- if (enable) {
65928
- result = 0;
65929
- if (type !== MediaStreamType.RTC_MEDIA_STREAM_TYPE_VIDEO) {
65930
- audioRes = Number(this._instance.subscribeStreamAudio(uid, false));
65931
- result = audioRes === 0 ? 0 : audioRes;
65932
- }
65933
- if (type !== MediaStreamType.RTC_MEDIA_STREAM_TYPE_AUDIO) {
65934
- videoRes = Number(this._instance.subscribeStreamVideo(uid, false));
65935
- result = videoRes === 0 ? 0 : videoRes;
65936
- }
65937
- return [2 /*return*/, result];
65938
- }
65939
- else {
65940
- return [2 /*return*/, Number(this._instance.unsubscribeStream(uid, t_MediaStreamType.ts_to_ios(type)))];
65941
- }
65942
- }
65943
- });
65944
- }); };
65945
- $os = env.getOS();
65946
- if (!($os === 'android')) return [3 /*break*/, 2];
65947
- return [4 /*yield*/, a()];
65948
- case 1: return [2 /*return*/, _a.sent()];
65949
- case 2:
65950
- if (!($os === 'ios')) return [3 /*break*/, 4];
65951
- return [4 /*yield*/, i()];
65952
- case 3: return [2 /*return*/, _a.sent()];
65953
- case 4: throw new Error('Not Support Platform ' + $os);
65954
- }
65955
- });
65956
- });
66803
+ RTCRoom_1.prototype.subscribeStreamAudio = function (userId, subscribe) {
66804
+ var _this = this;
66805
+ var a = function () { return Number(_this._instance.subscribeStreamAudio(userId, subscribe)); };
66806
+ var i = function () { return Number(_this._instance.subscribeStreamAudio(userId, subscribe)); };
66807
+ var $os = env.getOS();
66808
+ if ($os === 'android') {
66809
+ return a();
66810
+ }
66811
+ else if ($os === 'ios') {
66812
+ return i();
66813
+ }
66814
+ else {
66815
+ throw new Error('Not Support Platform ' + $os);
66816
+ }
65957
66817
  };
65958
66818
  /** {en}
65959
66819
  * @detail api
65960
- * @region Room Management
65961
- * @author shenpengliang
65962
- * @brief Subscribes to specific screen sharing media stream. Or update the subscribe options of the subscribed user.
65963
- * @param uid The ID of the remote user who published the target screen audio/video stream.
65964
- * @param type Media stream type, used for specifying whether to subscribe to the audio stream or the video stream. See {@link MediaStreamType MediaStreamType}.
66820
+ * @valid since 3.60.
66821
+ * @brief Subscribes to specific screen sharing media stream. Or update the subscribe options of the subscribed user.
66822
+ * @param userId The ID of the remote user who published the target screen video stream.
66823
+ * @param subscribe Whether to subscribe to the screen video stream.
65965
66824
  * @return API call result: <br>
65966
66825
  * - 0: Success.
65967
- * - <0: Failure. See {@link ReturnStatus ReturnStatus} for specific reasons.
66826
+ * - <0: Failure. See ReturnStatus{@link #ReturnStatus} for specific reasons.
65968
66827
  * @note
65969
66828
  * - Calling this API to update the subscribe configuration when the user has subscribed the remote user either by calling this API or by auto-subscribe.
65970
- * - You must first get the remote stream information through {@link onUserPublishScreen onUserPublishScreen} before calling this API to subscribe to streams accordingly.
65971
- * - After calling this API, you will be informed of the calling result with {@link onStreamSubscribed onStreamSubscribed}.
65972
- * - Once the local user subscribes to the stream of a remote user, the subscription to the remote user will sustain until the local user leaves the room or unsubscribe from it by calling {@link unsubscribeScreen unsubscribeScreen}.
65973
- * - Any other exceptions will be included in {@link onStreamStateChanged onStreamStateChanged}, see {@link ErrorCode ErrorCode} for the reasons.
66829
+ * - You must first get the remote stream information through onUserPublishScreenVideo{@link #IRTCRoomEventHandler#onUserPublishScreenVideo} before calling this API to subscribe to streams accordingly.
66830
+ * - After calling this API, you will be informed of the calling result with onScreenVideoSubscribeStateChanged{@link #IRTCRoomEventHandler#onScreenVideoSubscribeStateChanged}.
66831
+ * - Once the local user subscribes to the stream of a remote user, the subscription to the remote user will sustain until the local user leaves the room or unsubscribe from it by calling subscribeScreenVideo{@link #RTCRoom#subscribeScreenVideo}.
66832
+ * - Any other exceptions will be included in onScreenVideoSubscribeStateChanged{@link #IRTCRoomEventHandler#onScreenVideoSubscribeStateChanged}, see SubscribeStateChangeReason{@link #SubscribeStateChangeReason} for the reasons.
65974
66833
  *
65975
66834
  */
65976
- RTCRoom_1.prototype.subscribeScreen = function (uid, type) {
65977
- return __awaiter(this, void 0, void 0, function () {
65978
- var a, i, $os;
65979
- var _this = this;
65980
- return __generator(this, function (_a) {
65981
- a = function () {
65982
- return Number(_this._instance.subscribeScreen(uid, t_MediaStreamType.ts_to_android(type)));
65983
- };
65984
- i = function () { return __awaiter(_this, void 0, void 0, function () {
65985
- var enable, result, audioRes, videoRes;
65986
- return __generator(this, function (_a) {
65987
- switch (_a.label) {
65988
- case 0: return [4 /*yield*/, VertcHelper$1.isUnionLiveModeEnable()];
65989
- case 1:
65990
- enable = _a.sent();
65991
- if (enable) {
65992
- result = 0;
65993
- if (type !== MediaStreamType.RTC_MEDIA_STREAM_TYPE_VIDEO) {
65994
- audioRes = Number(this._instance.subscribeScreenAudio(uid, true));
65995
- result = audioRes === 0 ? 0 : audioRes;
65996
- }
65997
- if (type !== MediaStreamType.RTC_MEDIA_STREAM_TYPE_AUDIO) {
65998
- videoRes = Number(this._instance.subscribeScreenVideo(uid, true));
65999
- result = videoRes === 0 ? 0 : videoRes;
66000
- }
66001
- return [2 /*return*/, result];
66002
- }
66003
- else {
66004
- return [2 /*return*/, Number(this._instance.subscribeScreen(uid, t_MediaStreamType.ts_to_ios(type)))];
66005
- }
66006
- }
66007
- });
66008
- }); };
66009
- $os = env.getOS();
66010
- if ($os === 'android') {
66011
- return [2 /*return*/, a()];
66012
- }
66013
- else if ($os === 'ios') {
66014
- return [2 /*return*/, i()];
66015
- }
66016
- else {
66017
- throw new Error('Not Support Platform ' + $os);
66018
- }
66019
- });
66020
- });
66835
+ RTCRoom_1.prototype.subscribeScreenVideo = function (userId, subscribe) {
66836
+ var _this = this;
66837
+ var a = function () { return Number(_this._instance.subscribeScreenVideo(userId, subscribe)); };
66838
+ var i = function () { return Number(_this._instance.subscribeScreenVideo(userId, subscribe)); };
66839
+ var $os = env.getOS();
66840
+ if ($os === 'android') {
66841
+ return a();
66842
+ }
66843
+ else if ($os === 'ios') {
66844
+ return i();
66845
+ }
66846
+ else {
66847
+ throw new Error('Not Support Platform ' + $os);
66848
+ }
66021
66849
  };
66022
66850
  /** {en}
66023
66851
  * @detail api
66024
- * @region Room Management
66025
- * @author shenpengliang
66026
- * @brief Unsubscribes from specific screen sharing media stream. <br>
66027
- * You can call this API in both automatic subscription mode and manual subscription mode.
66028
- * @param uid The ID of the remote user who published the target screen audio/video stream.
66029
- * @param type Media stream type, used for specifying whether to unsubscribe from the audio stream or the video stream. See {@link MediaStreamType MediaStreamType}.
66852
+ * @valid since 3.60.
66853
+ * @brief Subscribes to specific screen sharing media stream. Or update the subscribe options of the subscribed user.
66854
+ * @param userId The ID of the remote user who published the target screen audio stream.
66855
+ * @param subscribe Whether to subscribe to the screen audio stream.
66030
66856
  * @return API call result: <br>
66031
66857
  * - 0: Success.
66032
- * - <0: Failure. See {@link ReturnStatus ReturnStatus} for specific reasons.
66858
+ * - <0: Failure. See ReturnStatus{@link #ReturnStatus} for specific reasons.
66033
66859
  * @note
66034
- * - After calling this API, you will be informed of the calling result with {@link onStreamSubscribed onStreamSubscribed}.
66035
- * - Any other exceptions will be included in {@link onStreamStateChanged onStreamStateChanged}, see {@link ErrorCode ErrorCode} for the reasons.
66860
+ * - Calling this API to update the subscribe configuration when the user has subscribed the remote user either by calling this API or by auto-subscribe.
66861
+ * - You must first get the remote stream information through onUserPublishScreenAudio{@link #IRTCRoomEventHandler#onUserPublishScreenAudio} before calling this API to subscribe to streams accordingly.
66862
+ * - After calling this API, you will be informed of the calling result with onScreenAudioSubscribeStateChanged{@link #IRTCRoomEventHandler#onScreenAudioSubscribeStateChanged}.
66863
+ * - Once the local user subscribes to the stream of a remote user, the subscription to the remote user will sustain until the local user leaves the room or unsubscribe from it by calling subscribeScreenAudio{@link #RTCRoom#subscribeScreenAudio}.
66864
+ * - Any other exceptions will be included in onScreenAudioSubscribeStateChanged{@link #IRTCRoomEventHandler#onScreenAudioSubscribeStateChanged}, see SubscribeStateChangeReason{@link #SubscribeStateChangeReason} for the reasons.
66036
66865
  *
66037
66866
  */
66038
- RTCRoom_1.prototype.unsubscribeScreen = function (uid, type) {
66039
- return __awaiter(this, void 0, void 0, function () {
66040
- var a, i, $os;
66041
- var _this = this;
66042
- return __generator(this, function (_a) {
66043
- switch (_a.label) {
66044
- case 0:
66045
- a = function () {
66046
- return Number(_this._instance.unsubscribeScreen(uid, t_MediaStreamType.ts_to_android(type)));
66047
- };
66048
- i = function () { return __awaiter(_this, void 0, void 0, function () {
66049
- var enable, result, audioRes, videoRes;
66050
- return __generator(this, function (_a) {
66051
- switch (_a.label) {
66052
- case 0: return [4 /*yield*/, VertcHelper$1.isUnionLiveModeEnable()];
66053
- case 1:
66054
- enable = _a.sent();
66055
- if (enable) {
66056
- result = 0;
66057
- if (type !== MediaStreamType.RTC_MEDIA_STREAM_TYPE_VIDEO) {
66058
- audioRes = Number(this._instance.subscribeScreenAudio(uid, false));
66059
- result = audioRes === 0 ? 0 : audioRes;
66060
- }
66061
- if (type !== MediaStreamType.RTC_MEDIA_STREAM_TYPE_AUDIO) {
66062
- videoRes = Number(this._instance.subscribeScreenVideo(uid, false));
66063
- result = videoRes === 0 ? 0 : videoRes;
66064
- }
66065
- return [2 /*return*/, result];
66066
- }
66067
- else {
66068
- return [2 /*return*/, Number(this._instance.unsubscribeScreen(uid, t_MediaStreamType.ts_to_ios(type)))];
66069
- }
66070
- }
66071
- });
66072
- }); };
66073
- $os = env.getOS();
66074
- if (!($os === 'android')) return [3 /*break*/, 2];
66075
- return [4 /*yield*/, a()];
66076
- case 1: return [2 /*return*/, _a.sent()];
66077
- case 2:
66078
- if (!($os === 'ios')) return [3 /*break*/, 4];
66079
- return [4 /*yield*/, i()];
66080
- case 3: return [2 /*return*/, _a.sent()];
66081
- case 4: throw new Error('Not Support Platform ' + $os);
66082
- }
66083
- });
66084
- });
66867
+ RTCRoom_1.prototype.subscribeScreenAudio = function (userId, subscribe) {
66868
+ var _this = this;
66869
+ var a = function () { return Number(_this._instance.subscribeScreenAudio(userId, subscribe)); };
66870
+ var i = function () { return Number(_this._instance.subscribeScreenAudio(userId, subscribe)); };
66871
+ var $os = env.getOS();
66872
+ if ($os === 'android') {
66873
+ return a();
66874
+ }
66875
+ else if ($os === 'ios') {
66876
+ return i();
66877
+ }
66878
+ else {
66879
+ throw new Error('Not Support Platform ' + $os);
66880
+ }
66085
66881
  };
66086
66882
  /** {en}
66087
66883
  * @detail api
@@ -68611,7 +69407,7 @@ var VertcLive = function () {
68611
69407
  return _classThis;
68612
69408
  }();
68613
69409
 
68614
- var VertcHelper = function () {
69410
+ var VertcHelper$1 = function () {
68615
69411
  var _classDecorators = [NativeClass('com.volcengine.reactnative.vertc.VertcHelper')];
68616
69412
  var _classDescriptor;
68617
69413
  var _classExtraInitializers = [];
@@ -68623,6 +69419,8 @@ var VertcHelper = function () {
68623
69419
  var _invokeSetVideoEncoderConfig_decorators;
68624
69420
  var _invokeSetLocalVideoMirrorType_decorators;
68625
69421
  var _invokeStartPushSingleStreamToCDN_decorators;
69422
+ var _invokeStartScreenCapture_decorators;
69423
+ var _invokeSetAudioScene_decorators;
68626
69424
  var VertcHelper = _classThis = /** @class */ (function (_super) {
68627
69425
  __extends(VertcHelper_1, _super);
68628
69426
  function VertcHelper_1() {
@@ -68642,6 +69440,12 @@ var VertcHelper = function () {
68642
69440
  VertcHelper_1.prototype.invokeStartPushSingleStreamToCDN = function (video, taskId, param) {
68643
69441
  throw new Error('not implement');
68644
69442
  };
69443
+ VertcHelper_1.prototype.invokeStartScreenCapture = function (video, mediaType) {
69444
+ throw new Error('not implement');
69445
+ };
69446
+ VertcHelper_1.prototype.invokeSetAudioScene = function (video, scene) {
69447
+ throw new Error('not implement');
69448
+ };
68645
69449
  return VertcHelper_1;
68646
69450
  }(_classSuper));
68647
69451
  __setFunctionName(_classThis, "VertcHelper");
@@ -68652,10 +69456,69 @@ var VertcHelper = function () {
68652
69456
  _invokeSetVideoEncoderConfig_decorators = [NativeMethod()];
68653
69457
  _invokeSetLocalVideoMirrorType_decorators = [NativeMethod()];
68654
69458
  _invokeStartPushSingleStreamToCDN_decorators = [NativeMethod()];
69459
+ _invokeStartScreenCapture_decorators = [NativeMethod()];
69460
+ _invokeSetAudioScene_decorators = [NativeMethod()];
68655
69461
  __esDecorate(_classThis, null, _static_getInstance_decorators, { kind: "method", name: "getInstance", static: true, private: false, access: { has: function (obj) { return "getInstance" in obj; }, get: function (obj) { return obj.getInstance; } }, metadata: _metadata }, null, _staticExtraInitializers);
68656
69462
  __esDecorate(_classThis, null, _invokeSetVideoEncoderConfig_decorators, { kind: "method", name: "invokeSetVideoEncoderConfig", static: false, private: false, access: { has: function (obj) { return "invokeSetVideoEncoderConfig" in obj; }, get: function (obj) { return obj.invokeSetVideoEncoderConfig; } }, metadata: _metadata }, null, _instanceExtraInitializers);
68657
69463
  __esDecorate(_classThis, null, _invokeSetLocalVideoMirrorType_decorators, { kind: "method", name: "invokeSetLocalVideoMirrorType", static: false, private: false, access: { has: function (obj) { return "invokeSetLocalVideoMirrorType" in obj; }, get: function (obj) { return obj.invokeSetLocalVideoMirrorType; } }, metadata: _metadata }, null, _instanceExtraInitializers);
68658
69464
  __esDecorate(_classThis, null, _invokeStartPushSingleStreamToCDN_decorators, { kind: "method", name: "invokeStartPushSingleStreamToCDN", static: false, private: false, access: { has: function (obj) { return "invokeStartPushSingleStreamToCDN" in obj; }, get: function (obj) { return obj.invokeStartPushSingleStreamToCDN; } }, metadata: _metadata }, null, _instanceExtraInitializers);
69465
+ __esDecorate(_classThis, null, _invokeStartScreenCapture_decorators, { kind: "method", name: "invokeStartScreenCapture", static: false, private: false, access: { has: function (obj) { return "invokeStartScreenCapture" in obj; }, get: function (obj) { return obj.invokeStartScreenCapture; } }, metadata: _metadata }, null, _instanceExtraInitializers);
69466
+ __esDecorate(_classThis, null, _invokeSetAudioScene_decorators, { kind: "method", name: "invokeSetAudioScene", static: false, private: false, access: { has: function (obj) { return "invokeSetAudioScene" in obj; }, get: function (obj) { return obj.invokeSetAudioScene; } }, metadata: _metadata }, null, _instanceExtraInitializers);
69467
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
69468
+ VertcHelper = _classThis = _classDescriptor.value;
69469
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
69470
+ __runInitializers(_classThis, _staticExtraInitializers);
69471
+ __runInitializers(_classThis, _classExtraInitializers);
69472
+ })();
69473
+ return VertcHelper = _classThis;
69474
+ }();
69475
+
69476
+ var VertcHelper = function () {
69477
+ var _classDecorators = [NativeClass('VertcHelper')];
69478
+ var _classDescriptor;
69479
+ var _classExtraInitializers = [];
69480
+ var _classThis;
69481
+ var _staticExtraInitializers = [];
69482
+ var _instanceExtraInitializers = [];
69483
+ var _static_getInstance_decorators;
69484
+ var _static_isUnionLiveModeEnable_decorators;
69485
+ var _init_decorators;
69486
+ var _invokeStartPushSingleStreamToCDN_decorators;
69487
+ var _invokeSetAudioScene_decorators;
69488
+ var VertcHelper = _classThis = /** @class */ (function () {
69489
+ function VertcHelper_1() {
69490
+ __runInitializers(this, _instanceExtraInitializers);
69491
+ }
69492
+ VertcHelper_1.prototype.init = function () {
69493
+ throw new Error('not implement');
69494
+ };
69495
+ VertcHelper_1.getInstance = function () {
69496
+ throw new Error('not implement');
69497
+ };
69498
+ VertcHelper_1.prototype.invokeStartPushSingleStreamToCDN = function (video, taskId, param) {
69499
+ throw new Error('not implement');
69500
+ };
69501
+ VertcHelper_1.isUnionLiveModeEnable = function () {
69502
+ throw new Error('not implement');
69503
+ };
69504
+ VertcHelper_1.prototype.invokeSetAudioScene = function (video, scene) {
69505
+ throw new Error('not implement');
69506
+ };
69507
+ return VertcHelper_1;
69508
+ }());
69509
+ __setFunctionName(_classThis, "VertcHelper");
69510
+ (function () {
69511
+ var _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
69512
+ _init_decorators = [NativeMethodSync('init')];
69513
+ _static_getInstance_decorators = [ReturnClass(function () { return VertcHelper; }), NativeStaticMethodSync('getInstance')];
69514
+ _invokeStartPushSingleStreamToCDN_decorators = [NativeMethod('invokeStartPushSingleStreamToCDN:taskId:singleStream:')];
69515
+ _static_isUnionLiveModeEnable_decorators = [NativeStaticMethodSync('isUnionLiveModeEnable')];
69516
+ _invokeSetAudioScene_decorators = [NativeMethod('invokeSetAudioScene:scene:')];
69517
+ __esDecorate(_classThis, null, _static_getInstance_decorators, { kind: "method", name: "getInstance", static: true, private: false, access: { has: function (obj) { return "getInstance" in obj; }, get: function (obj) { return obj.getInstance; } }, metadata: _metadata }, null, _staticExtraInitializers);
69518
+ __esDecorate(_classThis, null, _static_isUnionLiveModeEnable_decorators, { kind: "method", name: "isUnionLiveModeEnable", static: true, private: false, access: { has: function (obj) { return "isUnionLiveModeEnable" in obj; }, get: function (obj) { return obj.isUnionLiveModeEnable; } }, metadata: _metadata }, null, _staticExtraInitializers);
69519
+ __esDecorate(_classThis, null, _init_decorators, { kind: "method", name: "init", static: false, private: false, access: { has: function (obj) { return "init" in obj; }, get: function (obj) { return obj.init; } }, metadata: _metadata }, null, _instanceExtraInitializers);
69520
+ __esDecorate(_classThis, null, _invokeStartPushSingleStreamToCDN_decorators, { kind: "method", name: "invokeStartPushSingleStreamToCDN", static: false, private: false, access: { has: function (obj) { return "invokeStartPushSingleStreamToCDN" in obj; }, get: function (obj) { return obj.invokeStartPushSingleStreamToCDN; } }, metadata: _metadata }, null, _instanceExtraInitializers);
69521
+ __esDecorate(_classThis, null, _invokeSetAudioScene_decorators, { kind: "method", name: "invokeSetAudioScene", static: false, private: false, access: { has: function (obj) { return "invokeSetAudioScene" in obj; }, get: function (obj) { return obj.invokeSetAudioScene; } }, metadata: _metadata }, null, _instanceExtraInitializers);
68659
69522
  __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
68660
69523
  VertcHelper = _classThis = _classDescriptor.value;
68661
69524
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
@@ -68946,7 +69809,7 @@ extendsClassMethod(RTCVideo, 'setVideoEncoderConfig', function (origin) {
68946
69809
  return function impl(channelSolutions) {
68947
69810
  var _this = this;
68948
69811
  var a = function () {
68949
- var vertc = VertcHelper.getInstance();
69812
+ var vertc = VertcHelper$1.getInstance();
68950
69813
  return vertc.invokeSetVideoEncoderConfig(unpackObject(_this), channelSolutions.map(function (item) { return unpackObject(item); }));
68951
69814
  };
68952
69815
  var i = function () {
@@ -68968,16 +69831,12 @@ extendsClassMethod(RTCVideo, 'startPushSingleStreamToCDN', function () {
68968
69831
  return function impl(taskId, params) {
68969
69832
  var _this = this;
68970
69833
  var a = function () {
68971
- var vertc = VertcHelper.getInstance();
68972
- var streamParams = new PushSingleStreamParam$1();
68973
- streamParams.roomId = params.roomId;
68974
- streamParams.userId = params.userId;
68975
- streamParams.url = params.url;
68976
- streamParams.isScreen = params.isScreen || false;
69834
+ var vertc = VertcHelper$1.getInstance();
69835
+ var streamParams = new PushSingleStreamParam$1(params.roomId, params.userId, params.url, params.isScreen || false);
68977
69836
  return vertc.invokeStartPushSingleStreamToCDN(unpackObject(_this), taskId, streamParams);
68978
69837
  };
68979
69838
  var i = function () {
68980
- var vertc = VertcHelper$1.getInstance();
69839
+ var vertc = VertcHelper.getInstance();
68981
69840
  var streamParams = new ByteRTCPushSingleStreamParam();
68982
69841
  streamParams.roomId = params.roomId;
68983
69842
  streamParams.userId = params.userId;
@@ -69001,7 +69860,7 @@ extendsClassMethod(RTCVideo, 'setLocalVideoMirrorType', function (origin) {
69001
69860
  return function impl(mirrorType) {
69002
69861
  var _this = this;
69003
69862
  var a = function () {
69004
- var vertc = VertcHelper.getInstance();
69863
+ var vertc = VertcHelper$1.getInstance();
69005
69864
  return vertc.invokeSetLocalVideoMirrorType(unpackObject(_this), t_MirrorType.ts_to_android(mirrorType));
69006
69865
  };
69007
69866
  var i = function () {
@@ -69020,86 +69879,6 @@ extendsClassMethod(RTCVideo, 'setLocalVideoMirrorType', function (origin) {
69020
69879
  };
69021
69880
  });
69022
69881
 
69023
- var NativeSurfaceView = /** @class */ (function (_super) {
69024
- __extends(NativeSurfaceView, _super);
69025
- function NativeSurfaceView() {
69026
- return _super !== null && _super.apply(this, arguments) || this;
69027
- }
69028
- return NativeSurfaceView;
69029
- }(NativeView));
69030
- var ApplicationContext = /** @class */ (function () {
69031
- function ApplicationContext() {
69032
- }
69033
- return ApplicationContext;
69034
- }());
69035
- var ScreenIntent = /** @class */ (function () {
69036
- function ScreenIntent() {
69037
- }
69038
- return ScreenIntent;
69039
- }());
69040
- var NativeVariables = function () {
69041
- var _a;
69042
- var _staticExtraInitializers = [];
69043
- var _static_getApplicationContext_decorators;
69044
- var _static_getScreenIntent_decorators;
69045
- return _a = /** @class */ (function () {
69046
- function NativeVariables() {
69047
- }
69048
- NativeVariables.getApplicationContext = function () {
69049
- throw new Error('');
69050
- };
69051
- NativeVariables.getScreenIntent = function () {
69052
- throw new Error('');
69053
- };
69054
- return NativeVariables;
69055
- }()),
69056
- (function () {
69057
- var _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
69058
- _static_getApplicationContext_decorators = [NativeVar('ApplicationContext', ApplicationContext)];
69059
- _static_getScreenIntent_decorators = [NativeVar('screenIntent', ScreenIntent)];
69060
- __esDecorate(_a, null, _static_getApplicationContext_decorators, { kind: "method", name: "getApplicationContext", static: true, private: false, access: { has: function (obj) { return "getApplicationContext" in obj; }, get: function (obj) { return obj.getApplicationContext; } }, metadata: _metadata }, null, _staticExtraInitializers);
69061
- __esDecorate(_a, null, _static_getScreenIntent_decorators, { kind: "method", name: "getScreenIntent", static: true, private: false, access: { has: function (obj) { return "getScreenIntent" in obj; }, get: function (obj) { return obj.getScreenIntent; } }, metadata: _metadata }, null, _staticExtraInitializers);
69062
- if (_metadata) Object.defineProperty(_a, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
69063
- __runInitializers(_a, _staticExtraInitializers);
69064
- })(),
69065
- _a;
69066
- }();
69067
-
69068
- /** {en}
69069
- * @brief Request user to start screen capture
69070
- */
69071
- var requestScreenCapture = function () { return __awaiter(void 0, void 0, void 0, function () {
69072
- var intent;
69073
- return __generator(this, function (_a) {
69074
- switch (_a.label) {
69075
- case 0:
69076
- _a.trys.push([0, 3, , 4]);
69077
- if (!(Platform.OS === 'android')) return [3 /*break*/, 2];
69078
- return [4 /*yield*/, NativeVariables.getScreenIntent()];
69079
- case 1:
69080
- intent = _a.sent();
69081
- return [2 /*return*/, intent];
69082
- case 2: return [3 /*break*/, 4];
69083
- case 3:
69084
- _a.sent();
69085
- return [3 /*break*/, 4];
69086
- case 4: return [2 /*return*/];
69087
- }
69088
- });
69089
- }); };
69090
- var isAndroid = function () { return Platform.OS === 'android'; };
69091
- var isIOS = function () { return Platform.OS === 'ios'; };
69092
- var platformBriefs = function (_a) {
69093
- var android = _a.android, ios = _a.ios;
69094
- if (isAndroid()) {
69095
- return android();
69096
- }
69097
- if (isIOS()) {
69098
- return ios();
69099
- }
69100
- throw new Error('Unsupported platform');
69101
- };
69102
-
69103
69882
  var proxyEngine = function (engine) {
69104
69883
  /** Render Local View */
69105
69884
  var originalSetLocalVideoCanvas = engine.setLocalVideoCanvas;
@@ -69200,19 +69979,28 @@ var proxyEngine = function (engine) {
69200
69979
  /** StartScreenCapture */
69201
69980
  var originalStartScreenCapture = engine.startScreenCapture;
69202
69981
  engine.startScreenCapture = function (type, bundleId) { return __awaiter(void 0, void 0, void 0, function () {
69203
- var intent;
69982
+ var vertc;
69204
69983
  return __generator(this, function (_a) {
69205
- switch (_a.label) {
69206
- case 0:
69207
- if (!bundleId) return [3 /*break*/, 1];
69208
- return [2 /*return*/, originalStartScreenCapture.call(engine, type, bundleId)];
69209
- case 1: return [4 /*yield*/, requestScreenCapture()];
69210
- case 2:
69211
- intent = _a.sent();
69212
- return [2 /*return*/, originalStartScreenCapture.call(engine, type, intent)];
69984
+ if (bundleId) {
69985
+ return [2 /*return*/, originalStartScreenCapture.call(engine, type, bundleId)];
69986
+ }
69987
+ else {
69988
+ vertc = VertcHelper$1.getInstance();
69989
+ return [2 /*return*/, vertc.invokeStartScreenCapture(unpackObject(engine), type)];
69213
69990
  }
69214
69991
  });
69215
69992
  }); };
69993
+ /** SetAudioScene */
69994
+ engine.setAudioScene = function (scene) {
69995
+ if (Platform.OS === 'android') {
69996
+ var vertc = VertcHelper$1.getInstance();
69997
+ return vertc.invokeSetAudioScene(unpackObject(engine), scene);
69998
+ }
69999
+ else {
70000
+ var vertc = VertcHelper.getInstance();
70001
+ return vertc.invokeSetAudioScene(unpackObject(engine), scene);
70002
+ }
70003
+ };
69216
70004
  /** RequestRemoteVideoKeyFrame */
69217
70005
  var originalRequestRemoteVideoKeyFrame = engine
69218
70006
  .requestRemoteVideoKeyFrame;
@@ -69259,27 +70047,30 @@ var proxyRoom = function (room) {
69259
70047
  room.joinRoom = function (params) {
69260
70048
  var token = params.token, userId = params.userId, _a = params.extras, extras = _a === void 0 ? {} : _a, _b = params.roomConfigs, roomConfigs = _b === void 0 ? {
69261
70049
  profile: ChannelProfile.CHANNEL_PROFILE_COMMUNICATION,
69262
- // isAutoPublish: true,
70050
+ isAutoPublishVideo: true,
70051
+ isAutoPublishAudio: true,
69263
70052
  isAutoSubscribeAudio: true,
69264
70053
  isAutoSubscribeVideo: true,
69265
70054
  } : _b;
69266
70055
  var _c = platformBriefs({
69267
70056
  android: function () {
70057
+ var _a, _b;
69268
70058
  var userInfo = new UserInfo(userId, JSON.stringify(extras || {}));
69269
- var roomInfo = new RTCRoomConfig(roomConfigs.profile, roomConfigs.isAutoPublish || true, roomConfigs.isAutoSubscribeAudio, roomConfigs.isAutoSubscribeVideo);
70059
+ var roomInfo = new RTCRoomConfig(roomConfigs.profile, (_a = roomConfigs.isAutoPublishAudio) !== null && _a !== void 0 ? _a : true, (_b = roomConfigs.isAutoPublishVideo) !== null && _b !== void 0 ? _b : true, roomConfigs.isAutoSubscribeAudio, roomConfigs.isAutoSubscribeVideo);
69270
70060
  return [userInfo, roomInfo];
69271
70061
  },
69272
70062
  ios: function () {
70063
+ var _a, _b;
69273
70064
  var userInfo = new UserInfo();
69274
70065
  var roomInfo = new RTCRoomConfig();
69275
70066
  userInfo.userId = userId;
69276
70067
  userInfo.extraInfo = JSON.stringify(extras || {});
69277
- if (typeof roomConfigs.isAutoPublish === 'boolean') {
69278
- roomInfo.isAutoPublish = roomConfigs.isAutoPublish;
69279
- }
70068
+ roomInfo.isPublishVideo = (_a = roomConfigs.isAutoPublishVideo) !== null && _a !== void 0 ? _a : true;
70069
+ roomInfo.isPublishAudio = (_b = roomConfigs.isAutoPublishAudio) !== null && _b !== void 0 ? _b : true;
69280
70070
  roomInfo.isAutoSubscribeAudio = roomConfigs.isAutoSubscribeAudio;
69281
70071
  roomInfo.isAutoSubscribeVideo = roomConfigs.isAutoSubscribeVideo;
69282
70072
  roomInfo.profile = roomConfigs.profile;
70073
+ // roomInfo.remoteVideoConfig = remoteVideoConfig;
69283
70074
  return [userInfo, roomInfo];
69284
70075
  },
69285
70076
  }), userInfo = _c[0], roomInfo = _c[1];
@@ -69302,7 +70093,8 @@ var proxyRoom = function (room) {
69302
70093
  });
69303
70094
  return originalSetRemoteVideoConfig.call(room, userId, remoteStreamInfo);
69304
70095
  };
69305
- var originalStartForwardStreamToRooms = room.startForwardStreamToRooms;
70096
+ var originalStartForwardStreamToRooms = room
70097
+ .startForwardStreamToRooms;
69306
70098
  room.startForwardStreamToRooms = function (forwardStreamConfig) {
69307
70099
  var streamInfos = platformBriefs({
69308
70100
  android: function () {
@@ -69321,7 +70113,8 @@ var proxyRoom = function (room) {
69321
70113
  });
69322
70114
  return originalStartForwardStreamToRooms.call(room, streamInfos);
69323
70115
  };
69324
- var originalUpdateForwardStreamToRooms = room.updateForwardStreamToRooms;
70116
+ var originalUpdateForwardStreamToRooms = room
70117
+ .updateForwardStreamToRooms;
69325
70118
  room.updateForwardStreamToRooms = function (forwardStreamConfig) {
69326
70119
  var streamInfos = platformBriefs({
69327
70120
  android: function () {
@@ -69541,5 +70334,12 @@ var EncryptTypes;
69541
70334
  */
69542
70335
  EncryptTypes[EncryptTypes["AES256ECB"] = 4] = "AES256ECB";
69543
70336
  })(EncryptTypes || (EncryptTypes = {}));
70337
+ var AudioSceneType;
70338
+ (function (AudioSceneType) {
70339
+ AudioSceneType[AudioSceneType["AUDIO_SCENE_DEFAULT"] = 0] = "AUDIO_SCENE_DEFAULT";
70340
+ AudioSceneType[AudioSceneType["AUDIO_SCENE_CHATROOM"] = 1] = "AUDIO_SCENE_CHATROOM";
70341
+ AudioSceneType[AudioSceneType["AUDIO_SCENE_HIGH_QUALITY_CHATROOM"] = 2] = "AUDIO_SCENE_HIGH_QUALITY_CHATROOM";
70342
+ AudioSceneType[AudioSceneType["AUDIO_SCENE_LOW_LATENCY"] = 3] = "AUDIO_SCENE_LOW_LATENCY";
70343
+ })(AudioSceneType || (AudioSceneType = {}));
69544
70344
 
69545
- export { AACProfile, ASRAuthorizationType, AVSyncState, AlphaLayout, AnsMode, ApplicationContext, AttenuationType, AudioAlignmentMode, AudioChannel, AudioDeviceType, AudioEffectPlayerConfig, AudioFormat, AudioFrame, AudioFrameCallbackMethod, AudioFrameSource, AudioMixingConfig, AudioMixingDualMonoMode, AudioMixingError, AudioMixingState, AudioMixingType, AudioPlayType, AudioPlaybackDevice, AudioProfileType, AudioPropertiesConfig, AudioPropertiesInfo, AudioPropertiesMode, AudioQuality, AudioRecordingConfig, AudioRecordingErrorCode, AudioRecordingState, AudioRenderType, AudioReportMode, AudioRoute, AudioSampleRate, AudioScenarioType, AudioSelectionPriority, AudioSourceType, AudioTrackType, BandFrequency, ByteRTCBluetoothMode as BluetoothMode, ByteRTCImage, ByteRTCStreamMixingEvent, ByteRTCStreamMixingType, ByteRTCView, CameraId, ChannelProfile, CloudProxyInfo, ColorSpace, ConnectionState, DataMessageSourceType, DownloadFileType, DownloadLyricType, DownloadResult, EarMonitorMode, EchoTestConfig, EchoTestResult, EffectBeautyMode, EncryptTypes, ErrorCode, FaceDetectionResult, FallbackOrRecoverReason, FirstFramePlayState, FirstFrameSendState, ForwardStreamError, ForwardStreamEvent, ForwardStreamEventInfo, ForwardStreamInfo, ForwardStreamState, ForwardStreamStateInfo, HardwareEchoDetectionResult, HotMusicInfo, HumanOrientation, IAudioEffectPlayer, IAudioFrame, IAudioMixingManager, IKTVManager, IKTVPlayer, IMediaPlayer, IRangeAudio, ISingScoringManager, ISpatialAudio, IVideoDeviceManager, IVideoEffect, KTVErrorCode, KTVPlayerErrorCode, LiveTranscoding, LocalAudioPropertiesInfo, LocalAudioStats, LocalAudioStreamError, LocalAudioStreamState, LocalLogLevel, LocalProxyError, LocalProxyState, LocalProxyType, LocalStreamStats, LocalVideoRenderPosition, LocalVideoSinkConfig, LocalVideoStats, LocalVideoStreamError, LocalVideoStreamState, LoginErrorCode, LogoutReason, LyricStatus, MediaDeviceError, MediaDeviceState, MediaDeviceType, MediaDeviceWarning, MediaPlayerConfig, MediaPlayerCustomSource, MediaPlayerCustomSourceMode, MediaPlayerCustomSourceSeekWhence, MediaPlayerCustomSourceStreamType, MediaStreamType, MediaTypeEnhancementConfig, MessageConfig, MirrorType, MixedStreamAlternateImageFillMode, MixedStreamAudioCodecType, MixedStreamAudioConfig, MixedStreamAudioProfile, MixedStreamClientMixConfig, MixedStreamClientMixVideoFormat, MixedStreamConfig, MixedStreamLayoutConfig, MixedStreamLayoutRegionConfig, MixedStreamLayoutRegionImageWaterMarkConfig, MixedStreamLayoutRegionType, MixedStreamMediaType, MixedStreamPushMode, MixedStreamRenderMode, MixedStreamSEIContentMode, MixedStreamServerControlConfig, MixedStreamType, MixedStreamVideoCodecType, MixedStreamVideoConfig, MixedStreamVideoType, MulDimSingScoringMode, MusicFilterType, MusicHotType, MusicInfo, MuteState, NativeSurfaceView, NativeUIView, NativeVariables, NativeViewComponent, NetworkDetectionLinkType, NetworkDetectionStopReason, NetworkQuality, NetworkQualityStats, NetworkTimeInfo, Orientation, PauseResumeControlMediaType, PerformanceAlarmMode, PerformanceAlarmReason, PlayState, PlayerError, PlayerState, Position, PositionInfo, ProblemFeedbackInfo, ProblemFeedbackOption, ProblemFeedbackRoomInfo, PublicStreamErrorCode, PublicStreaming, PublishFallbackOption, PushSingleStreamParam, RPSampleBufferType, RTCASRConfig, RTCASRErrorCode, RTCEncodedVideoFrame, RTCLogConfig, RTCManager, RTCNetworkType, RTCRoom, RTCRoomConfig, RTCRoomStats, RTCScreenVideoEncoderPreference, RTCStream, RTCStreamMixingErrorCode, RTCStreamSinglePushEvent, RTCUser, RTCUserOfflineReason, RTCVideo, RTCVideoEncoderPreference, ReceiveRange, RecordingConfig, RecordingErrorCode, RecordingFileType, RecordingInfo, RecordingProgress, RecordingState, RecordingType, Rectangle, RemoteAudioPropertiesInfo, RemoteAudioState, RemoteAudioStateChangeReason, RemoteAudioStats, RemoteMirrorType, RemoteStreamKey, RemoteStreamStats, RemoteStreamSwitchEvent, RemoteUserPriority, RemoteVideoConfig, RemoteVideoRenderConfig, RemoteVideoRenderPosition, RemoteVideoSinkConfig, RemoteVideoState, RemoteVideoStateChangeReason, RemoteVideoStats, RenderMode, ReturnStatus, RoomMessageSendResult, SEICountPerFrame, SEIStreamUpdateEventType, ScreenIntent, ScreenMediaType, ScreenVideoEncoderConfig, SetRoomExtraInfoResult, SingScoringConfig, SingScoringRealtimeInfo, SourceWantedData, StandardPitchInfo, StreamIndex, StreamRemoveReason, StreamSycnInfoConfig, SubscribeConfig, SubscribeMediaType, SubscribeState, SubscribeVideoConfig, SubtitleConfig, SubtitleErrorCode, SubtitleMessage, SubtitleMode, SubtitleState, SyncInfoStreamType, SysStats, TorchState, TranscoderContentControlType, TranscoderLayoutRegionType, UIView, UserInfo, UserMessageSendResult, UserOnlineStatus, UserVisibilityChangeError, VideoApplyRotation, VideoCanvas, VideoCaptureConfig, VideoCodecType, VideoContentType, VideoDecoderConfig, VideoDenoiseMode, VideoDenoiseModeChangedReason, VideoDeviceType, VideoEncoderConfig, VideoFrame, VideoFrameInfo, VideoFrameType, VideoOrientation, VideoPictureType, VideoPixelFormat, VideoPreprocessorConfig, VideoRenderMirrorType, VideoRotation, VideoRotationMode, VideoSourceType, VideoSuperResolutionMode, VideoSuperResolutionModeChangedReason, VirtualBackgroundSource, VirtualBackgroundSourceType, VoiceChangerType, VoiceEqualizationConfig, VoiceReverbConfig, VoiceReverbType, WarningCode, ZoomConfigType, ZoomDirectionType, android_IAudioEffectPlayerEventHandler, android_IAudioFileFrameObserver, android_IAudioFrameObserver, android_IAudioFrameProcessor, android_IExternalVideoEncoderEventHandler, android_IFaceDetectionObserver, android_ILocalEncodedVideoFrameObserver, android_IMediaPlayerAudioFrameObserver, android_IMediaPlayerCustomSourceProvider, android_IMediaPlayerEventHandler, android_IMixedStreamObserver, android_IPushSingleStreamToCDNObserver, android_IRemoteEncodedVideoFrameObserver, android_RTCRoomEventHandler, android_RTCVideoEventHandler, ios_IAudioEffectPlayerEventHandler, ios_IAudioFileFrameObserver, ios_IAudioFrameObserver, ios_IAudioFrameProcessor, ios_IExternalVideoEncoderEventHandler, ios_IFaceDetectionObserver, ios_ILocalEncodedVideoFrameObserver, ios_IMediaPlayerAudioFrameObserver, ios_IMediaPlayerCustomSourceProvider, ios_IMediaPlayerEventHandler, ios_IMixedStreamObserver, ios_IPushSingleStreamToCDNObserver, ios_IRemoteEncodedVideoFrameObserver, ios_RTCRoomEventHandler, ios_RTCVideoEventHandler, t_AACProfile, t_ASRAuthorizationType, t_AVSyncState, t_AlphaLayout, t_AnsMode, t_AttenuationType, t_AudioAlignmentMode, t_AudioChannel, t_AudioDeviceType, t_AudioFrameCallbackMethod, t_AudioFrameSource, t_AudioMixingDualMonoMode, t_AudioMixingError, t_AudioMixingState, t_AudioMixingType, t_AudioPlayType, t_AudioPlaybackDevice, t_AudioProfileType, t_AudioPropertiesMode, t_AudioQuality, t_AudioRecordingErrorCode, t_AudioRecordingState, t_AudioRenderType, t_AudioReportMode, t_AudioRoute, t_AudioSampleRate, t_AudioScenarioType, t_AudioSelectionPriority, t_AudioSourceType, t_AudioTrackType, t_BandFrequency, t_ByteRTCStreamMixingEvent, t_ByteRTCStreamMixingType, t_CameraId, t_ChannelProfile, t_ColorSpace, t_ConnectionState, t_DataMessageSourceType, t_DownloadFileType, t_DownloadLyricType, t_EarMonitorMode, t_EchoTestResult, t_EffectBeautyMode, t_ErrorCode, t_FallbackOrRecoverReason, t_FirstFramePlayState, t_FirstFrameSendState, t_ForwardStreamError, t_ForwardStreamEvent, t_ForwardStreamState, t_HardwareEchoDetectionResult, t_KTVErrorCode, t_KTVPlayerErrorCode, t_LocalAudioStreamError, t_LocalAudioStreamState, t_LocalLogLevel, t_LocalProxyError, t_LocalProxyState, t_LocalProxyType, t_LocalVideoRenderPosition, t_LocalVideoStreamError, t_LocalVideoStreamState, t_LoginErrorCode, t_LogoutReason, t_LyricStatus, t_MediaDeviceError, t_MediaDeviceState, t_MediaDeviceType, t_MediaDeviceWarning, t_MediaPlayerCustomSourceMode, t_MediaPlayerCustomSourceSeekWhence, t_MediaPlayerCustomSourceStreamType, t_MediaStreamType, t_MessageConfig, t_MirrorType, t_MixedStreamAlternateImageFillMode, t_MixedStreamAudioCodecType, t_MixedStreamAudioProfile, t_MixedStreamClientMixVideoFormat, t_MixedStreamLayoutRegionType, t_MixedStreamMediaType, t_MixedStreamPushMode, t_MixedStreamRenderMode, t_MixedStreamSEIContentMode, t_MixedStreamType, t_MixedStreamVideoCodecType, t_MixedStreamVideoType, t_MulDimSingScoringMode, t_MusicFilterType, t_MusicHotType, t_MuteState, t_NetworkDetectionLinkType, t_NetworkDetectionStopReason, t_NetworkQuality, t_PauseResumeControlMediaType, t_PerformanceAlarmMode, t_PerformanceAlarmReason, t_PlayState, t_PlayerError, t_PlayerState, t_ProblemFeedbackOption, t_PublicStreamErrorCode, t_PublishFallbackOption, t_RTCASRErrorCode, t_RTCNetworkType, t_RTCScreenVideoEncoderPreference, t_RTCStreamMixingErrorCode, t_RTCStreamSinglePushEvent, t_RTCUserOfflineReason, t_RTCVideoEncoderPreference, t_RecordingErrorCode, t_RecordingFileType, t_RecordingState, t_RecordingType, t_RemoteAudioState, t_RemoteAudioStateChangeReason, t_RemoteMirrorType, t_RemoteUserPriority, t_RemoteVideoRenderPosition, t_RemoteVideoState, t_RemoteVideoStateChangeReason, t_RenderMode, t_ReturnStatus, t_RoomMessageSendResult, t_SEICountPerFrame, t_SEIStreamUpdateEventType, t_ScreenMediaType, t_SetRoomExtraInfoResult, t_StreamIndex, t_StreamRemoveReason, t_SubscribeMediaType, t_SubscribeState, t_SubtitleErrorCode, t_SubtitleMode, t_SubtitleState, t_SyncInfoStreamType, t_TorchState, t_TranscoderContentControlType, t_TranscoderLayoutRegionType, t_UserMessageSendResult, t_UserOnlineStatus, t_UserVisibilityChangeError, t_VideoApplyRotation, t_VideoCodecType, t_VideoContentType, t_VideoDecoderConfig, t_VideoDenoiseMode, t_VideoDenoiseModeChangedReason, t_VideoDeviceType, t_VideoFrameType, t_VideoOrientation, t_VideoPictureType, t_VideoPixelFormat, t_VideoRenderMirrorType, t_VideoRotation, t_VideoRotationMode, t_VideoSourceType, t_VideoSuperResolutionMode, t_VideoSuperResolutionModeChangedReason, t_VirtualBackgroundSourceType, t_VoiceChangerType, t_VoiceReverbType, t_WarningCode, t_ZoomConfigType, t_ZoomDirectionType };
70345
+ export { AACProfile, ASRAuthorizationType, AVSyncState, AlphaLayout, AnsMode, ApplicationContext, AttenuationType, AudioAlignmentMode, AudioChannel, AudioDeviceType, AudioEffectPlayerConfig, AudioFormat, AudioFrame, AudioFrameCallbackMethod, AudioFrameSource, AudioMixingConfig, AudioMixingDualMonoMode, AudioMixingError, AudioMixingState, AudioMixingType, AudioPlayType, AudioPlaybackDevice, AudioProfileType, AudioPropertiesConfig, AudioPropertiesInfo, AudioPropertiesMode, AudioQuality, AudioRecordingConfig, AudioRecordingErrorCode, AudioRecordingState, AudioRenderType, AudioReportMode, AudioRoute, AudioSampleRate, AudioScenarioType, AudioSceneType, AudioSelectionPriority, AudioSourceType, AudioTrackType, BandFrequency, ByteRTCBluetoothMode as BluetoothMode, ByteRTCImage, ByteRTCStreamMixingEvent, ByteRTCStreamMixingType, ByteRTCView, CameraId, ChannelProfile, CloudProxyInfo, ColorSpace, ConnectionState, DataMessageSourceType, DownloadFileType, DownloadLyricType, DownloadResult, EarMonitorMode, EchoTestConfig, EchoTestResult, EffectBeautyMode, EncryptTypes, ErrorCode, FaceDetectionResult, FallbackOrRecoverReason, FirstFramePlayState, FirstFrameSendState, ForwardStreamError, ForwardStreamEvent, ForwardStreamEventInfo, ForwardStreamInfo, ForwardStreamState, ForwardStreamStateInfo, HardwareEchoDetectionResult, HotMusicInfo, HumanOrientation, IAudioEffectPlayer, IAudioFrame, IAudioMixingManager, IKTVManager, IKTVPlayer, IMediaPlayer, IRangeAudio, ISingScoringManager, ISpatialAudio, IVideoDeviceManager, IVideoEffect, KTVErrorCode, KTVPlayerErrorCode, LiveTranscoding, LocalAudioPropertiesInfo, LocalAudioStats, LocalAudioStreamError, LocalAudioStreamState, LocalLogLevel, LocalProxyError, LocalProxyState, LocalProxyType, LocalStreamStats, LocalVideoRenderPosition, LocalVideoSinkConfig, LocalVideoStats, LocalVideoStreamError, LocalVideoStreamState, LoginErrorCode, LogoutReason, LyricStatus, MediaDeviceError, MediaDeviceState, MediaDeviceType, MediaDeviceWarning, MediaPlayerConfig, MediaPlayerCustomSource, MediaPlayerCustomSourceMode, MediaPlayerCustomSourceSeekWhence, MediaPlayerCustomSourceStreamType, MediaStreamType, MediaTypeEnhancementConfig, MessageConfig, MirrorType, MixedStreamAlternateImageFillMode, MixedStreamAudioCodecType, MixedStreamAudioConfig, MixedStreamAudioProfile, MixedStreamClientMixConfig, MixedStreamClientMixVideoFormat, MixedStreamConfig, MixedStreamLayoutConfig, MixedStreamLayoutRegionConfig, MixedStreamLayoutRegionImageWaterMarkConfig, MixedStreamLayoutRegionType, MixedStreamMediaType, MixedStreamPushMode, MixedStreamRenderMode, MixedStreamSEIContentMode, MixedStreamServerControlConfig, MixedStreamType, MixedStreamVideoCodecType, MixedStreamVideoConfig, MixedStreamVideoType, MulDimSingScoringMode, MusicFilterType, MusicHotType, MusicInfo, MuteState, NativeSurfaceView, NativeUIView, NativeVariables, NativeViewComponent, NetworkDetectionLinkType, NetworkDetectionStopReason, NetworkQuality, NetworkQualityStats, NetworkTimeInfo, Orientation, PauseResumeControlMediaType, PerformanceAlarmMode, PerformanceAlarmReason, PlayState, PlayerError, PlayerState, Position, PositionInfo, ProblemFeedbackInfo, ProblemFeedbackOption, ProblemFeedbackRoomInfo, PublicStreamErrorCode, PublicStreaming, PublishFallbackOption, PublishState, PublishStateChangeReason, PushSingleStreamParam, RPSampleBufferType, RTCASRConfig, RTCASRErrorCode, RTCEncodedVideoFrame, RTCLogConfig, RTCManager, RTCNetworkType, RTCRoom, RTCRoomConfig, RTCRoomStats, RTCScreenVideoEncoderPreference, RTCStream, RTCStreamMixingErrorCode, RTCStreamSinglePushEvent, RTCUser, RTCUserOfflineReason, RTCVideo, RTCVideoEncoderPreference, ReceiveRange, RecordingConfig, RecordingErrorCode, RecordingFileType, RecordingInfo, RecordingProgress, RecordingState, RecordingType, Rectangle, RemoteAudioPropertiesInfo, RemoteAudioState, RemoteAudioStateChangeReason, RemoteAudioStats, RemoteMirrorType, RemoteStreamKey, RemoteStreamStats, RemoteStreamSwitchEvent, RemoteUserPriority, RemoteVideoConfig, RemoteVideoRenderConfig, RemoteVideoRenderPosition, RemoteVideoSinkConfig, RemoteVideoState, RemoteVideoStateChangeReason, RemoteVideoStats, RenderMode, ReturnStatus, RoomMessageSendResult, SEICountPerFrame, SEIStreamUpdateEventType, ScreenIntent, ScreenMediaType, ScreenVideoEncoderConfig, SetRoomExtraInfoResult, SingScoringConfig, SingScoringRealtimeInfo, SourceWantedData, StandardPitchInfo, StreamIndex, StreamRemoveReason, StreamSycnInfoConfig, SubscribeConfig, SubscribeMediaType, SubscribeState, SubscribeStateChangeReason, SubscribeVideoConfig, SubtitleConfig, SubtitleErrorCode, SubtitleMessage, SubtitleMode, SubtitleState, SyncInfoStreamType, SysStats, TorchState, TranscoderContentControlType, TranscoderLayoutRegionType, UIView, UserInfo, UserMessageSendResult, UserOnlineStatus, UserVisibilityChangeError, VideoApplyRotation, VideoCanvas, VideoCaptureConfig, VideoCodecType, VideoContentType, VideoDecoderConfig, VideoDenoiseMode, VideoDenoiseModeChangedReason, VideoDeviceType, VideoEncoderConfig, VideoFrame, VideoFrameInfo, VideoFrameType, VideoOrientation, VideoPictureType, VideoPixelFormat, VideoPreprocessorConfig, VideoRenderMirrorType, VideoRotation, VideoRotationMode, VideoSourceType, VideoSuperResolutionMode, VideoSuperResolutionModeChangedReason, VirtualBackgroundSource, VirtualBackgroundSourceType, VoiceChangerType, VoiceEqualizationConfig, VoiceReverbConfig, VoiceReverbType, WarningCode, ZoomConfigType, ZoomDirectionType, android_IAudioEffectPlayerEventHandler, android_IAudioFileFrameObserver, android_IAudioFrameObserver, android_IAudioFrameProcessor, android_IExternalVideoEncoderEventHandler, android_IFaceDetectionObserver, android_ILocalEncodedVideoFrameObserver, android_IMediaPlayerAudioFrameObserver, android_IMediaPlayerCustomSourceProvider, android_IMediaPlayerEventHandler, android_IMixedStreamObserver, android_IPushSingleStreamToCDNObserver, android_IRemoteEncodedVideoFrameObserver, android_RTCRoomEventHandler, android_RTCVideoEventHandler, ios_IAudioEffectPlayerEventHandler, ios_IAudioFileFrameObserver, ios_IAudioFrameObserver, ios_IAudioFrameProcessor, ios_IExternalVideoEncoderEventHandler, ios_IFaceDetectionObserver, ios_ILocalEncodedVideoFrameObserver, ios_IMediaPlayerAudioFrameObserver, ios_IMediaPlayerCustomSourceProvider, ios_IMediaPlayerEventHandler, ios_IMixedStreamObserver, ios_IPushSingleStreamToCDNObserver, ios_IRemoteEncodedVideoFrameObserver, ios_RTCRoomEventHandler, ios_RTCVideoEventHandler, t_AACProfile, t_ASRAuthorizationType, t_AVSyncState, t_AlphaLayout, t_AnsMode, t_AttenuationType, t_AudioAlignmentMode, t_AudioChannel, t_AudioDeviceType, t_AudioFrameCallbackMethod, t_AudioFrameSource, t_AudioMixingDualMonoMode, t_AudioMixingError, t_AudioMixingState, t_AudioMixingType, t_AudioPlayType, t_AudioPlaybackDevice, t_AudioProfileType, t_AudioPropertiesMode, t_AudioQuality, t_AudioRecordingErrorCode, t_AudioRecordingState, t_AudioRenderType, t_AudioReportMode, t_AudioRoute, t_AudioSampleRate, t_AudioScenarioType, t_AudioSelectionPriority, t_AudioSourceType, t_AudioTrackType, t_BandFrequency, t_ByteRTCStreamMixingEvent, t_ByteRTCStreamMixingType, t_CameraId, t_ChannelProfile, t_ColorSpace, t_ConnectionState, t_DataMessageSourceType, t_DownloadFileType, t_DownloadLyricType, t_EarMonitorMode, t_EchoTestResult, t_EffectBeautyMode, t_ErrorCode, t_FallbackOrRecoverReason, t_FirstFramePlayState, t_FirstFrameSendState, t_ForwardStreamError, t_ForwardStreamEvent, t_ForwardStreamState, t_HardwareEchoDetectionResult, t_KTVErrorCode, t_KTVPlayerErrorCode, t_LocalAudioStreamError, t_LocalAudioStreamState, t_LocalLogLevel, t_LocalProxyError, t_LocalProxyState, t_LocalProxyType, t_LocalVideoRenderPosition, t_LocalVideoStreamError, t_LocalVideoStreamState, t_LoginErrorCode, t_LogoutReason, t_LyricStatus, t_MediaDeviceError, t_MediaDeviceState, t_MediaDeviceType, t_MediaDeviceWarning, t_MediaPlayerCustomSourceMode, t_MediaPlayerCustomSourceSeekWhence, t_MediaPlayerCustomSourceStreamType, t_MediaStreamType, t_MessageConfig, t_MirrorType, t_MixedStreamAlternateImageFillMode, t_MixedStreamAudioCodecType, t_MixedStreamAudioProfile, t_MixedStreamClientMixVideoFormat, t_MixedStreamLayoutRegionType, t_MixedStreamMediaType, t_MixedStreamPushMode, t_MixedStreamRenderMode, t_MixedStreamSEIContentMode, t_MixedStreamType, t_MixedStreamVideoCodecType, t_MixedStreamVideoType, t_MulDimSingScoringMode, t_MusicFilterType, t_MusicHotType, t_MuteState, t_NetworkDetectionLinkType, t_NetworkDetectionStopReason, t_NetworkQuality, t_PauseResumeControlMediaType, t_PerformanceAlarmMode, t_PerformanceAlarmReason, t_PlayState, t_PlayerError, t_PlayerState, t_ProblemFeedbackOption, t_PublicStreamErrorCode, t_PublishFallbackOption, t_PublishState, t_PublishStateChangeReason, t_RTCASRErrorCode, t_RTCNetworkType, t_RTCScreenVideoEncoderPreference, t_RTCStreamMixingErrorCode, t_RTCStreamSinglePushEvent, t_RTCUserOfflineReason, t_RTCVideoEncoderPreference, t_RecordingErrorCode, t_RecordingFileType, t_RecordingState, t_RecordingType, t_RemoteAudioState, t_RemoteAudioStateChangeReason, t_RemoteMirrorType, t_RemoteUserPriority, t_RemoteVideoRenderPosition, t_RemoteVideoState, t_RemoteVideoStateChangeReason, t_RenderMode, t_ReturnStatus, t_RoomMessageSendResult, t_SEICountPerFrame, t_SEIStreamUpdateEventType, t_ScreenMediaType, t_SetRoomExtraInfoResult, t_StreamIndex, t_StreamRemoveReason, t_SubscribeMediaType, t_SubscribeState, t_SubscribeStateChangeReason, t_SubtitleErrorCode, t_SubtitleMode, t_SubtitleState, t_SyncInfoStreamType, t_TorchState, t_TranscoderContentControlType, t_TranscoderLayoutRegionType, t_UserMessageSendResult, t_UserOnlineStatus, t_UserVisibilityChangeError, t_VideoApplyRotation, t_VideoCodecType, t_VideoContentType, t_VideoDecoderConfig, t_VideoDenoiseMode, t_VideoDenoiseModeChangedReason, t_VideoDeviceType, t_VideoFrameType, t_VideoOrientation, t_VideoPictureType, t_VideoPixelFormat, t_VideoRenderMirrorType, t_VideoRotation, t_VideoRotationMode, t_VideoSourceType, t_VideoSuperResolutionMode, t_VideoSuperResolutionModeChangedReason, t_VirtualBackgroundSourceType, t_VoiceChangerType, t_VoiceReverbType, t_WarningCode, t_ZoomConfigType, t_ZoomDirectionType };