@byteplus/react-native-rtc 1.1.2 → 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 -1
  11. package/android/src/main/java/com/volcengine/reactnative/vertc/events/IRTCRoomEventHandlerImpl.java +53 -8
  12. package/android/src/main/java/com/volcengine/reactnative/vertc/events/IRTCVideoEventHandlerImpl.java +62 -19
  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
@@ -2570,6 +2570,7 @@ var MessageProtoImpl = function () {
2570
2570
  var buf = bufferLike.buffer || bufferLike;
2571
2571
  return {
2572
2572
  _type: "base64" /* ARG_TYPE.BASE64 */,
2573
+ // @ts-ignore
2573
2574
  _value: buf2base64(buf),
2574
2575
  };
2575
2576
  };
@@ -2911,6 +2912,77 @@ var ReactNativeBridge = /** @class */ (function () {
2911
2912
  return ReactNativeBridge;
2912
2913
  }());
2913
2914
 
2915
+ var ReactNativeTurboBridge = /** @class */ (function () {
2916
+ function ReactNativeTurboBridge(BridgeModule, NativeEventName) {
2917
+ this.BridgeModule = BridgeModule;
2918
+ this.NativeEventName = NativeEventName;
2919
+ this._handlers = {};
2920
+ if (BridgeModule === undefined) {
2921
+ throw new Error("can't find module \"".concat(BridgeModule, "\", please enure install the module correctly"));
2922
+ }
2923
+ // this._nativeEventEmitter = new NativeEventEmitter(BridgeModule);
2924
+ this._nativeEventEmitter = new reactNative.NativeEventEmitter(BridgeModule);
2925
+ this._init();
2926
+ }
2927
+ ReactNativeTurboBridge.prototype._init = function () {
2928
+ var _this = this;
2929
+ this._nativeEventEmitter.addListener(this.NativeEventName, function (ev) {
2930
+ var _a, _b;
2931
+ try {
2932
+ var eventName = ev.event;
2933
+ var eventData = typeof ev.data === 'string' ? JSON.parse(ev.data) : ev.data;
2934
+ (_b = (_a = _this._handlers)[eventName]) === null || _b === void 0 ? void 0 : _b.call(_a, eventData);
2935
+ }
2936
+ catch (err) {
2937
+ console.error('handle native event fail:', err);
2938
+ }
2939
+ });
2940
+ };
2941
+ ReactNativeTurboBridge.prototype.call = function (params) {
2942
+ var _this = this;
2943
+ return new Promise(function (resolve, reject) {
2944
+ try {
2945
+ var resolved_1 = false;
2946
+ _this.BridgeModule.call(JSON.stringify(params), function (res) {
2947
+ var val = typeof res === 'string' ? JSON.parse(res) : res;
2948
+ resolved_1 = true;
2949
+ resolve(val);
2950
+ });
2951
+ setTimeout(function () {
2952
+ if (resolved_1) {
2953
+ return;
2954
+ }
2955
+ resolve({
2956
+ status: RETURN_STATUS.SUCCESS,
2957
+ msg: 'over timeout and auto success',
2958
+ });
2959
+ }, 1000 * 60 * 5);
2960
+ }
2961
+ catch (err) {
2962
+ // console.error(`<RNBridge> call native "${handlerName}()" fail`, err);
2963
+ reject(err);
2964
+ }
2965
+ });
2966
+ };
2967
+ ReactNativeTurboBridge.prototype.callSync = function (params) {
2968
+ try {
2969
+ var res = this.BridgeModule.callSync(JSON.stringify(params));
2970
+ return typeof res === 'string' ? JSON.parse(res) : res;
2971
+ }
2972
+ catch (err) {
2973
+ // console.error(`<RNBridge> call native "${handlerName}()" fail`, err);
2974
+ throw err;
2975
+ }
2976
+ };
2977
+ ReactNativeTurboBridge.prototype.registerHandler = function (handlerName, handler) {
2978
+ this._handlers[handlerName] = handler;
2979
+ };
2980
+ ReactNativeTurboBridge.prototype.registerAsyncHandler = function (handlerName, handler) {
2981
+ this._handlers[handlerName] = handler;
2982
+ };
2983
+ return ReactNativeTurboBridge;
2984
+ }());
2985
+
2914
2986
  /******************************************************************************
2915
2987
  Copyright (c) Microsoft Corporation.
2916
2988
 
@@ -2957,13 +3029,10 @@ var ReactNativeEnv = /** @class */ (function () {
2957
3029
  return ReactNativeEnv;
2958
3030
  }());
2959
3031
 
2960
- var moduleName = 'VertcModule';
2961
- var moduleEventName = 'VertcModule:onEvent';
2962
- setupJSBridge(new ReactNativeBridge(reactNative.NativeModules[moduleName], moduleEventName));
2963
- setupEnv(new ReactNativeEnv());
2964
- // setupLogger({
2965
- // level: LogLevel.DEBUG,
2966
- // });
3032
+ /**
3033
+ * 获取NativeBridgeModule实例
3034
+ */
3035
+ var NativeVertc = reactNative.TurboModuleRegistry.get('Vertc');
2967
3036
 
2968
3037
  /******************************************************************************
2969
3038
  Copyright (c) Microsoft Corporation.
@@ -3087,6 +3156,107 @@ typeof SuppressedError === "function" ? SuppressedError : function (error, suppr
3087
3156
  return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
3088
3157
  };
3089
3158
 
3159
+ var NativeSurfaceView = /** @class */ (function (_super) {
3160
+ __extends(NativeSurfaceView, _super);
3161
+ function NativeSurfaceView() {
3162
+ return _super !== null && _super.apply(this, arguments) || this;
3163
+ }
3164
+ return NativeSurfaceView;
3165
+ }(NativeView));
3166
+ var ApplicationContext = /** @class */ (function () {
3167
+ function ApplicationContext() {
3168
+ }
3169
+ return ApplicationContext;
3170
+ }());
3171
+ var ScreenIntent = /** @class */ (function () {
3172
+ function ScreenIntent() {
3173
+ }
3174
+ return ScreenIntent;
3175
+ }());
3176
+ var NativeVariables = function () {
3177
+ var _a;
3178
+ var _staticExtraInitializers = [];
3179
+ var _static_getApplicationContext_decorators;
3180
+ var _static_getScreenIntent_decorators;
3181
+ return _a = /** @class */ (function () {
3182
+ function NativeVariables() {
3183
+ }
3184
+ NativeVariables.getApplicationContext = function () {
3185
+ throw new Error('');
3186
+ };
3187
+ NativeVariables.getScreenIntent = function () {
3188
+ throw new Error('');
3189
+ };
3190
+ return NativeVariables;
3191
+ }()),
3192
+ (function () {
3193
+ var _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
3194
+ _static_getApplicationContext_decorators = [NativeVar('ApplicationContext', ApplicationContext)];
3195
+ _static_getScreenIntent_decorators = [NativeVar('screenIntent', ScreenIntent)];
3196
+ __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);
3197
+ __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);
3198
+ if (_metadata) Object.defineProperty(_a, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
3199
+ __runInitializers(_a, _staticExtraInitializers);
3200
+ })(),
3201
+ _a;
3202
+ }();
3203
+
3204
+ var isAndroid = function () { return reactNative.Platform.OS === 'android'; };
3205
+ var isIOS = function () { return reactNative.Platform.OS === 'ios'; };
3206
+ var platformBriefs = function (_a) {
3207
+ var android = _a.android, ios = _a.ios;
3208
+ if (isAndroid()) {
3209
+ return android();
3210
+ }
3211
+ if (isIOS()) {
3212
+ return ios();
3213
+ }
3214
+ throw new Error('Unsupported platform');
3215
+ };
3216
+ var _isNewArch;
3217
+ function isNewArch() {
3218
+ if (_isNewArch !== undefined) {
3219
+ return _isNewArch;
3220
+ }
3221
+ else {
3222
+ try {
3223
+ // Check for Fabric UI Manager
3224
+ var hasFabricUIManager = Boolean(global === null || global === void 0 ? void 0 : global.nativeFabricUIManager);
3225
+ // Check for TurboModule system
3226
+ var hasTurboModule = Boolean(global === null || global === void 0 ? void 0 : global.__turboModuleProxy);
3227
+ _isNewArch = hasFabricUIManager || hasTurboModule;
3228
+ }
3229
+ catch (_a) {
3230
+ _isNewArch = true;
3231
+ }
3232
+ }
3233
+ return _isNewArch;
3234
+ }
3235
+
3236
+ var moduleName = 'VertcModule';
3237
+ var isTurboModuleEnabled = isNewArch();
3238
+ var Vertc = isTurboModuleEnabled ? NativeVertc : reactNative.NativeModules[moduleName];
3239
+ if (isTurboModuleEnabled) {
3240
+ console.log('[RN Module] TurboModule Enable', NativeVertc);
3241
+ }
3242
+ else {
3243
+ console.log('[RN Module] NativeModule Enable', Vertc);
3244
+ }
3245
+
3246
+ var moduleEventName = 'VertcModule:onEvent';
3247
+ if (isTurboModuleEnabled) {
3248
+ console.log('[Vertc] TurboModule Enable', Vertc);
3249
+ setupJSBridge(new ReactNativeTurboBridge(Vertc, moduleEventName));
3250
+ }
3251
+ else {
3252
+ console.log('[Vertc] NativeModule Enable', reactNative.NativeModules);
3253
+ setupJSBridge(new ReactNativeBridge(Vertc, moduleEventName));
3254
+ }
3255
+ setupEnv(new ReactNativeEnv());
3256
+ // setupLogger({
3257
+ // level: LogLevel.DEBUG,
3258
+ // });
3259
+
3090
3260
  var CodecMode;
3091
3261
  (function (CodecMode) {
3092
3262
  CodecMode[CodecMode["CODEC_MODE_AUTO"] = 0] = "CODEC_MODE_AUTO";
@@ -4722,12 +4892,53 @@ var RemoteMirrorType;
4722
4892
  RemoteMirrorType[RemoteMirrorType["NONE"] = 0] = "NONE";
4723
4893
  RemoteMirrorType[RemoteMirrorType["RENDER"] = 1] = "RENDER";
4724
4894
  })(RemoteMirrorType || (RemoteMirrorType = {}));
4895
+ var PublishStateChangeReason;
4896
+ (function (PublishStateChangeReason) {
4897
+ PublishStateChangeReason[PublishStateChangeReason["PUBLISH"] = 0] = "PUBLISH";
4898
+ PublishStateChangeReason[PublishStateChangeReason["UNPUBLISH"] = 1] = "UNPUBLISH";
4899
+ PublishStateChangeReason[PublishStateChangeReason["NO_PUBLISH_PERMISSION"] = 2] = "NO_PUBLISH_PERMISSION";
4900
+ PublishStateChangeReason[PublishStateChangeReason["OVER_STREAM_PUBLISH_LIMIT"] = 3] = "OVER_STREAM_PUBLISH_LIMIT";
4901
+ PublishStateChangeReason[PublishStateChangeReason["MULTIROOM_UNPUBLISH_FAILED"] = 4] = "MULTIROOM_UNPUBLISH_FAILED";
4902
+ PublishStateChangeReason[PublishStateChangeReason["PUBLISH_STREAM_FAILED"] = 5] = "PUBLISH_STREAM_FAILED";
4903
+ PublishStateChangeReason[PublishStateChangeReason["PUBLISH_STREAM_FORBIDEN"] = 6] = "PUBLISH_STREAM_FORBIDEN";
4904
+ PublishStateChangeReason[PublishStateChangeReason["USER_IN_PUBLISH"] = 7] = "USER_IN_PUBLISH";
4905
+ })(PublishStateChangeReason || (PublishStateChangeReason = {}));
4906
+ var PublishState;
4907
+ (function (PublishState) {
4908
+ /** {en}
4909
+ * @brief Successfully published.
4910
+ *
4911
+ */
4912
+ PublishState[PublishState["PUBLISHED"] = 0] = "PUBLISHED";
4913
+ /** {en}
4914
+ * @brief Failed to publish.
4915
+ *
4916
+ */
4917
+ PublishState[PublishState["UNPUBLISHED"] = 1] = "UNPUBLISHED";
4918
+ })(PublishState || (PublishState = {}));
4919
+ var SubscribeStateChangeReason;
4920
+ (function (SubscribeStateChangeReason) {
4921
+ SubscribeStateChangeReason[SubscribeStateChangeReason["SUBSCRIBE"] = 0] = "SUBSCRIBE";
4922
+ SubscribeStateChangeReason[SubscribeStateChangeReason["UNSUBSCRIBE"] = 1] = "UNSUBSCRIBE";
4923
+ SubscribeStateChangeReason[SubscribeStateChangeReason["REMOTE_PUBLISH"] = 2] = "REMOTE_PUBLISH";
4924
+ SubscribeStateChangeReason[SubscribeStateChangeReason["REMOTE_UNPUBLISH"] = 3] = "REMOTE_UNPUBLISH";
4925
+ SubscribeStateChangeReason[SubscribeStateChangeReason["STREAM_FAILED_5XX"] = 4] = "STREAM_FAILED_5XX";
4926
+ SubscribeStateChangeReason[SubscribeStateChangeReason["STREAM_FAILED_404"] = 5] = "STREAM_FAILED_404";
4927
+ SubscribeStateChangeReason[SubscribeStateChangeReason["OVER_STREAM_SUBSCRIBE_LIMIT"] = 6] = "OVER_STREAM_SUBSCRIBE_LIMIT";
4928
+ SubscribeStateChangeReason[SubscribeStateChangeReason["NO_SUBSCRIBE_PERMISSION"] = 7] = "NO_SUBSCRIBE_PERMISSION";
4929
+ })(SubscribeStateChangeReason || (SubscribeStateChangeReason = {}));
4725
4930
  var SubscribeState;
4726
4931
  (function (SubscribeState) {
4727
- SubscribeState[SubscribeState["SUBSCRIBE_STATE_SUCCESS"] = 0] = "SUBSCRIBE_STATE_SUCCESS";
4728
- SubscribeState[SubscribeState["SUBSCRIBE_STATE_FAILED_NOT_IN_ROOM"] = 1] = "SUBSCRIBE_STATE_FAILED_NOT_IN_ROOM";
4729
- SubscribeState[SubscribeState["SUBSCRIBE_STATE_FAILED_STREAM_NOT_FOUND"] = 2] = "SUBSCRIBE_STATE_FAILED_STREAM_NOT_FOUND";
4730
- SubscribeState[SubscribeState["SUBSCRIBE_STATE_FAILED_SIGNAL"] = 4] = "SUBSCRIBE_STATE_FAILED_SIGNAL";
4932
+ /** {en}
4933
+ * @brief Successfully subscribed.
4934
+ *
4935
+ */
4936
+ SubscribeState[SubscribeState["SUBSCRIBED"] = 0] = "SUBSCRIBED";
4937
+ /** {en}
4938
+ * @brief Failed to subscribe.
4939
+ *
4940
+ */
4941
+ SubscribeState[SubscribeState["UNSUBSCRIBED"] = 1] = "UNSUBSCRIBED";
4731
4942
  })(SubscribeState || (SubscribeState = {}));
4732
4943
  var VirtualBackgroundSource$1 = function () {
4733
4944
  var _classDecorators = [NativeClass('com.ss.bytertc.engine.data.VirtualBackgroundSource')];
@@ -5392,12 +5603,16 @@ var RTCRoomConfig$1 = function () {
5392
5603
  var _classDescriptor;
5393
5604
  var _classExtraInitializers = [];
5394
5605
  var _classThis;
5606
+ var _instanceExtraInitializers = [];
5395
5607
  var _profile_decorators;
5396
5608
  var _profile_initializers = [];
5397
5609
  var _profile_extraInitializers = [];
5398
- var _isAutoPublish_decorators;
5399
- var _isAutoPublish_initializers = [];
5400
- var _isAutoPublish_extraInitializers = [];
5610
+ var _isPublishAudio_decorators;
5611
+ var _isPublishAudio_initializers = [];
5612
+ var _isPublishAudio_extraInitializers = [];
5613
+ var _isPublishVideo_decorators;
5614
+ var _isPublishVideo_initializers = [];
5615
+ var _isPublishVideo_extraInitializers = [];
5401
5616
  var _isAutoSubscribeAudio_decorators;
5402
5617
  var _isAutoSubscribeAudio_initializers = [];
5403
5618
  var _isAutoSubscribeAudio_extraInitializers = [];
@@ -5407,27 +5622,66 @@ var RTCRoomConfig$1 = function () {
5407
5622
  var _remoteVideoConfig_decorators;
5408
5623
  var _remoteVideoConfig_initializers = [];
5409
5624
  var _remoteVideoConfig_extraInitializers = [];
5625
+ var _isPublishAudio$_decorators;
5410
5626
  _classThis = /** @class */ (function () {
5411
- function RTCRoomConfig_1() {
5412
- this.profile = __runInitializers(this, _profile_initializers, void 0);
5413
- this.isAutoPublish = (__runInitializers(this, _profile_extraInitializers), __runInitializers(this, _isAutoPublish_initializers, void 0));
5414
- this.isAutoSubscribeAudio = (__runInitializers(this, _isAutoPublish_extraInitializers), __runInitializers(this, _isAutoSubscribeAudio_initializers, void 0));
5627
+ function RTCRoomConfig_1(channelProfile, isPublishAudio, isPublishVideo, isAutoSubscribeAudio, isAutoSubscribeVideo, remoteVideoConfig) {
5628
+ /** {en}
5629
+ * @brief Room profile. See ChannelProfile{@link #ChannelProfile}. The default is `CHANNEL_PROFILE_COMMUNICATION`. The setting cannot be changed after joining the room.
5630
+ *
5631
+ */
5632
+ this.profile = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _profile_initializers, void 0));
5633
+ /** {en}
5634
+ * @brief Whether to publish media streams automatically. The default is automatic publishing.
5635
+ * + Changing the user role to audience via `setUserVisibility` will void this setting.
5636
+ * + 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.
5637
+ *
5638
+ */
5639
+ this.isPublishAudio = (__runInitializers(this, _profile_extraInitializers), __runInitializers(this, _isPublishAudio_initializers, void 0));
5640
+ /** {en}
5641
+ * @brief Whether to publish media streams automatically. The default is automatic publishing.
5642
+ * + Changing the user role to audience via `setUserVisibility` will void this setting.
5643
+ * + 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.
5644
+ *
5645
+ */
5646
+ this.isPublishVideo = (__runInitializers(this, _isPublishAudio_extraInitializers), __runInitializers(this, _isPublishVideo_initializers, void 0));
5647
+ /** {en}
5648
+ * @brief Whether to automatically subscribe to the audio stream. The default is automatic subscription. <br>
5649
+ * This setting affects both the main stream and the screen-sharing stream.
5650
+ *
5651
+ */
5652
+ this.isAutoSubscribeAudio = (__runInitializers(this, _isPublishVideo_extraInitializers), __runInitializers(this, _isAutoSubscribeAudio_initializers, void 0));
5653
+ /** {en}
5654
+ * @brief Whether to automatically subscribe to the main video stream. The default is automatic subscription. <br>
5655
+ * This setting affects both the main stream and the screen-sharing stream.
5656
+ *
5657
+ */
5415
5658
  this.isAutoSubscribeVideo = (__runInitializers(this, _isAutoSubscribeAudio_extraInitializers), __runInitializers(this, _isAutoSubscribeVideo_initializers, void 0));
5659
+ /** {en}
5660
+ * @brief Expected configuration of remote video stream, see RemoteVideoConfig{@link #RemoteVideoConfig}.
5661
+ *
5662
+ */
5416
5663
  this.remoteVideoConfig = (__runInitializers(this, _isAutoSubscribeVideo_extraInitializers), __runInitializers(this, _remoteVideoConfig_initializers, void 0));
5417
5664
  __runInitializers(this, _remoteVideoConfig_extraInitializers);
5418
5665
  }
5666
+ RTCRoomConfig_1.prototype.isPublishAudio$ = function () {
5667
+ throw new Error('not implement');
5668
+ };
5419
5669
  return RTCRoomConfig_1;
5420
5670
  }());
5421
5671
  __setFunctionName(_classThis, "RTCRoomConfig");
5422
5672
  (function () {
5423
5673
  var _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
5424
5674
  _profile_decorators = [NativeMember()];
5425
- _isAutoPublish_decorators = [NativeMember()];
5675
+ _isPublishAudio_decorators = [NativeMember()];
5676
+ _isPublishVideo_decorators = [NativeMember()];
5426
5677
  _isAutoSubscribeAudio_decorators = [NativeMember()];
5427
5678
  _isAutoSubscribeVideo_decorators = [NativeMember()];
5428
5679
  _remoteVideoConfig_decorators = [NativeMember()];
5680
+ _isPublishAudio$_decorators = [NativeMethodSync('isPublishAudio')];
5681
+ __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);
5429
5682
  __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);
5430
- __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);
5683
+ __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);
5684
+ __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);
5431
5685
  __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);
5432
5686
  __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);
5433
5687
  __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);
@@ -10141,12 +10395,41 @@ var MediaStreamType;
10141
10395
  })(MediaStreamType || (MediaStreamType = {}));
10142
10396
  var MediaDeviceState;
10143
10397
  (function (MediaDeviceState) {
10398
+ /** {en}
10399
+ * @brief Device started capturing
10400
+ *
10401
+ */
10144
10402
  MediaDeviceState[MediaDeviceState["MEDIA_DEVICE_STATE_STARTED"] = 1] = "MEDIA_DEVICE_STATE_STARTED";
10403
+ /** {en}
10404
+ * @brief Device stopped capturing
10405
+ *
10406
+ */
10145
10407
  MediaDeviceState[MediaDeviceState["MEDIA_DEVICE_STATE_STOPPED"] = 2] = "MEDIA_DEVICE_STATE_STOPPED";
10408
+ /** {en}
10409
+ * @brief Runtime error <br>
10410
+ * For example, when the media device is expected to be working but no data is received.
10411
+ *
10412
+ */
10146
10413
  MediaDeviceState[MediaDeviceState["MEDIA_DEVICE_STATE_RUNTIMEERROR"] = 3] = "MEDIA_DEVICE_STATE_RUNTIMEERROR";
10414
+ /** {en}
10415
+ * @brief Device is added.
10416
+ *
10417
+ */
10147
10418
  MediaDeviceState[MediaDeviceState["MEDIA_DEVICE_STATE_ADDED"] = 10] = "MEDIA_DEVICE_STATE_ADDED";
10419
+ /** {en}
10420
+ * @brief Device is removed.
10421
+ *
10422
+ */
10148
10423
  MediaDeviceState[MediaDeviceState["MEDIA_DEVICE_STATE_REMOVED"] = 11] = "MEDIA_DEVICE_STATE_REMOVED";
10424
+ /** {en}
10425
+ * @brief A Phone call interrupted the RTC call. RTC call will resume once the call ends.
10426
+ *
10427
+ */
10149
10428
  MediaDeviceState[MediaDeviceState["MEDIA_DEVICE_STATE_INTERRUPTION_BEGAN"] = 12] = "MEDIA_DEVICE_STATE_INTERRUPTION_BEGAN";
10429
+ /** {en}
10430
+ * @brief RTC call resumed from the interruption caused by a phone call.
10431
+ *
10432
+ */
10150
10433
  MediaDeviceState[MediaDeviceState["MEDIA_DEVICE_STATE_INTERRUPTION_ENDED"] = 13] = "MEDIA_DEVICE_STATE_INTERRUPTION_ENDED";
10151
10434
  })(MediaDeviceState || (MediaDeviceState = {}));
10152
10435
  (function () {
@@ -12477,16 +12760,16 @@ var RTCRoom$1 = function () {
12477
12760
  var _sendRoomBinaryMessage_decorators;
12478
12761
  var _setMultiDeviceAVSync_decorators;
12479
12762
  var _setRemoteVideoConfig_decorators;
12480
- var _publishStream_decorators;
12481
- var _unpublishStream_decorators;
12482
- var _publishScreen_decorators;
12483
- var _unpublishScreen_decorators;
12484
- var _subscribeStream_decorators;
12763
+ var _publishStreamVideo_decorators;
12764
+ var _publishStreamAudio_decorators;
12765
+ var _publishScreenVideo_decorators;
12766
+ var _publishScreenAudio_decorators;
12767
+ var _subscribeStreamVideo_decorators;
12768
+ var _subscribeStreamAudio_decorators;
12769
+ var _subscribeScreenVideo_decorators;
12770
+ var _subscribeScreenAudio_decorators;
12485
12771
  var _subscribeAllStreams_decorators;
12486
- var _unsubscribeStream_decorators;
12487
12772
  var _unsubscribeAllStreams_decorators;
12488
- var _subscribeScreen_decorators;
12489
- var _unsubscribeScreen_decorators;
12490
12773
  var _pauseAllSubscribedStream_decorators;
12491
12774
  var _resumeAllSubscribedStream_decorators;
12492
12775
  var _startForwardStreamToRooms_decorators;
@@ -12543,34 +12826,178 @@ var RTCRoom$1 = function () {
12543
12826
  RTCRoom_1.prototype.setRemoteVideoConfig = function (userId, remoteVideoConfig) {
12544
12827
  throw new Error('not implement');
12545
12828
  };
12546
- RTCRoom_1.prototype.publishStream = function (type) {
12829
+ /** {en}
12830
+ * @detail api
12831
+ * @valid since 3.60.
12832
+ * @brief Start or stop publishing video streams captured by camera in the current room.
12833
+ * @param publish Whether to publish the media stream.
12834
+ * @return
12835
+ * - 0: Success.
12836
+ * - < 0 : Fail. See ReturnStatus{@link #ReturnStatus} for more details
12837
+ * @note
12838
+ * - You don't need to call this API if you set it to Auto-publish when calling joinRoom{@link #RTCRoom#joinRoom}.
12839
+ * - An invisible user cannot publish media streams. Call setUserVisibility{@link #RTCRoom#setUserVisibility} to change your visibility in the room.
12840
+ * - Call publishScreenAudio{@link #RTCRoom#publishScreenAudio} (not supported on Linux) and/or publishScreenVideo{@link #RTCRoom#publishScreenVideo} to start or stop screen sharing.
12841
+ * - Call publishStreamAudio{@link #RTCRoom#publishStreamAudio} to start or stop publishing the audio stream captured by the microphone.
12842
+ * - Call startForwardStreamToRooms{@link #RTCRoom#startForwardStreamToRooms} to forward the published streams to the other rooms.
12843
+ * - 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.
12844
+ *
12845
+ */
12846
+ RTCRoom_1.prototype.publishStreamVideo = function (publish) {
12547
12847
  throw new Error('not implement');
12548
12848
  };
12549
- RTCRoom_1.prototype.unpublishStream = function (type) {
12849
+ /** {en}
12850
+ * @detail api
12851
+ * @valid since 3.60.
12852
+ * @brief Start or stop publishing media streams captured by the local microphone in the current room.
12853
+ * @param publish Whether to publish the media stream.
12854
+ * @return
12855
+ * - 0: Success.
12856
+ * - < 0 : Fail. See ReturnStatus{@link #ReturnStatus} for more details
12857
+ * @note
12858
+ * - You don't need to call this API if you set it to Auto-publish when calling joinRoom{@link #RTCRoom#joinRoom}.
12859
+ * - An invisible user cannot publish media streams. Call setUserVisibility{@link #RTCRoom#setUserVisibility} to change your visibility in the room.
12860
+ * - Call publishScreenAudio{@link #RTCRoom#publishScreenAudio} (not supported on Linux) and/or publishScreenVideo{@link #RTCRoom#publishScreenVideo} to start or stop screen sharing.
12861
+ * - Call publishStreamVideo{@link #RTCRoom#publishStreamVideo} to start or stop publishing the video stream captured by the camera.
12862
+ * - Call startForwardStreamToRooms{@link #RTCRoom#startForwardStreamToRooms} to forward the published streams to the other rooms.
12863
+ * - 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.
12864
+ *
12865
+ */
12866
+ RTCRoom_1.prototype.publishStreamAudio = function (publish) {
12550
12867
  throw new Error('not implement');
12551
12868
  };
12552
- RTCRoom_1.prototype.publishScreen = function (type) {
12869
+ /** {en}
12870
+ * @detail api
12871
+ * @valid since 3.60.
12872
+ * @brief Start or stop sharing the local screen in the room.
12873
+ * 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.
12874
+ * @param publish Whether to publish video stream.
12875
+ * @return
12876
+ * - 0: Success.
12877
+ * - < 0 : Fail. See ReturnStatus{@link #ReturnStatus} for more details
12878
+ * @note
12879
+ * - You need to call this API to publish screen even if you set it to Auto-publish when calling joinRoom{@link #RTCRoom#joinRoom}.
12880
+ * - An invisible user cannot publish media streams. Call setUserVisibility{@link #RTCRoom#setUserVisibility} to change your visibility in the room.
12881
+ * - Call publishScreenAudio{@link #RTCRoom#publishScreenAudio} (not supported on Linux) to start or stop sharing computer audio.
12882
+ * - Call publishStreamVideo{@link #RTCRoom#publishStreamVideo} to start or stop publishing the video stream captured by the camera.
12883
+ * - Call publishStreamAudio{@link #RTCRoom#publishStreamAudio} to start or stop publishing the audio stream captured by the microphone.
12884
+ * - Call startForwardStreamToRooms{@link #RTCRoom#startForwardStreamToRooms} to forward the published streams to the other rooms.
12885
+ * - 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.
12886
+ * - After calling this API, you'll receive onScreenVideoFrameSendStateChanged{@link #IRTCEngineEventHandler#onScreenVideoFrameSendStateChanged}.
12887
+ * - Refer to [Sharing Screen in PC](https://docs.byteplus.com/byteplus-rtc/docs/70144) for more information.
12888
+ *
12889
+ */
12890
+ RTCRoom_1.prototype.publishScreenVideo = function (publish) {
12553
12891
  throw new Error('not implement');
12554
12892
  };
12555
- RTCRoom_1.prototype.unpublishScreen = function (type) {
12893
+ /** {en}
12894
+ * @hidden(Linux)
12895
+ * @detail api
12896
+ * @valid since 3.60.
12897
+ * @brief Manually publishes local screen-sharing streams in the current room. <br>
12898
+ * 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.
12899
+ * @param publish Media stream type, used for specifying whether to publish audio stream or video stream.
12900
+ * @return
12901
+ * - 0: Success.
12902
+ * - < 0 : Fail. See ReturnStatus{@link #ReturnStatus} for more details
12903
+ * @note
12904
+ * - You need to call this API to publish screen even if you set it to Auto-publish when calling joinRoom{@link #RTCRoom#joinRoom}.
12905
+ * - An invisible user cannot publish media streams. Call setUserVisibility{@link #RTCRoom#setUserVisibility} to change your visibility in the room.
12906
+ * - Call publishScreenVideo{@link #RTCRoom#publishScreenVideo} to start or stop sharing the local screen.
12907
+ * - Call publishStreamVideo{@link #RTCRoom#publishStreamVideo} to start or stop publishing the video stream captured by the camera.
12908
+ * - Call publishStreamAudio{@link #RTCRoom#publishStreamAudio} to start or stop publishing the audio stream captured by the microphone.
12909
+ * - Call startForwardStreamToRooms{@link #RTCRoom#startForwardStreamToRooms} to forward the published streams to the other rooms.
12910
+ * - 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.
12911
+ * - Refer to [Sharing Screen in PC](https://docs.byteplus.com/byteplus-rtc/docs/70144) for more information.
12912
+ *
12913
+ */
12914
+ RTCRoom_1.prototype.publishScreenAudio = function (publish) {
12556
12915
  throw new Error('not implement');
12557
12916
  };
12558
- RTCRoom_1.prototype.subscribeStream = function (uid, type) {
12917
+ /** {en}
12918
+ * @detail api
12919
+ * @valid since 3.60.
12920
+ * @brief Subscribes to specific remote media streams captured by the local camera. Or update the subscribe options of the subscribed user.
12921
+ * @param userId The ID of the remote user who published the target video stream.
12922
+ * @param subscribe Whether to subscribe to the stream.
12923
+ * @return API call result: <br>
12924
+ * - 0: Success.
12925
+ * - <0: Failure. See ReturnStatus{@link #ReturnStatus} for specific reasons.
12926
+ * @note
12927
+ * - 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.
12928
+ * - You must first get the remote stream information through onUserPublishStreamVideo{@link #IRTCRoomEventHandler#onUserPublishStreamVideo} before calling this API to subscribe to streams accordingly.
12929
+ * - After calling this API, you will be informed of the calling result with onVideoSubscribeStateChanged{@link #IRTCRoomEventHandler#onVideoSubscribeStateChanged}.
12930
+ * - 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}.
12931
+ * - Any other exceptions will be included in onVideoSubscribeStateChanged{@link #IRTCRoomEventHandler#onVideoSubscribeStateChanged}, see SubscribeStateChangeReason{@link #SubscribeStateChangeReason} for the reasons.
12932
+ *
12933
+ */
12934
+ RTCRoom_1.prototype.subscribeStreamVideo = function (userId, subscribe) {
12559
12935
  throw new Error('not implement');
12560
12936
  };
12561
- RTCRoom_1.prototype.subscribeAllStreams = function (type) {
12937
+ /** {en}
12938
+ * @detail api
12939
+ * @valid since 3.60.
12940
+ * @brief Subscribes to specific remote media streams captured by the local microphone. Or update the subscribe options of the subscribed user.
12941
+ * @param userId The ID of the remote user who published the target media stream.
12942
+ * @param subscribe Whether to subscribe to the audio stream.
12943
+ * @return API call result: <br>
12944
+ * - 0: Success.
12945
+ * - <0: Failure. See ReturnStatus{@link #ReturnStatus} for specific reasons.
12946
+ * @note
12947
+ * - 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.
12948
+ * - You must first get the remote stream information through onUserPublishStreamAudio{@link #IRTCRoomEventHandler#onUserPublishStreamAudio} before calling this API to subscribe to streams accordingly.
12949
+ * - After calling this API, you will be informed of the calling result with onAudioSubscribeStateChanged{@link #IRTCRoomEventHandler#onAudioSubscribeStateChanged}.
12950
+ * - 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}.
12951
+ * - Any other exceptions will be included in onAudioSubscribeStateChanged{@link #IRTCRoomEventHandler#onAudioSubscribeStateChanged}, see ErrorCode{@link #ErrorCode} for the reasons.
12952
+ *
12953
+ */
12954
+ RTCRoom_1.prototype.subscribeStreamAudio = function (userId, subscribe) {
12562
12955
  throw new Error('not implement');
12563
12956
  };
12564
- RTCRoom_1.prototype.unsubscribeStream = function (uid, type) {
12957
+ /** {en}
12958
+ * @detail api
12959
+ * @valid since 3.60.
12960
+ * @brief Subscribes to specific screen sharing media stream. Or update the subscribe options of the subscribed user.
12961
+ * @param userId The ID of the remote user who published the target screen video stream.
12962
+ * @param subscribe Whether to subscribe to the screen video stream.
12963
+ * @return API call result: <br>
12964
+ * - 0: Success.
12965
+ * - <0: Failure. See ReturnStatus{@link #ReturnStatus} for specific reasons.
12966
+ * @note
12967
+ * - 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.
12968
+ * - You must first get the remote stream information through onUserPublishScreenVideo{@link #IRTCRoomEventHandler#onUserPublishScreenVideo} before calling this API to subscribe to streams accordingly.
12969
+ * - After calling this API, you will be informed of the calling result with onScreenVideoSubscribeStateChanged{@link #IRTCRoomEventHandler#onScreenVideoSubscribeStateChanged}.
12970
+ * - 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}.
12971
+ * - Any other exceptions will be included in onScreenVideoSubscribeStateChanged{@link #IRTCRoomEventHandler#onScreenVideoSubscribeStateChanged}, see SubscribeStateChangeReason{@link #SubscribeStateChangeReason} for the reasons.
12972
+ *
12973
+ */
12974
+ RTCRoom_1.prototype.subscribeScreenVideo = function (userId, subscribe) {
12565
12975
  throw new Error('not implement');
12566
12976
  };
12567
- RTCRoom_1.prototype.unsubscribeAllStreams = function (type) {
12977
+ /** {en}
12978
+ * @detail api
12979
+ * @valid since 3.60.
12980
+ * @brief Subscribes to specific screen sharing media stream. Or update the subscribe options of the subscribed user.
12981
+ * @param userId The ID of the remote user who published the target screen audio stream.
12982
+ * @param subscribe Whether to subscribe to the screen audio stream.
12983
+ * @return API call result: <br>
12984
+ * - 0: Success.
12985
+ * - <0: Failure. See ReturnStatus{@link #ReturnStatus} for specific reasons.
12986
+ * @note
12987
+ * - 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.
12988
+ * - You must first get the remote stream information through onUserPublishScreenAudio{@link #IRTCRoomEventHandler#onUserPublishScreenAudio} before calling this API to subscribe to streams accordingly.
12989
+ * - After calling this API, you will be informed of the calling result with onScreenAudioSubscribeStateChanged{@link #IRTCRoomEventHandler#onScreenAudioSubscribeStateChanged}.
12990
+ * - 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}.
12991
+ * - Any other exceptions will be included in onScreenAudioSubscribeStateChanged{@link #IRTCRoomEventHandler#onScreenAudioSubscribeStateChanged}, see SubscribeStateChangeReason{@link #SubscribeStateChangeReason} for the reasons.
12992
+ *
12993
+ */
12994
+ RTCRoom_1.prototype.subscribeScreenAudio = function (userId, subscribe) {
12568
12995
  throw new Error('not implement');
12569
12996
  };
12570
- RTCRoom_1.prototype.subscribeScreen = function (uid, type) {
12997
+ RTCRoom_1.prototype.subscribeAllStreams = function (type) {
12571
12998
  throw new Error('not implement');
12572
12999
  };
12573
- RTCRoom_1.prototype.unsubscribeScreen = function (uid, type) {
13000
+ RTCRoom_1.prototype.unsubscribeAllStreams = function (type) {
12574
13001
  throw new Error('not implement');
12575
13002
  };
12576
13003
  RTCRoom_1.prototype.pauseAllSubscribedStream = function (mediaType) {
@@ -12638,16 +13065,16 @@ var RTCRoom$1 = function () {
12638
13065
  _sendRoomBinaryMessage_decorators = [NativeMethodSync()];
12639
13066
  _setMultiDeviceAVSync_decorators = [NativeMethodSync()];
12640
13067
  _setRemoteVideoConfig_decorators = [NativeMethodSync()];
12641
- _publishStream_decorators = [NativeMethodSync()];
12642
- _unpublishStream_decorators = [NativeMethodSync()];
12643
- _publishScreen_decorators = [NativeMethodSync()];
12644
- _unpublishScreen_decorators = [NativeMethodSync()];
12645
- _subscribeStream_decorators = [NativeMethodSync()];
13068
+ _publishStreamVideo_decorators = [NativeMethodSync()];
13069
+ _publishStreamAudio_decorators = [NativeMethodSync()];
13070
+ _publishScreenVideo_decorators = [NativeMethodSync()];
13071
+ _publishScreenAudio_decorators = [NativeMethodSync()];
13072
+ _subscribeStreamVideo_decorators = [NativeMethodSync()];
13073
+ _subscribeStreamAudio_decorators = [NativeMethodSync()];
13074
+ _subscribeScreenVideo_decorators = [NativeMethodSync()];
13075
+ _subscribeScreenAudio_decorators = [NativeMethodSync()];
12646
13076
  _subscribeAllStreams_decorators = [NativeMethodSync()];
12647
- _unsubscribeStream_decorators = [NativeMethodSync()];
12648
13077
  _unsubscribeAllStreams_decorators = [NativeMethodSync()];
12649
- _subscribeScreen_decorators = [NativeMethodSync()];
12650
- _unsubscribeScreen_decorators = [NativeMethodSync()];
12651
13078
  _pauseAllSubscribedStream_decorators = [NativeMethodSync()];
12652
13079
  _resumeAllSubscribedStream_decorators = [NativeMethodSync()];
12653
13080
  _startForwardStreamToRooms_decorators = [NativeMethodSync()];
@@ -12676,16 +13103,16 @@ var RTCRoom$1 = function () {
12676
13103
  __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);
12677
13104
  __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);
12678
13105
  __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);
12679
- __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);
12680
- __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);
12681
- __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);
12682
- __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);
12683
- __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);
13106
+ __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);
13107
+ __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);
13108
+ __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);
13109
+ __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);
13110
+ __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);
13111
+ __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);
13112
+ __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);
13113
+ __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);
12684
13114
  __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);
12685
- __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);
12686
13115
  __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);
12687
- __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);
12688
- __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);
12689
13116
  __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);
12690
13117
  __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);
12691
13118
  __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);
@@ -14387,6 +14814,105 @@ var ByteRTCMessageConfig;
14387
14814
  ByteRTCMessageConfig[ByteRTCMessageConfig["ByteRTCMessageConfigUnreliableOrdered"] = 1] = "ByteRTCMessageConfigUnreliableOrdered";
14388
14815
  ByteRTCMessageConfig[ByteRTCMessageConfig["ByteRTCMessageConfigUnreliableUnordered"] = 2] = "ByteRTCMessageConfigUnreliableUnordered";
14389
14816
  })(ByteRTCMessageConfig || (ByteRTCMessageConfig = {}));
14817
+ var ByteRTCPublishStateChangeReason;
14818
+ (function (ByteRTCPublishStateChangeReason) {
14819
+ /** {en}
14820
+ * @brief Requested to publish.
14821
+ *
14822
+ */
14823
+ ByteRTCPublishStateChangeReason[ByteRTCPublishStateChangeReason["ByteRTCPublishStateChangeReasonPublish"] = 0] = "ByteRTCPublishStateChangeReasonPublish";
14824
+ /** {en}
14825
+ * @brief Requested to remove.
14826
+ *
14827
+ */
14828
+ ByteRTCPublishStateChangeReason[ByteRTCPublishStateChangeReason["ByteRTCPublishStateChangeReasonUnpublish"] = 1] = "ByteRTCPublishStateChangeReasonUnpublish";
14829
+ /** {en}
14830
+ * @brief The token the user used was not permitted to publish.
14831
+ *
14832
+ */
14833
+ ByteRTCPublishStateChangeReason[ByteRTCPublishStateChangeReason["ByteRTCPublishStateChangeReasonNoPublishPermission"] = 2] = "ByteRTCPublishStateChangeReasonNoPublishPermission";
14834
+ /** {en}
14835
+ * @brief The number of streams the user has published has exceeded the limit.
14836
+ *
14837
+ */
14838
+ ByteRTCPublishStateChangeReason[ByteRTCPublishStateChangeReason["ByteRTCPublishStateChangeReasonOverStreamPublishLimit"] = 3] = "ByteRTCPublishStateChangeReasonOverStreamPublishLimit";
14839
+ /** {en}
14840
+ * @brief The stream failed to remove from a room when you are publishing the stream in two or more rooms.
14841
+ *
14842
+ */
14843
+ ByteRTCPublishStateChangeReason[ByteRTCPublishStateChangeReason["ByteRTCPublishStateChangeReasonMultiRoomUnpublishFailed"] = 4] = "ByteRTCPublishStateChangeReasonMultiRoomUnpublishFailed";
14844
+ /** {en}
14845
+ * @brief Failed to publish due to the server error.
14846
+ *
14847
+ */
14848
+ ByteRTCPublishStateChangeReason[ByteRTCPublishStateChangeReason["ByteRTCPublishStateChangeReasonPublishStreamFailed"] = 5] = "ByteRTCPublishStateChangeReasonPublishStreamFailed";
14849
+ /** {en}
14850
+ * @brief The user who tried to publish a stream is not a host. Call setUserVisibility{@link #IRTCRoom#setUserVisibility} to change the user role.
14851
+ *
14852
+ */
14853
+ ByteRTCPublishStateChangeReason[ByteRTCPublishStateChangeReason["ByteRTCPublishStateChangeReasonPublishStreamForbidden"] = 6] = "ByteRTCPublishStateChangeReasonPublishStreamForbidden";
14854
+ /** {en}
14855
+ * @brief The user who tried to publish a stream has already published a stream in a room.
14856
+ *
14857
+ */
14858
+ ByteRTCPublishStateChangeReason[ByteRTCPublishStateChangeReason["ByteRTCPublishStateChangeReasonUserInPublish"] = 7] = "ByteRTCPublishStateChangeReasonUserInPublish";
14859
+ })(ByteRTCPublishStateChangeReason || (ByteRTCPublishStateChangeReason = {}));
14860
+ var ByteRTCPublishState;
14861
+ (function (ByteRTCPublishState) {
14862
+ /** {en}
14863
+ * @brief Successfully published.
14864
+ *
14865
+ */
14866
+ ByteRTCPublishState[ByteRTCPublishState["ByteRTCPublishStatePublish"] = 0] = "ByteRTCPublishStatePublish";
14867
+ /** {en}
14868
+ * @brief Failed to publish.
14869
+ *
14870
+ */
14871
+ ByteRTCPublishState[ByteRTCPublishState["ByteRTCPublishStateUnpublish"] = 1] = "ByteRTCPublishStateUnpublish";
14872
+ })(ByteRTCPublishState || (ByteRTCPublishState = {}));
14873
+ var ByteRTCSubscribeStateChangeReason;
14874
+ (function (ByteRTCSubscribeStateChangeReason) {
14875
+ /** {en}
14876
+ * @brief Requested to subscribe.
14877
+ *
14878
+ */
14879
+ ByteRTCSubscribeStateChangeReason[ByteRTCSubscribeStateChangeReason["ByteRTCSubscribeStateChangeReasonSubscribe"] = 0] = "ByteRTCSubscribeStateChangeReasonSubscribe";
14880
+ /** {en}
14881
+ * @brief Requested to unsubscribe.
14882
+ *
14883
+ */
14884
+ ByteRTCSubscribeStateChangeReason[ByteRTCSubscribeStateChangeReason["ByteRTCSubscribeStateChangeReasonUnsubscribe"] = 1] = "ByteRTCSubscribeStateChangeReasonUnsubscribe";
14885
+ /** {en}
14886
+ * @brief The remote user published a stream.
14887
+ *
14888
+ */
14889
+ ByteRTCSubscribeStateChangeReason[ByteRTCSubscribeStateChangeReason["ByteRTCSubscribeStateChangeReasonRemotePublish"] = 2] = "ByteRTCSubscribeStateChangeReasonRemotePublish";
14890
+ /** {en}
14891
+ * @brief The remote user removed a stream.
14892
+ *
14893
+ */
14894
+ ByteRTCSubscribeStateChangeReason[ByteRTCSubscribeStateChangeReason["ByteRTCSubscribeStateChangeReasonRemoteUnpublish"] = 3] = "ByteRTCSubscribeStateChangeReasonRemoteUnpublish";
14895
+ /** {en}
14896
+ * @brief Failed to subscribe due to the server error. The SDK will automatically retry.
14897
+ *
14898
+ */
14899
+ ByteRTCSubscribeStateChangeReason[ByteRTCSubscribeStateChangeReason["ByteRTCSubscribeStateChangeReasonStreamFailed5xx"] = 4] = "ByteRTCSubscribeStateChangeReasonStreamFailed5xx";
14900
+ /** {en}
14901
+ * @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.
14902
+ *
14903
+ */
14904
+ ByteRTCSubscribeStateChangeReason[ByteRTCSubscribeStateChangeReason["ByteRTCSubscribeStateChangeReasonStreamFailed404"] = 5] = "ByteRTCSubscribeStateChangeReasonStreamFailed404";
14905
+ /** {en}
14906
+ * @brief The number of streams the user has subscribed to has exceeded the limit.
14907
+ *
14908
+ */
14909
+ ByteRTCSubscribeStateChangeReason[ByteRTCSubscribeStateChangeReason["ByteRTCSubscribeStateChangeReasonOverStreamSubscribeLimit"] = 6] = "ByteRTCSubscribeStateChangeReasonOverStreamSubscribeLimit";
14910
+ /** {en}
14911
+ * @brief The user was not permitted to subscribe to the stream.
14912
+ *
14913
+ */
14914
+ ByteRTCSubscribeStateChangeReason[ByteRTCSubscribeStateChangeReason["ByteRTCSubscribeStateChangeReasonNoSubscribePermission"] = 7] = "ByteRTCSubscribeStateChangeReasonNoSubscribePermission";
14915
+ })(ByteRTCSubscribeStateChangeReason || (ByteRTCSubscribeStateChangeReason = {}));
14390
14916
  (function () {
14391
14917
  var _classDecorators = [NativeObserverClass('ByteRTCVideoSinkDelegate', {
14392
14918
  onFrame: 'onFrame:',
@@ -15847,13 +16373,50 @@ var ByteRTCAudioRecordingState;
15847
16373
  })(ByteRTCAudioRecordingState || (ByteRTCAudioRecordingState = {}));
15848
16374
  var ByteRTCMediaDeviceState;
15849
16375
  (function (ByteRTCMediaDeviceState) {
16376
+ /** {en}
16377
+ * @brief On
16378
+ *
16379
+ */
15850
16380
  ByteRTCMediaDeviceState[ByteRTCMediaDeviceState["ByteRTCMediaDeviceStateStarted"] = 1] = "ByteRTCMediaDeviceStateStarted";
16381
+ /** {en}
16382
+ * @brief Off
16383
+ *
16384
+ */
15851
16385
  ByteRTCMediaDeviceState[ByteRTCMediaDeviceState["ByteRTCMediaDeviceStateStopped"] = 2] = "ByteRTCMediaDeviceStateStopped";
16386
+ /** {en}
16387
+ * @brief Runtime error <br>
16388
+ * For example, when the media device is expected to be working but no data is received.
16389
+ *
16390
+ */
15852
16391
  ByteRTCMediaDeviceState[ByteRTCMediaDeviceState["ByteRTCMediaDeviceStateRuntimeError"] = 3] = "ByteRTCMediaDeviceStateRuntimeError";
16392
+ /** {en}
16393
+ * @brief Added <br>
16394
+ * Call enumerate-device api to update the device list when you get this notification.
16395
+ *
16396
+ */
15853
16397
  ByteRTCMediaDeviceState[ByteRTCMediaDeviceState["ByteRTCMediaDeviceStateAdded"] = 10] = "ByteRTCMediaDeviceStateAdded";
16398
+ /** {en}
16399
+ * @brief Removed <br>
16400
+ * Call enumerate-device api to update the device list when you get this notification.
16401
+ *
16402
+ */
15854
16403
  ByteRTCMediaDeviceState[ByteRTCMediaDeviceState["ByteRTCMediaDeviceStateRemoved"] = 11] = "ByteRTCMediaDeviceStateRemoved";
16404
+ /** {en}
16405
+ * @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.
16406
+ *
16407
+ */
15855
16408
  ByteRTCMediaDeviceState[ByteRTCMediaDeviceState["ByteRTCMediaDeviceStateInterruptionBegan"] = 12] = "ByteRTCMediaDeviceStateInterruptionBegan";
16409
+ /** {en}
16410
+ * @brief RTC call resumed from the interruption caused by the phone calls or the other Apps.
16411
+ *
16412
+ */
15856
16413
  ByteRTCMediaDeviceState[ByteRTCMediaDeviceState["ByteRTCMediaDeviceStateInterruptionEnded"] = 13] = "ByteRTCMediaDeviceStateInterruptionEnded";
16414
+ /** {en}
16415
+ * @hidden(iOS)
16416
+ * @brief Notification of receiving the device list after time-out. <br>
16417
+ * Call enumerate-device api to update the device list when you get this notification.
16418
+ *
16419
+ */
15857
16420
  ByteRTCMediaDeviceState[ByteRTCMediaDeviceState["ByteRTCMediaDeviceListUpdated"] = 16] = "ByteRTCMediaDeviceListUpdated";
15858
16421
  })(ByteRTCMediaDeviceState || (ByteRTCMediaDeviceState = {}));
15859
16422
  var ByteRTCAudioRoute;
@@ -16396,9 +16959,12 @@ var ByteRTCRoomConfig = function () {
16396
16959
  var _profile_decorators;
16397
16960
  var _profile_initializers = [];
16398
16961
  var _profile_extraInitializers = [];
16399
- var _isAutoPublish_decorators;
16400
- var _isAutoPublish_initializers = [];
16401
- var _isAutoPublish_extraInitializers = [];
16962
+ var _isPublishAudio_decorators;
16963
+ var _isPublishAudio_initializers = [];
16964
+ var _isPublishAudio_extraInitializers = [];
16965
+ var _isPublishVideo_decorators;
16966
+ var _isPublishVideo_initializers = [];
16967
+ var _isPublishVideo_extraInitializers = [];
16402
16968
  var _isAutoSubscribeAudio_decorators;
16403
16969
  var _isAutoSubscribeAudio_initializers = [];
16404
16970
  var _isAutoSubscribeAudio_extraInitializers = [];
@@ -16411,10 +16977,37 @@ var ByteRTCRoomConfig = function () {
16411
16977
  var _init_decorators;
16412
16978
  _classThis = /** @class */ (function () {
16413
16979
  function ByteRTCRoomConfig_1() {
16980
+ /** {en}
16981
+ * @brief Room profile. See ByteRTCRoomProfile{@link #ByteRTCRoomProfile}. The default is `ByteRTCRoomProfileCommunication`. The setting cannot be changed after joining the room.
16982
+ */
16414
16983
  this.profile = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _profile_initializers, void 0));
16415
- this.isAutoPublish = (__runInitializers(this, _profile_extraInitializers), __runInitializers(this, _isAutoPublish_initializers, void 0));
16416
- this.isAutoSubscribeAudio = (__runInitializers(this, _isAutoPublish_extraInitializers), __runInitializers(this, _isAutoSubscribeAudio_initializers, void 0));
16984
+ /** {en}
16985
+ * @brief Whether to automatically subscribe to the audio stream. The default is automatic subscription.
16986
+ * + Changing the user role to audience via `setUserVisibility` will void this setting.
16987
+ * + 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.
16988
+ *
16989
+ */
16990
+ this.isPublishAudio = (__runInitializers(this, _profile_extraInitializers), __runInitializers(this, _isPublishAudio_initializers, void 0));
16991
+ /** {en}
16992
+ * @brief Whether to publish media streams automatically. The default is automatic publishing.
16993
+ * + Changing the user role to audience via setUserVisibility:{@link #ByteRTCRoom#setUserVisibility} will void this setting.
16994
+ * + 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.
16995
+ *
16996
+ */
16997
+ this.isPublishVideo = (__runInitializers(this, _isPublishAudio_extraInitializers), __runInitializers(this, _isPublishVideo_initializers, void 0));
16998
+ /** {en}
16999
+ * @brief Whether to automatically subscribe to the audio stream. The default is automatic subscription. <br>
17000
+ * This setting affects both the main stream and the screen-sharing stream.
17001
+ */
17002
+ this.isAutoSubscribeAudio = (__runInitializers(this, _isPublishVideo_extraInitializers), __runInitializers(this, _isAutoSubscribeAudio_initializers, void 0));
17003
+ /** {en}
17004
+ * @brief Whether to automatically subscribe to the video stream. The default is automatic subscription. <br>
17005
+ * This setting affects both the main stream and the screen-sharing stream.
17006
+ */
16417
17007
  this.isAutoSubscribeVideo = (__runInitializers(this, _isAutoSubscribeAudio_extraInitializers), __runInitializers(this, _isAutoSubscribeVideo_initializers, void 0));
17008
+ /** {en}
17009
+ * @brief Expected configuration of remote video stream, see ByteRTCRemoteVideoConfig{@link #ByteRTCRemoteVideoConfig}.
17010
+ */
16418
17011
  this.remoteVideoConfig = (__runInitializers(this, _isAutoSubscribeVideo_extraInitializers), __runInitializers(this, _remoteVideoConfig_initializers, void 0));
16419
17012
  __runInitializers(this, _remoteVideoConfig_extraInitializers);
16420
17013
  }
@@ -16427,14 +17020,16 @@ var ByteRTCRoomConfig = function () {
16427
17020
  (function () {
16428
17021
  var _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
16429
17022
  _profile_decorators = [NativeMember()];
16430
- _isAutoPublish_decorators = [NativeMember()];
17023
+ _isPublishAudio_decorators = [NativeMember()];
17024
+ _isPublishVideo_decorators = [NativeMember()];
16431
17025
  _isAutoSubscribeAudio_decorators = [NativeMember()];
16432
17026
  _isAutoSubscribeVideo_decorators = [NativeMember()];
16433
17027
  _remoteVideoConfig_decorators = [NativeMember()];
16434
17028
  _init_decorators = [NativeMethodSync('init')];
16435
17029
  __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);
16436
17030
  __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);
16437
- __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);
17031
+ __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);
17032
+ __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);
16438
17033
  __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);
16439
17034
  __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);
16440
17035
  __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);
@@ -21645,10 +22240,16 @@ var ByteRTCMixedStreamAudioConfig = function () {
21645
22240
  }();
21646
22241
  var ByteRTCSubscribeState;
21647
22242
  (function (ByteRTCSubscribeState) {
21648
- ByteRTCSubscribeState[ByteRTCSubscribeState["ByteRTCSubscribeStateSuccess"] = 0] = "ByteRTCSubscribeStateSuccess";
21649
- ByteRTCSubscribeState[ByteRTCSubscribeState["ByteRTCSubscribeStateFailedNotInRoom"] = 1] = "ByteRTCSubscribeStateFailedNotInRoom";
21650
- ByteRTCSubscribeState[ByteRTCSubscribeState["ByteRTCSubscribeStateFailedStreamNotFound"] = 2] = "ByteRTCSubscribeStateFailedStreamNotFound";
21651
- ByteRTCSubscribeState[ByteRTCSubscribeState["ByteRTCSubscribeStateFailedOverLimit"] = 3] = "ByteRTCSubscribeStateFailedOverLimit";
22243
+ /** {en}
22244
+ * @brief Successfully subscribed.
22245
+ *
22246
+ */
22247
+ ByteRTCSubscribeState[ByteRTCSubscribeState["ByteRTCSubscribeStateSubscribe"] = 0] = "ByteRTCSubscribeStateSubscribe";
22248
+ /** {en}
22249
+ * @brief Failed to subscribe.
22250
+ *
22251
+ */
22252
+ ByteRTCSubscribeState[ByteRTCSubscribeState["ByteRTCSubscribeStateUnsubscribe"] = 1] = "ByteRTCSubscribeStateUnsubscribe";
21652
22253
  })(ByteRTCSubscribeState || (ByteRTCSubscribeState = {}));
21653
22254
  var ByteRTCVideoEncoderPreference;
21654
22255
  (function (ByteRTCVideoEncoderPreference) {
@@ -22758,24 +23359,16 @@ var ByteRTCRoom = function () {
22758
23359
  var _leaveRoom_decorators;
22759
23360
  var _updateToken_decorators;
22760
23361
  var _setRemoteVideoConfig_decorators;
22761
- var _publishStream_decorators;
22762
23362
  var _publishStreamVideo_decorators;
22763
23363
  var _publishStreamAudio_decorators;
22764
- var _subscribeStreamVideo_decorators;
22765
- var _subscribeStreamAudio_decorators;
22766
23364
  var _publishScreenVideo_decorators;
22767
23365
  var _publishScreenAudio_decorators;
23366
+ var _subscribeStreamVideo_decorators;
23367
+ var _subscribeStreamAudio_decorators;
22768
23368
  var _subscribeScreenVideo_decorators;
22769
23369
  var _subscribeScreenAudio_decorators;
22770
- var _unpublishStream_decorators;
22771
- var _publishScreen_decorators;
22772
- var _unpublishScreen_decorators;
22773
- var _subscribeStream_decorators;
22774
23370
  var _subscribeAllStreamsWithMediaStreamType_decorators;
22775
- var _unsubscribeStream_decorators;
22776
23371
  var _unsubscribeAllStreamsWithMediaStreamType_decorators;
22777
- var _subscribeScreen_decorators;
22778
- var _unsubscribeScreen_decorators;
22779
23372
  var _pauseAllSubscribedStream_decorators;
22780
23373
  var _resumeAllSubscribedStream_decorators;
22781
23374
  var _sendUserMessage_decorators;
@@ -22828,61 +23421,180 @@ var ByteRTCRoom = function () {
22828
23421
  ByteRTCRoom_1.prototype.setRemoteVideoConfig = function (userId, remoteVideoConfig) {
22829
23422
  throw new Error('not implement');
22830
23423
  };
22831
- ByteRTCRoom_1.prototype.publishStream = function (type) {
22832
- throw new Error('not implement');
22833
- };
22834
- ByteRTCRoom_1.prototype.publishStreamVideo = function (enable) {
22835
- throw new Error('not implement');
22836
- };
22837
- ByteRTCRoom_1.prototype.publishStreamAudio = function (enable) {
22838
- throw new Error('not implement');
22839
- };
22840
- ByteRTCRoom_1.prototype.subscribeStreamVideo = function (userId, enable) {
22841
- throw new Error('not implement');
22842
- };
22843
- ByteRTCRoom_1.prototype.subscribeStreamAudio = function (userId, enable) {
22844
- throw new Error('not implement');
22845
- };
22846
- // screen
22847
- ByteRTCRoom_1.prototype.publishScreenVideo = function (enable) {
23424
+ /** {en}
23425
+ * @detail api
23426
+ * @valid since 3.60.
23427
+ * @brief Start or stop publishing video streams captured by camera in the current room.
23428
+ * @param publish Whether to publish the media stream.
23429
+ * @return
23430
+ * - 0: Success.
23431
+ * - < 0 : Fail. See ByteRTCReturnStatus{@link #ByteRTCReturnStatus} for more details
23432
+ * @note
23433
+ * - 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}.
23434
+ * - An invisible user cannot publish media streams. Call setUserVisibility{@link #IRTCRoom#setUserVisibility} to change your visibility in the room.
23435
+ * - Call publishScreenAudio:{@link #ByteRTCRoom#publishScreenAudio} (not supported on Linux) and/or publishScreenVideo:{@link #ByteRTCRoom#publishScreenVideo} to start or stop screen sharing.
23436
+ * - Call publishStreamAudio:{@link #ByteRTCRoom#publishStreamAudio} to start or stop publishing the audio stream captured by the microphone.
23437
+ * - Call startForwardStreamToRooms:{@link #ByteRTCRoom#startForwardStreamToRooms} to forward the published streams to the other rooms.
23438
+ * - 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.
23439
+ *
23440
+ */
23441
+ ByteRTCRoom_1.prototype.publishStreamVideo = function (publish) {
22848
23442
  throw new Error('not implement');
22849
23443
  };
22850
- ByteRTCRoom_1.prototype.publishScreenAudio = function (enable) {
23444
+ /** {en}
23445
+ * @detail api
23446
+ * @valid since 3.60.
23447
+ * @brief Start or stop publishing media streams captured by the local microphone in the current room.
23448
+ * @param publish Whether to publish the media stream.
23449
+ * @return
23450
+ * - 0: Success.
23451
+ * - < 0 : Fail. See ByteRTCReturnStatus{@link #ByteRTCReturnStatus} for more details
23452
+ * @note
23453
+ * - 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}.
23454
+ * - An invisible user cannot publish media streams. Call setUserVisibility{@link #IRTCRoom#setUserVisibility} to change your visibility in the room.
23455
+ * - Call publishScreenAudio:{@link #ByteRTCRoom#publishScreenAudio} (not supported on Linux) and/or publishScreenVideo:{@link #ByteRTCRoom#publishScreenVideo} to start or stop screen sharing.
23456
+ * - Call publishStreamVideo:{@link #ByteRTCRoom#publishStreamVideo} to start or stop publishing the video stream captured by the camera.
23457
+ * - Call startForwardStreamToRooms:{@link #ByteRTCRoom#startForwardStreamToRooms} to forward the published streams to the other rooms.
23458
+ * - 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.
23459
+ *
23460
+ */
23461
+ ByteRTCRoom_1.prototype.publishStreamAudio = function (publish) {
22851
23462
  throw new Error('not implement');
22852
23463
  };
22853
- ByteRTCRoom_1.prototype.subscribeScreenVideo = function (userId, enable) {
23464
+ /** {en}
23465
+ * @detail api
23466
+ * @valid since 3.60.
23467
+ * @brief Start or stop sharing the local screen in the room.
23468
+ * 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.
23469
+ * @param publish Whether to publish video stream.
23470
+ * @return
23471
+ * - 0: Success.
23472
+ * - < 0 : Fail. See ByteRTCReturnStatus{@link #ByteRTCReturnStatus} for more details
23473
+ * @note
23474
+ * - 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}.
23475
+ * - An invisible user cannot publish media streams. Call setUserVisibility{@link #IRTCRoom#setUserVisibility} to change your visibility in the room.
23476
+ * - Call publishScreenAudio:{@link #ByteRTCRoom#publishScreenAudio} (not supported on Linux) to start or stop sharing computer audio.
23477
+ * - Call publishStreamVideo:{@link #ByteRTCRoom#publishStreamVideo} to start or stop publishing the video stream captured by the camera.
23478
+ * - Call publishStreamAudio:{@link #ByteRTCRoom#publishStreamAudio} to start or stop publishing the audio stream captured by the microphone.
23479
+ * - Call startForwardStreamToRooms:{@link #ByteRTCRoom#startForwardStreamToRooms} to forward the published streams to the other rooms.
23480
+ * - 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.
23481
+ * - After calling this API, you'll receive rtcEngine:onScreenVideoFrameSendStateChanged:rtcUser:state:{@link #ByteRTCEngineDelegate#rtcEngine:onScreenVideoFrameSendStateChanged:rtcUser:state}.
23482
+ * - Refer to [Sharing Screen in PC](https://docs.byteplus.com/byteplus-rtc/docs/70144) for more information.
23483
+ *
23484
+ */
23485
+ ByteRTCRoom_1.prototype.publishScreenVideo = function (publish) {
22854
23486
  throw new Error('not implement');
22855
23487
  };
22856
- ByteRTCRoom_1.prototype.subscribeScreenAudio = function (userId, enable) {
23488
+ /** {en}
23489
+ * @hidden(Linux)
23490
+ * @detail api
23491
+ * @valid since 3.60.
23492
+ * @brief Manually publishes local screen-sharing streams in the current room. <br>
23493
+ * 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.
23494
+ * @param publish Media stream type, used for specifying whether to publish audio stream or video stream.
23495
+ * @return
23496
+ * - 0: Success.
23497
+ * - < 0 : Fail. See ByteRTCReturnStatus{@link #ByteRTCReturnStatus} for more details
23498
+ * @note
23499
+ * - 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}.
23500
+ * - An invisible user cannot publish media streams. Call setUserVisibility{@link #IRTCRoom#setUserVisibility} to change your visibility in the room.
23501
+ * - Call publishScreenVideo:{@link #ByteRTCRoom#publishScreenVideo} to start or stop sharing the local screen.
23502
+ * - Call publishStreamVideo:{@link #ByteRTCRoom#publishStreamVideo} to start or stop publishing the video stream captured by the camera.
23503
+ * - Call publishStreamAudio:{@link #ByteRTCRoom#publishStreamAudio} to start or stop publishing the audio stream captured by the microphone.
23504
+ * - Call startForwardStreamToRooms:{@link #ByteRTCRoom#startForwardStreamToRooms} to forward the published streams to the other rooms.
23505
+ * - 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.
23506
+ * - Refer to [Sharing Screen in PC](https://docs.byteplus.com/byteplus-rtc/docs/70144) for more information.
23507
+ *
23508
+ */
23509
+ ByteRTCRoom_1.prototype.publishScreenAudio = function (publish) {
22857
23510
  throw new Error('not implement');
22858
23511
  };
22859
- ByteRTCRoom_1.prototype.unpublishStream = function (type) {
23512
+ /** {en}
23513
+ * @detail api
23514
+ * @valid since 3.60.
23515
+ * @brief Subscribes to specific remote media streams captured by the local camera. Or update the subscribe options of the subscribed user.
23516
+ * @param userId The ID of the remote user who published the target video stream.
23517
+ * @param subscribe Whether to subscribe to the stream.
23518
+ * @return API call result: <br>
23519
+ * - 0: Success.
23520
+ * - <0: Failure. See ByteRTCReturnStatus{@link #ByteRTCReturnStatus} for specific reasons.
23521
+ * @note
23522
+ * - 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.
23523
+ * - 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.
23524
+ * - After calling this API, you will be informed of the calling result with onVideoSubscribeStateChanged{@link #ByteRTCRoomDelegate#onVideoSubscribeStateChanged}.
23525
+ * - 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}.
23526
+ * - Any other exceptions will be included in onVideoSubscribeStateChanged{@link #ByteRTCRoomDelegate#onVideoSubscribeStateChanged}, see SubscribeStateChangeReason{@link #SubscribeStateChangeReason} for the reasons.
23527
+ *
23528
+ */
23529
+ ByteRTCRoom_1.prototype.subscribeStreamVideo = function (userId, subscribe) {
22860
23530
  throw new Error('not implement');
22861
23531
  };
22862
- ByteRTCRoom_1.prototype.publishScreen = function (type) {
23532
+ /** {en}
23533
+ * @detail api
23534
+ * @valid since 3.60.
23535
+ * @brief Subscribes to specific remote media streams captured by the local microphone. Or update the subscribe options of the subscribed user.
23536
+ * @param userId The ID of the remote user who published the target media stream.
23537
+ * @param subscribe Whether to subscribe to the audio stream.
23538
+ * @return API call result: <br>
23539
+ * - 0: Success.
23540
+ * - <0: Failure. See ByteRTCReturnStatus{@link #ByteRTCReturnStatus} for specific reasons.
23541
+ * @note
23542
+ * - 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.
23543
+ * - 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.
23544
+ * - After calling this API, you will be informed of the calling result with onAudioSubscribeStateChanged{@link #ByteRTCRoomDelegate#onAudioSubscribeStateChanged}.
23545
+ * - 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}.
23546
+ * - Any other exceptions will be included in onAudioSubscribeStateChanged{@link #ByteRTCRoomDelegate#onAudioSubscribeStateChanged}, see ErrorCode{@link #ErrorCode} for the reasons.
23547
+ *
23548
+ */
23549
+ ByteRTCRoom_1.prototype.subscribeStreamAudio = function (userId, subscribe) {
22863
23550
  throw new Error('not implement');
22864
23551
  };
22865
- ByteRTCRoom_1.prototype.unpublishScreen = function (type) {
23552
+ /** {en}
23553
+ * @detail api
23554
+ * @valid since 3.60.
23555
+ * @brief Subscribes to specific screen sharing media stream. Or update the subscribe options of the subscribed user.
23556
+ * @param userId The ID of the remote user who published the target screen video stream.
23557
+ * @param subscribe Whether to subscribe to the screen video stream.
23558
+ * @return API call result: <br>
23559
+ * - 0: Success.
23560
+ * - <0: Failure. See ByteRTCReturnStatus{@link #ByteRTCReturnStatus} for specific reasons.
23561
+ * @note
23562
+ * - 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.
23563
+ * - 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.
23564
+ * - After calling this API, you will be informed of the calling result with onScreenVideoSubscribeStateChanged{@link #ByteRTCRoomDelegate#onScreenVideoSubscribeStateChanged}.
23565
+ * - 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}.
23566
+ * - Any other exceptions will be included in onScreenVideoSubscribeStateChanged{@link #ByteRTCRoomDelegate#onScreenVideoSubscribeStateChanged}, see SubscribeStateChangeReason{@link #SubscribeStateChangeReason} for the reasons.
23567
+ *
23568
+ */
23569
+ ByteRTCRoom_1.prototype.subscribeScreenVideo = function (userId, subscribe) {
22866
23570
  throw new Error('not implement');
22867
23571
  };
22868
- ByteRTCRoom_1.prototype.subscribeStream = function (userId, mediaStreamType) {
23572
+ /** {en}
23573
+ * @detail api
23574
+ * @valid since 3.60.
23575
+ * @brief Subscribes to specific screen sharing media stream. Or update the subscribe options of the subscribed user.
23576
+ * @param userId The ID of the remote user who published the target screen audio stream.
23577
+ * @param subscribe Whether to subscribe to the screen audio stream.
23578
+ * @return API call result: <br>
23579
+ * - 0: Success.
23580
+ * - <0: Failure. See ByteRTCReturnStatus{@link #ByteRTCReturnStatus} for specific reasons.
23581
+ * @note
23582
+ * - 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.
23583
+ * - 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.
23584
+ * - After calling this API, you will be informed of the calling result with onScreenAudioSubscribeStateChanged{@link #ByteRTCRoomDelegate#onScreenAudioSubscribeStateChanged}.
23585
+ * - 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}.
23586
+ * - Any other exceptions will be included in onScreenAudioSubscribeStateChanged{@link #ByteRTCRoomDelegate#onScreenAudioSubscribeStateChanged}, see SubscribeStateChangeReason{@link #SubscribeStateChangeReason} for the reasons.
23587
+ *
23588
+ */
23589
+ ByteRTCRoom_1.prototype.subscribeScreenAudio = function (userId, subscribe) {
22869
23590
  throw new Error('not implement');
22870
23591
  };
22871
23592
  ByteRTCRoom_1.prototype.subscribeAllStreamsWithMediaStreamType = function (mediaStreamType) {
22872
23593
  throw new Error('not implement');
22873
23594
  };
22874
- ByteRTCRoom_1.prototype.unsubscribeStream = function (userId, mediaStreamType) {
22875
- throw new Error('not implement');
22876
- };
22877
23595
  ByteRTCRoom_1.prototype.unsubscribeAllStreamsWithMediaStreamType = function (mediaStreamType) {
22878
23596
  throw new Error('not implement');
22879
23597
  };
22880
- ByteRTCRoom_1.prototype.subscribeScreen = function (userId, mediaStreamType) {
22881
- throw new Error('not implement');
22882
- };
22883
- ByteRTCRoom_1.prototype.unsubscribeScreen = function (userId, mediaStreamType) {
22884
- throw new Error('not implement');
22885
- };
22886
23598
  ByteRTCRoom_1.prototype.pauseAllSubscribedStream = function (mediaType) {
22887
23599
  throw new Error('not implement');
22888
23600
  };
@@ -22958,24 +23670,16 @@ var ByteRTCRoom = function () {
22958
23670
  _leaveRoom_decorators = [NativeMethodSync('leaveRoom')];
22959
23671
  _updateToken_decorators = [NativeMethodSync('updateToken:')];
22960
23672
  _setRemoteVideoConfig_decorators = [NativeMethodSync('setRemoteVideoConfig:remoteVideoConfig:')];
22961
- _publishStream_decorators = [NativeMethodSync('publishStream:')];
22962
23673
  _publishStreamVideo_decorators = [NativeMethodSync('publishStreamVideo:')];
22963
23674
  _publishStreamAudio_decorators = [NativeMethodSync('publishStreamAudio:')];
22964
- _subscribeStreamVideo_decorators = [NativeMethodSync('subscribeStreamVideo:subscribe:')];
22965
- _subscribeStreamAudio_decorators = [NativeMethodSync('subscribeStreamAudio:subscribe:')];
22966
23675
  _publishScreenVideo_decorators = [NativeMethodSync('publishScreenVideo:')];
22967
23676
  _publishScreenAudio_decorators = [NativeMethodSync('publishScreenAudio:')];
23677
+ _subscribeStreamVideo_decorators = [NativeMethodSync('subscribeStreamVideo:subscribe:')];
23678
+ _subscribeStreamAudio_decorators = [NativeMethodSync('subscribeStreamAudio:subscribe:')];
22968
23679
  _subscribeScreenVideo_decorators = [NativeMethodSync('subscribeScreenVideo:subscribe:')];
22969
- _subscribeScreenAudio_decorators = [NativeMethodSync('subscribeScreenAudio:subscribe')];
22970
- _unpublishStream_decorators = [NativeMethodSync('unpublishStream:')];
22971
- _publishScreen_decorators = [NativeMethodSync('publishScreen:')];
22972
- _unpublishScreen_decorators = [NativeMethodSync('unpublishScreen:')];
22973
- _subscribeStream_decorators = [NativeMethodSync('subscribeStream:mediaStreamType:')];
23680
+ _subscribeScreenAudio_decorators = [NativeMethodSync('subscribeScreenAudio:subscribe:')];
22974
23681
  _subscribeAllStreamsWithMediaStreamType_decorators = [NativeMethodSync('subscribeAllStreamsWithMediaStreamType:')];
22975
- _unsubscribeStream_decorators = [NativeMethodSync('unsubscribeStream:mediaStreamType:')];
22976
23682
  _unsubscribeAllStreamsWithMediaStreamType_decorators = [NativeMethodSync('unsubscribeAllStreamsWithMediaStreamType:')];
22977
- _subscribeScreen_decorators = [NativeMethodSync('subscribeScreen:mediaStreamType:')];
22978
- _unsubscribeScreen_decorators = [NativeMethodSync('unsubscribeScreen:mediaStreamType:')];
22979
23683
  _pauseAllSubscribedStream_decorators = [NativeMethodSync('pauseAllSubscribedStream:')];
22980
23684
  _resumeAllSubscribedStream_decorators = [NativeMethodSync('resumeAllSubscribedStream:')];
22981
23685
  _sendUserMessage_decorators = [NativeMethodSync('sendUserMessage:message:config:')];
@@ -23005,24 +23709,16 @@ var ByteRTCRoom = function () {
23005
23709
  __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);
23006
23710
  __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);
23007
23711
  __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);
23008
- __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);
23009
23712
  __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);
23010
23713
  __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);
23011
- __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);
23012
- __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
23714
  __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);
23014
23715
  __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);
23716
+ __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);
23717
+ __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);
23015
23718
  __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);
23016
23719
  __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);
23017
- __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);
23018
- __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);
23019
- __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);
23020
- __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);
23021
23720
  __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);
23022
- __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);
23023
23721
  __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);
23024
- __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);
23025
- __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);
23026
23722
  __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);
23027
23723
  __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);
23028
23724
  __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);
@@ -24822,6 +25518,14 @@ var ByteRTCRoomDelegate = function () {
24822
25518
  rtcRoom$onStreamStateChanged$withUid$state$extraInfo: 'rtcRoom:onStreamStateChanged:withUid:state:extraInfo:',
24823
25519
  rtcRoom$onLeaveRoom: 'rtcRoom:onLeaveRoom:',
24824
25520
  rtcRoom$onAVSyncStateChange: 'rtcRoom:onAVSyncStateChange:',
25521
+ rtcRoom$onVideoPublishStateChanged$Uid$state$reason: 'rtcRoom:onVideoPublishStateChanged:Uid:state:reason:',
25522
+ rtcRoom$onAudioPublishStateChanged$Uid$state$reason: 'rtcRoom:onAudioPublishStateChanged:Uid:state:reason:',
25523
+ rtcRoom$onScreenVideoPublishStateChanged$Uid$state$reason: 'rtcRoom:onScreenVideoPublishStateChanged:Uid:state:reason:',
25524
+ rtcRoom$onScreenAudioPublishStateChanged$Uid$state$reason: 'rtcRoom:onScreenAudioPublishStateChanged:Uid:state:reason:',
25525
+ rtcRoom$onVideoSubscribeStateChanged$Uid$state$reason: 'rtcRoom:onVideoSubscribeStateChanged:Uid:state:reason:',
25526
+ rtcRoom$onAudioSubscribeStateChanged$Uid$state$reason: 'rtcRoom:onAudioSubscribeStateChanged:Uid:state:reason:',
25527
+ rtcRoom$onScreenVideoSubscribeStateChanged$Uid$state$reason: 'rtcRoom:onScreenVideoSubscribeStateChanged:Uid:state:reason:',
25528
+ rtcRoom$onScreenAudioSubscribeStateChanged$Uid$state$reason: 'rtcRoom:onScreenAudioSubscribeStateChanged:Uid:state:reason:',
24825
25529
  rtcRoom$onRoomStats: 'rtcRoom:onRoomStats:',
24826
25530
  rtcRoom$onLocalStreamStats: 'rtcRoom:onLocalStreamStats:',
24827
25531
  rtcRoom$onRemoteStreamStats: 'rtcRoom:onRemoteStreamStats:',
@@ -24830,11 +25534,11 @@ var ByteRTCRoomDelegate = function () {
24830
25534
  onTokenWillExpire: 'onTokenWillExpire:',
24831
25535
  onPublishPrivilegeTokenWillExpire: 'onPublishPrivilegeTokenWillExpire:',
24832
25536
  onSubscribePrivilegeTokenWillExpire: 'onSubscribePrivilegeTokenWillExpire:',
24833
- rtcRoom$onUserPublishStream$type: 'rtcRoom:onUserPublishStream:type:',
24834
- rtcRoom$onUserUnpublishStream$type$reason: 'rtcRoom:onUserUnpublishStream:type:reason:',
24835
- rtcRoom$onUserPublishScreen$type: 'rtcRoom:onUserPublishScreen:type:',
24836
- rtcRoom$onUserUnpublishScreen$type$reason: 'rtcRoom:onUserUnpublishScreen:type:reason:',
24837
- rtcRoom$onStreamSubscribed$userId$subscribeConfig: 'rtcRoom:onStreamSubscribed:userId:subscribeConfig:',
25537
+ rtcRoom$onAVSyncEvent$userId$eventCode: 'rtcRoom:onAVSyncEvent:userId:eventCode:',
25538
+ rtcRoom$onUserPublishStreamVideo$uid$isPublish: 'rtcRoom:onUserPublishStreamVideo:uid:isPublish:',
25539
+ rtcRoom$onUserPublishStreamAudio$uid$isPublish: 'rtcRoom:onUserPublishStreamAudio:uid:isPublish:',
25540
+ rtcRoom$onUserPublishScreenVideo$uid$isPublish: 'rtcRoom:onUserPublishScreenVideo:uid:isPublish:',
25541
+ rtcRoom$onUserPublishScreenAudio$uid$isPublish: 'rtcRoom:onUserPublishScreenAudio:uid:isPublish:',
24838
25542
  rtcRoom$onRoomMessageReceived$message: 'rtcRoom:onRoomMessageReceived:message:',
24839
25543
  rtcRoom$onRoomBinaryMessageReceived$message: 'rtcRoom:onRoomBinaryMessageReceived:message:',
24840
25544
  rtcRoom$onUserMessageReceived$message: 'rtcRoom:onUserMessageReceived:message:',
@@ -24854,7 +25558,6 @@ var ByteRTCRoomDelegate = function () {
24854
25558
  rtcRoom$onRoomWarning: 'rtcRoom:onRoomWarning:',
24855
25559
  rtcRoom$onRoomError: 'rtcRoom:onRoomError:',
24856
25560
  rtcRoom$onStreamAdd: 'rtcRoom:onStreamAdd:',
24857
- rtcRoom$onStreamRemove$stream$reason: 'rtcRoom:onStreamRemove:stream:reason:',
24858
25561
  })];
24859
25562
  var _classDescriptor;
24860
25563
  var _classExtraInitializers = [];
@@ -25498,6 +26201,41 @@ exports.RTCNetworkType = void 0;
25498
26201
  RTCNetworkType[RTCNetworkType["NONE"] = 7] = "NONE";
25499
26202
  RTCNetworkType[RTCNetworkType["ByteRTCNetworkTypeDisconnected"] = 8] = "ByteRTCNetworkTypeDisconnected";
25500
26203
  })(exports.RTCNetworkType || (exports.RTCNetworkType = {}));
26204
+ exports.SubscribeStateChangeReason = void 0;
26205
+ (function (SubscribeStateChangeReason) {
26206
+ SubscribeStateChangeReason[SubscribeStateChangeReason["SUBSCRIBE"] = 0] = "SUBSCRIBE";
26207
+ SubscribeStateChangeReason[SubscribeStateChangeReason["UNSUBSCRIBE"] = 1] = "UNSUBSCRIBE";
26208
+ SubscribeStateChangeReason[SubscribeStateChangeReason["REMOTE_PUBLISH"] = 2] = "REMOTE_PUBLISH";
26209
+ SubscribeStateChangeReason[SubscribeStateChangeReason["REMOTE_UNPUBLISH"] = 3] = "REMOTE_UNPUBLISH";
26210
+ SubscribeStateChangeReason[SubscribeStateChangeReason["STREAM_FAILED_5XX"] = 4] = "STREAM_FAILED_5XX";
26211
+ SubscribeStateChangeReason[SubscribeStateChangeReason["STREAM_FAILED_404"] = 5] = "STREAM_FAILED_404";
26212
+ SubscribeStateChangeReason[SubscribeStateChangeReason["OVER_STREAM_SUBSCRIBE_LIMIT"] = 6] = "OVER_STREAM_SUBSCRIBE_LIMIT";
26213
+ SubscribeStateChangeReason[SubscribeStateChangeReason["NO_SUBSCRIBE_PERMISSION"] = 7] = "NO_SUBSCRIBE_PERMISSION";
26214
+ })(exports.SubscribeStateChangeReason || (exports.SubscribeStateChangeReason = {}));
26215
+ exports.PublishStateChangeReason = void 0;
26216
+ (function (PublishStateChangeReason) {
26217
+ PublishStateChangeReason[PublishStateChangeReason["PUBLISH"] = 0] = "PUBLISH";
26218
+ PublishStateChangeReason[PublishStateChangeReason["UNPUBLISH"] = 1] = "UNPUBLISH";
26219
+ PublishStateChangeReason[PublishStateChangeReason["NO_PUBLISH_PERMISSION"] = 2] = "NO_PUBLISH_PERMISSION";
26220
+ PublishStateChangeReason[PublishStateChangeReason["OVER_STREAM_PUBLISH_LIMIT"] = 3] = "OVER_STREAM_PUBLISH_LIMIT";
26221
+ PublishStateChangeReason[PublishStateChangeReason["MULTIROOM_UNPUBLISH_FAILED"] = 4] = "MULTIROOM_UNPUBLISH_FAILED";
26222
+ PublishStateChangeReason[PublishStateChangeReason["PUBLISH_STREAM_FAILED"] = 5] = "PUBLISH_STREAM_FAILED";
26223
+ PublishStateChangeReason[PublishStateChangeReason["PUBLISH_STREAM_FORBIDEN"] = 6] = "PUBLISH_STREAM_FORBIDEN";
26224
+ PublishStateChangeReason[PublishStateChangeReason["USER_IN_PUBLISH"] = 7] = "USER_IN_PUBLISH";
26225
+ })(exports.PublishStateChangeReason || (exports.PublishStateChangeReason = {}));
26226
+ exports.PublishState = void 0;
26227
+ (function (PublishState) {
26228
+ /** {en}
26229
+ * @brief Successfully published.
26230
+ *
26231
+ */
26232
+ PublishState[PublishState["PUBLISHED"] = 0] = "PUBLISHED";
26233
+ /** {en}
26234
+ * @brief Failed to publish.
26235
+ *
26236
+ */
26237
+ PublishState[PublishState["UNPUBLISHED"] = 1] = "UNPUBLISHED";
26238
+ })(exports.PublishState || (exports.PublishState = {}));
25501
26239
  exports.RTCUserOfflineReason = void 0;
25502
26240
  (function (RTCUserOfflineReason) {
25503
26241
  RTCUserOfflineReason[RTCUserOfflineReason["ByteRTCUserOfflineReasonQuit"] = 0] = "ByteRTCUserOfflineReasonQuit";
@@ -30170,11 +30908,17 @@ exports.RemoteMirrorType = void 0;
30170
30908
  })(exports.RemoteMirrorType || (exports.RemoteMirrorType = {}));
30171
30909
  exports.SubscribeState = void 0;
30172
30910
  (function (SubscribeState) {
30173
- SubscribeState[SubscribeState["SUBSCRIBE_STATE_SUCCESS"] = 0] = "SUBSCRIBE_STATE_SUCCESS";
30174
- SubscribeState[SubscribeState["SUBSCRIBE_STATE_FAILED_NOT_IN_ROOM"] = 1] = "SUBSCRIBE_STATE_FAILED_NOT_IN_ROOM";
30175
- SubscribeState[SubscribeState["SUBSCRIBE_STATE_FAILED_STREAM_NOT_FOUND"] = 2] = "SUBSCRIBE_STATE_FAILED_STREAM_NOT_FOUND";
30176
- SubscribeState[SubscribeState["SUBSCRIBE_STATE_FAILED_SIGNAL"] = 3] = "SUBSCRIBE_STATE_FAILED_SIGNAL";
30177
- SubscribeState[SubscribeState["ByteRTCSubscribeStateFailedOverLimit"] = 4] = "ByteRTCSubscribeStateFailedOverLimit";
30911
+ /** {en}
30912
+ * @platform android
30913
+ * @brief Successfully subscribed.
30914
+ *
30915
+ */
30916
+ SubscribeState[SubscribeState["SUBSCRIBED"] = 0] = "SUBSCRIBED";
30917
+ /** {en}
30918
+ * @brief Failed to subscribe.
30919
+ *
30920
+ */
30921
+ SubscribeState[SubscribeState["UNSUBSCRIBED"] = 1] = "UNSUBSCRIBED";
30178
30922
  })(exports.SubscribeState || (exports.SubscribeState = {}));
30179
30923
  var VirtualBackgroundSource = function () {
30180
30924
  var _classDecorators = [PackClass()];
@@ -31752,8 +32496,7 @@ var RTCRoomConfig = function () {
31752
32496
  }
31753
32497
  Object.defineProperty(RTCRoomConfig_1.prototype, "profile", {
31754
32498
  /** {en}
31755
- * @brief Room profile. See {@link ChannelProfile ChannelProfile}. The default is `CHANNEL_PROFILE_COMMUNICATION`. The setting cannot be changed after joining the room.
31756
- *
32499
+ * @brief Room profile. See ChannelProfile{@link #ChannelProfile}. The default is `CHANNEL_PROFILE_COMMUNICATION`. The setting cannot be changed after joining the room.
31757
32500
  *
31758
32501
  */
31759
32502
  get: function () {
@@ -31783,20 +32526,20 @@ var RTCRoomConfig = function () {
31783
32526
  enumerable: false,
31784
32527
  configurable: true
31785
32528
  });
31786
- Object.defineProperty(RTCRoomConfig_1.prototype, "isAutoPublish", {
32529
+ Object.defineProperty(RTCRoomConfig_1.prototype, "isPublishAudio", {
31787
32530
  /** {en}
31788
- * @brief Whether to publish media streams automatically. The default is automatic publishing. <br>
31789
- * 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>
31790
- * 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`.
32531
+ * @brief Whether to publish media streams automatically. The default is automatic publishing.
32532
+ * + Changing the user role to audience via `setUserVisibility` will void this setting.
32533
+ * + 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.
31791
32534
  *
31792
32535
  */
31793
32536
  get: function () {
31794
32537
  var $os = env.getOS();
31795
32538
  if ($os === 'android') {
31796
- return this._instance.isAutoPublish;
32539
+ return this._instance.isPublishAudio;
31797
32540
  }
31798
32541
  else if ($os === 'ios') {
31799
- return this._instance.isAutoPublish;
32542
+ return this._instance.isPublishAudio;
31800
32543
  }
31801
32544
  else {
31802
32545
  throw new Error('Not Support Platform ' + $os);
@@ -31805,10 +32548,10 @@ var RTCRoomConfig = function () {
31805
32548
  set: function (value) {
31806
32549
  var $os = env.getOS();
31807
32550
  if ($os === 'android') {
31808
- this._instance.isAutoPublish = value;
32551
+ this._instance.isPublishAudio = value;
31809
32552
  }
31810
32553
  else if ($os === 'ios') {
31811
- this._instance.isAutoPublish = value;
32554
+ this._instance.isPublishAudio = value;
31812
32555
  }
31813
32556
  else {
31814
32557
  throw new Error('Not Support Platform ' + $os);
@@ -31817,20 +32560,20 @@ var RTCRoomConfig = function () {
31817
32560
  enumerable: false,
31818
32561
  configurable: true
31819
32562
  });
31820
- Object.defineProperty(RTCRoomConfig_1.prototype, "isAutoSubscribeAudio", {
32563
+ Object.defineProperty(RTCRoomConfig_1.prototype, "isPublishVideo", {
31821
32564
  /** {en}
31822
- * @brief Whether to automatically subscribe to the audio stream. The default is automatic subscription. <br>
31823
- * This setting affects both the main stream and the screen-sharing stream.
31824
- *
32565
+ * @brief Whether to publish media streams automatically. The default is automatic publishing.
32566
+ * + Changing the user role to audience via `setUserVisibility` will void this setting.
32567
+ * + 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.
31825
32568
  *
31826
32569
  */
31827
32570
  get: function () {
31828
32571
  var $os = env.getOS();
31829
32572
  if ($os === 'android') {
31830
- return this._instance.isAutoSubscribeAudio;
32573
+ return this._instance.isPublishVideo;
31831
32574
  }
31832
32575
  else if ($os === 'ios') {
31833
- return this._instance.isAutoSubscribeAudio;
32576
+ return this._instance.isPublishVideo;
31834
32577
  }
31835
32578
  else {
31836
32579
  throw new Error('Not Support Platform ' + $os);
@@ -31839,10 +32582,10 @@ var RTCRoomConfig = function () {
31839
32582
  set: function (value) {
31840
32583
  var $os = env.getOS();
31841
32584
  if ($os === 'android') {
31842
- this._instance.isAutoSubscribeAudio = value;
32585
+ this._instance.isPublishVideo = value;
31843
32586
  }
31844
32587
  else if ($os === 'ios') {
31845
- this._instance.isAutoSubscribeAudio = value;
32588
+ this._instance.isPublishVideo = value;
31846
32589
  }
31847
32590
  else {
31848
32591
  throw new Error('Not Support Platform ' + $os);
@@ -31851,19 +32594,19 @@ var RTCRoomConfig = function () {
31851
32594
  enumerable: false,
31852
32595
  configurable: true
31853
32596
  });
31854
- Object.defineProperty(RTCRoomConfig_1.prototype, "isAutoSubscribeVideo", {
32597
+ Object.defineProperty(RTCRoomConfig_1.prototype, "isAutoSubscribeAudio", {
31855
32598
  /** {en}
31856
- * @brief Whether to automatically subscribe to the main video stream. The default is automatic subscription. <br>
32599
+ * @brief Whether to automatically subscribe to the audio stream. The default is automatic subscription. <br>
31857
32600
  * This setting affects both the main stream and the screen-sharing stream.
31858
32601
  *
31859
32602
  */
31860
32603
  get: function () {
31861
32604
  var $os = env.getOS();
31862
32605
  if ($os === 'android') {
31863
- return this._instance.isAutoSubscribeVideo;
32606
+ return this._instance.isAutoSubscribeAudio;
31864
32607
  }
31865
32608
  else if ($os === 'ios') {
31866
- return this._instance.isAutoSubscribeVideo;
32609
+ return this._instance.isAutoSubscribeAudio;
31867
32610
  }
31868
32611
  else {
31869
32612
  throw new Error('Not Support Platform ' + $os);
@@ -31872,10 +32615,10 @@ var RTCRoomConfig = function () {
31872
32615
  set: function (value) {
31873
32616
  var $os = env.getOS();
31874
32617
  if ($os === 'android') {
31875
- this._instance.isAutoSubscribeVideo = value;
32618
+ this._instance.isAutoSubscribeAudio = value;
31876
32619
  }
31877
32620
  else if ($os === 'ios') {
31878
- this._instance.isAutoSubscribeVideo = value;
32621
+ this._instance.isAutoSubscribeAudio = value;
31879
32622
  }
31880
32623
  else {
31881
32624
  throw new Error('Not Support Platform ' + $os);
@@ -31884,18 +32627,19 @@ var RTCRoomConfig = function () {
31884
32627
  enumerable: false,
31885
32628
  configurable: true
31886
32629
  });
31887
- Object.defineProperty(RTCRoomConfig_1.prototype, "remoteVideoConfig", {
32630
+ Object.defineProperty(RTCRoomConfig_1.prototype, "isAutoSubscribeVideo", {
31888
32631
  /** {en}
31889
- * @brief Expected configuration of remote video stream, see {@link RemoteVideoConfig RemoteVideoConfig}.
32632
+ * @brief Whether to automatically subscribe to the main video stream. The default is automatic subscription. <br>
32633
+ * This setting affects both the main stream and the screen-sharing stream.
31890
32634
  *
31891
32635
  */
31892
32636
  get: function () {
31893
32637
  var $os = env.getOS();
31894
32638
  if ($os === 'android') {
31895
- return packObject(this._instance.remoteVideoConfig, RemoteVideoConfig);
32639
+ return this._instance.isAutoSubscribeVideo;
31896
32640
  }
31897
32641
  else if ($os === 'ios') {
31898
- return packObject(this._instance.remoteVideoConfig, RemoteVideoConfig);
32642
+ return this._instance.isAutoSubscribeVideo;
31899
32643
  }
31900
32644
  else {
31901
32645
  throw new Error('Not Support Platform ' + $os);
@@ -31904,10 +32648,10 @@ var RTCRoomConfig = function () {
31904
32648
  set: function (value) {
31905
32649
  var $os = env.getOS();
31906
32650
  if ($os === 'android') {
31907
- this._instance.remoteVideoConfig = unpackObject(value);
32651
+ this._instance.isAutoSubscribeVideo = value;
31908
32652
  }
31909
32653
  else if ($os === 'ios') {
31910
- this._instance.remoteVideoConfig = unpackObject(value);
32654
+ this._instance.isAutoSubscribeVideo = value;
31911
32655
  }
31912
32656
  else {
31913
32657
  throw new Error('Not Support Platform ' + $os);
@@ -31947,6 +32691,17 @@ var RTCRoomConfig = function () {
31947
32691
  throw new Error('Not Support Platform ' + $os);
31948
32692
  }
31949
32693
  };
32694
+ /**
32695
+ * @platform android
32696
+ */
32697
+ /**
32698
+ * @platform android
32699
+ */
32700
+ RTCRoomConfig_1.prototype.android_isPublishAudio$ = function () {
32701
+ var _this = this;
32702
+ var $ = function () { return _this._instance.isPublishAudio$(); };
32703
+ return $();
32704
+ };
31950
32705
  return RTCRoomConfig_1;
31951
32706
  }());
31952
32707
  __setFunctionName(_classThis, "RTCRoomConfig");
@@ -44374,12 +45129,50 @@ exports.MediaDeviceState = void 0;
44374
45129
  *
44375
45130
  */
44376
45131
  MediaDeviceState[MediaDeviceState["MEDIA_DEVICE_STATE_INTERRUPTION_ENDED"] = 6] = "MEDIA_DEVICE_STATE_INTERRUPTION_ENDED";
45132
+ /** {en}
45133
+ * @platform ios
45134
+ * @brief On
45135
+ *
45136
+ */
44377
45137
  MediaDeviceState[MediaDeviceState["ByteRTCMediaDeviceStateStarted"] = 7] = "ByteRTCMediaDeviceStateStarted";
45138
+ /** {en}
45139
+ * @platform ios
45140
+ * @brief Off
45141
+ *
45142
+ */
44378
45143
  MediaDeviceState[MediaDeviceState["ByteRTCMediaDeviceStateStopped"] = 8] = "ByteRTCMediaDeviceStateStopped";
45144
+ /** {en}
45145
+ * @platform ios
45146
+ * @brief Runtime error <br>
45147
+ * For example, when the media device is expected to be working but no data is received.
45148
+ *
45149
+ */
44379
45150
  MediaDeviceState[MediaDeviceState["ByteRTCMediaDeviceStateRuntimeError"] = 9] = "ByteRTCMediaDeviceStateRuntimeError";
45151
+ /** {en}
45152
+ * @platform ios
45153
+ * @brief Added <br>
45154
+ * Call enumerate-device api to update the device list when you get this notification.
45155
+ *
45156
+ */
44380
45157
  MediaDeviceState[MediaDeviceState["ByteRTCMediaDeviceStateAdded"] = 10] = "ByteRTCMediaDeviceStateAdded";
45158
+ /** {en}
45159
+ * @platform ios
45160
+ * @brief Removed <br>
45161
+ * Call enumerate-device api to update the device list when you get this notification.
45162
+ *
45163
+ */
44381
45164
  MediaDeviceState[MediaDeviceState["ByteRTCMediaDeviceStateRemoved"] = 11] = "ByteRTCMediaDeviceStateRemoved";
45165
+ /** {en}
45166
+ * @platform ios
45167
+ * @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.
45168
+ *
45169
+ */
44382
45170
  MediaDeviceState[MediaDeviceState["ByteRTCMediaDeviceStateInterruptionBegan"] = 12] = "ByteRTCMediaDeviceStateInterruptionBegan";
45171
+ /** {en}
45172
+ * @platform ios
45173
+ * @brief RTC call resumed from the interruption caused by the phone calls or the other Apps.
45174
+ *
45175
+ */
44383
45176
  MediaDeviceState[MediaDeviceState["ByteRTCMediaDeviceStateInterruptionEnded"] = 13] = "ByteRTCMediaDeviceStateInterruptionEnded";
44384
45177
  })(exports.MediaDeviceState || (exports.MediaDeviceState = {}));
44385
45178
  exports.LocalProxyType = void 0;
@@ -48715,6 +49508,213 @@ var t_RTCNetworkType = /** @class */ (function () {
48715
49508
  };
48716
49509
  return t_RTCNetworkType;
48717
49510
  }());
49511
+ var t_SubscribeStateChangeReason = /** @class */ (function () {
49512
+ function t_SubscribeStateChangeReason() {
49513
+ }
49514
+ t_SubscribeStateChangeReason.ts_to_android = function (value) {
49515
+ var _a;
49516
+ var $m = (_a = {},
49517
+ _a[exports.SubscribeStateChangeReason.SUBSCRIBE] = SubscribeStateChangeReason.SUBSCRIBE,
49518
+ _a[exports.SubscribeStateChangeReason.UNSUBSCRIBE] = SubscribeStateChangeReason.UNSUBSCRIBE,
49519
+ _a[exports.SubscribeStateChangeReason.REMOTE_PUBLISH] = SubscribeStateChangeReason.REMOTE_PUBLISH,
49520
+ _a[exports.SubscribeStateChangeReason.REMOTE_UNPUBLISH] = SubscribeStateChangeReason.REMOTE_UNPUBLISH,
49521
+ _a[exports.SubscribeStateChangeReason.STREAM_FAILED_5XX] = SubscribeStateChangeReason.STREAM_FAILED_5XX,
49522
+ _a[exports.SubscribeStateChangeReason.STREAM_FAILED_404] = SubscribeStateChangeReason.STREAM_FAILED_404,
49523
+ _a[exports.SubscribeStateChangeReason.OVER_STREAM_SUBSCRIBE_LIMIT] = SubscribeStateChangeReason.OVER_STREAM_SUBSCRIBE_LIMIT,
49524
+ _a[exports.SubscribeStateChangeReason.NO_SUBSCRIBE_PERMISSION] = SubscribeStateChangeReason.NO_SUBSCRIBE_PERMISSION,
49525
+ _a);
49526
+ if (!(value in $m)) {
49527
+ throw new Error('android not support:' + value);
49528
+ }
49529
+ // @ts-ignore
49530
+ return $m[value];
49531
+ };
49532
+ t_SubscribeStateChangeReason.android_to_ts = function (value) {
49533
+ var _a;
49534
+ var $m = (_a = {},
49535
+ _a[SubscribeStateChangeReason.SUBSCRIBE] = exports.SubscribeStateChangeReason.SUBSCRIBE,
49536
+ _a[SubscribeStateChangeReason.UNSUBSCRIBE] = exports.SubscribeStateChangeReason.UNSUBSCRIBE,
49537
+ _a[SubscribeStateChangeReason.REMOTE_PUBLISH] = exports.SubscribeStateChangeReason.REMOTE_PUBLISH,
49538
+ _a[SubscribeStateChangeReason.REMOTE_UNPUBLISH] = exports.SubscribeStateChangeReason.REMOTE_UNPUBLISH,
49539
+ _a[SubscribeStateChangeReason.STREAM_FAILED_5XX] = exports.SubscribeStateChangeReason.STREAM_FAILED_5XX,
49540
+ _a[SubscribeStateChangeReason.STREAM_FAILED_404] = exports.SubscribeStateChangeReason.STREAM_FAILED_404,
49541
+ _a[SubscribeStateChangeReason.OVER_STREAM_SUBSCRIBE_LIMIT] = exports.SubscribeStateChangeReason.OVER_STREAM_SUBSCRIBE_LIMIT,
49542
+ _a[SubscribeStateChangeReason.NO_SUBSCRIBE_PERMISSION] = exports.SubscribeStateChangeReason.NO_SUBSCRIBE_PERMISSION,
49543
+ _a);
49544
+ if (!(value in $m)) {
49545
+ throw new Error('invalid value:' + value);
49546
+ }
49547
+ // @ts-ignore
49548
+ return $m[value];
49549
+ };
49550
+ t_SubscribeStateChangeReason.ts_to_ios = function (value) {
49551
+ var _a;
49552
+ var $m = (_a = {},
49553
+ _a[exports.SubscribeStateChangeReason.SUBSCRIBE] = ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonSubscribe,
49554
+ _a[exports.SubscribeStateChangeReason.UNSUBSCRIBE] = ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonUnsubscribe,
49555
+ _a[exports.SubscribeStateChangeReason.REMOTE_PUBLISH] = ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonRemotePublish,
49556
+ _a[exports.SubscribeStateChangeReason.REMOTE_UNPUBLISH] = ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonRemoteUnpublish,
49557
+ _a[exports.SubscribeStateChangeReason.STREAM_FAILED_5XX] = ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonStreamFailed5xx,
49558
+ _a[exports.SubscribeStateChangeReason.STREAM_FAILED_404] = ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonStreamFailed404,
49559
+ _a[exports.SubscribeStateChangeReason.OVER_STREAM_SUBSCRIBE_LIMIT] = ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonOverStreamSubscribeLimit,
49560
+ _a[exports.SubscribeStateChangeReason.NO_SUBSCRIBE_PERMISSION] = ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonNoSubscribePermission,
49561
+ _a);
49562
+ if (!(value in $m)) {
49563
+ throw new Error('ios not support:' + value);
49564
+ }
49565
+ // @ts-ignore
49566
+ return $m[value];
49567
+ };
49568
+ t_SubscribeStateChangeReason.ios_to_ts = function (value) {
49569
+ var _a;
49570
+ var $m = (_a = {},
49571
+ _a[ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonSubscribe] = exports.SubscribeStateChangeReason.SUBSCRIBE,
49572
+ _a[ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonUnsubscribe] = exports.SubscribeStateChangeReason.UNSUBSCRIBE,
49573
+ _a[ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonRemotePublish] = exports.SubscribeStateChangeReason.REMOTE_PUBLISH,
49574
+ _a[ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonRemoteUnpublish] = exports.SubscribeStateChangeReason.REMOTE_UNPUBLISH,
49575
+ _a[ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonStreamFailed5xx] = exports.SubscribeStateChangeReason.STREAM_FAILED_5XX,
49576
+ _a[ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonStreamFailed404] = exports.SubscribeStateChangeReason.STREAM_FAILED_404,
49577
+ _a[ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonOverStreamSubscribeLimit] = exports.SubscribeStateChangeReason.OVER_STREAM_SUBSCRIBE_LIMIT,
49578
+ _a[ByteRTCSubscribeStateChangeReason.ByteRTCSubscribeStateChangeReasonNoSubscribePermission] = exports.SubscribeStateChangeReason.NO_SUBSCRIBE_PERMISSION,
49579
+ _a);
49580
+ if (!(value in $m)) {
49581
+ throw new Error('invalid value:' + value);
49582
+ }
49583
+ // @ts-ignore
49584
+ return $m[value];
49585
+ };
49586
+ return t_SubscribeStateChangeReason;
49587
+ }());
49588
+ var t_PublishStateChangeReason = /** @class */ (function () {
49589
+ function t_PublishStateChangeReason() {
49590
+ }
49591
+ t_PublishStateChangeReason.ts_to_android = function (value) {
49592
+ var _a;
49593
+ var $m = (_a = {},
49594
+ _a[exports.PublishStateChangeReason.PUBLISH] = PublishStateChangeReason.PUBLISH,
49595
+ _a[exports.PublishStateChangeReason.UNPUBLISH] = PublishStateChangeReason.UNPUBLISH,
49596
+ _a[exports.PublishStateChangeReason.NO_PUBLISH_PERMISSION] = PublishStateChangeReason.NO_PUBLISH_PERMISSION,
49597
+ _a[exports.PublishStateChangeReason.OVER_STREAM_PUBLISH_LIMIT] = PublishStateChangeReason.OVER_STREAM_PUBLISH_LIMIT,
49598
+ _a[exports.PublishStateChangeReason.MULTIROOM_UNPUBLISH_FAILED] = PublishStateChangeReason.MULTIROOM_UNPUBLISH_FAILED,
49599
+ _a[exports.PublishStateChangeReason.PUBLISH_STREAM_FAILED] = PublishStateChangeReason.PUBLISH_STREAM_FAILED,
49600
+ _a[exports.PublishStateChangeReason.PUBLISH_STREAM_FORBIDEN] = PublishStateChangeReason.PUBLISH_STREAM_FORBIDEN,
49601
+ _a[exports.PublishStateChangeReason.USER_IN_PUBLISH] = PublishStateChangeReason.USER_IN_PUBLISH,
49602
+ _a);
49603
+ if (!(value in $m)) {
49604
+ throw new Error('android not support:' + value);
49605
+ }
49606
+ // @ts-ignore
49607
+ return $m[value];
49608
+ };
49609
+ t_PublishStateChangeReason.android_to_ts = function (value) {
49610
+ var _a;
49611
+ var $m = (_a = {},
49612
+ _a[PublishStateChangeReason.PUBLISH] = exports.PublishStateChangeReason.PUBLISH,
49613
+ _a[PublishStateChangeReason.UNPUBLISH] = exports.PublishStateChangeReason.UNPUBLISH,
49614
+ _a[PublishStateChangeReason.NO_PUBLISH_PERMISSION] = exports.PublishStateChangeReason.NO_PUBLISH_PERMISSION,
49615
+ _a[PublishStateChangeReason.OVER_STREAM_PUBLISH_LIMIT] = exports.PublishStateChangeReason.OVER_STREAM_PUBLISH_LIMIT,
49616
+ _a[PublishStateChangeReason.MULTIROOM_UNPUBLISH_FAILED] = exports.PublishStateChangeReason.MULTIROOM_UNPUBLISH_FAILED,
49617
+ _a[PublishStateChangeReason.PUBLISH_STREAM_FAILED] = exports.PublishStateChangeReason.PUBLISH_STREAM_FAILED,
49618
+ _a[PublishStateChangeReason.PUBLISH_STREAM_FORBIDEN] = exports.PublishStateChangeReason.PUBLISH_STREAM_FORBIDEN,
49619
+ _a[PublishStateChangeReason.USER_IN_PUBLISH] = exports.PublishStateChangeReason.USER_IN_PUBLISH,
49620
+ _a);
49621
+ if (!(value in $m)) {
49622
+ throw new Error('invalid value:' + value);
49623
+ }
49624
+ // @ts-ignore
49625
+ return $m[value];
49626
+ };
49627
+ t_PublishStateChangeReason.ts_to_ios = function (value) {
49628
+ var _a;
49629
+ var $m = (_a = {},
49630
+ _a[exports.PublishStateChangeReason.PUBLISH] = ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonPublish,
49631
+ _a[exports.PublishStateChangeReason.UNPUBLISH] = ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonUnpublish,
49632
+ _a[exports.PublishStateChangeReason.NO_PUBLISH_PERMISSION] = ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonNoPublishPermission,
49633
+ _a[exports.PublishStateChangeReason.OVER_STREAM_PUBLISH_LIMIT] = ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonOverStreamPublishLimit,
49634
+ _a[exports.PublishStateChangeReason.MULTIROOM_UNPUBLISH_FAILED] = ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonMultiRoomUnpublishFailed,
49635
+ _a[exports.PublishStateChangeReason.PUBLISH_STREAM_FAILED] = ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonPublishStreamFailed,
49636
+ _a[exports.PublishStateChangeReason.PUBLISH_STREAM_FORBIDEN] = ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonPublishStreamForbidden,
49637
+ _a[exports.PublishStateChangeReason.USER_IN_PUBLISH] = ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonUserInPublish,
49638
+ _a);
49639
+ if (!(value in $m)) {
49640
+ throw new Error('ios not support:' + value);
49641
+ }
49642
+ // @ts-ignore
49643
+ return $m[value];
49644
+ };
49645
+ t_PublishStateChangeReason.ios_to_ts = function (value) {
49646
+ var _a;
49647
+ var $m = (_a = {},
49648
+ _a[ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonPublish] = exports.PublishStateChangeReason.PUBLISH,
49649
+ _a[ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonUnpublish] = exports.PublishStateChangeReason.UNPUBLISH,
49650
+ _a[ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonNoPublishPermission] = exports.PublishStateChangeReason.NO_PUBLISH_PERMISSION,
49651
+ _a[ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonOverStreamPublishLimit] = exports.PublishStateChangeReason.OVER_STREAM_PUBLISH_LIMIT,
49652
+ _a[ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonMultiRoomUnpublishFailed] = exports.PublishStateChangeReason.MULTIROOM_UNPUBLISH_FAILED,
49653
+ _a[ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonPublishStreamFailed] = exports.PublishStateChangeReason.PUBLISH_STREAM_FAILED,
49654
+ _a[ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonPublishStreamForbidden] = exports.PublishStateChangeReason.PUBLISH_STREAM_FORBIDEN,
49655
+ _a[ByteRTCPublishStateChangeReason.ByteRTCPublishStateChangeReasonUserInPublish] = exports.PublishStateChangeReason.USER_IN_PUBLISH,
49656
+ _a);
49657
+ if (!(value in $m)) {
49658
+ throw new Error('invalid value:' + value);
49659
+ }
49660
+ // @ts-ignore
49661
+ return $m[value];
49662
+ };
49663
+ return t_PublishStateChangeReason;
49664
+ }());
49665
+ var t_PublishState = /** @class */ (function () {
49666
+ function t_PublishState() {
49667
+ }
49668
+ t_PublishState.ts_to_android = function (value) {
49669
+ var _a;
49670
+ var $m = (_a = {},
49671
+ _a[exports.PublishState.PUBLISHED] = PublishState.PUBLISHED,
49672
+ _a[exports.PublishState.UNPUBLISHED] = PublishState.UNPUBLISHED,
49673
+ _a);
49674
+ if (!(value in $m)) {
49675
+ throw new Error('android not support:' + value);
49676
+ }
49677
+ // @ts-ignore
49678
+ return $m[value];
49679
+ };
49680
+ t_PublishState.android_to_ts = function (value) {
49681
+ var _a;
49682
+ var $m = (_a = {},
49683
+ _a[PublishState.PUBLISHED] = exports.PublishState.PUBLISHED,
49684
+ _a[PublishState.UNPUBLISHED] = exports.PublishState.UNPUBLISHED,
49685
+ _a);
49686
+ if (!(value in $m)) {
49687
+ throw new Error('invalid value:' + value);
49688
+ }
49689
+ // @ts-ignore
49690
+ return $m[value];
49691
+ };
49692
+ t_PublishState.ts_to_ios = function (value) {
49693
+ var _a;
49694
+ var $m = (_a = {},
49695
+ _a[exports.PublishState.PUBLISHED] = ByteRTCPublishState.ByteRTCPublishStatePublish,
49696
+ _a[exports.PublishState.UNPUBLISHED] = ByteRTCPublishState.ByteRTCPublishStateUnpublish,
49697
+ _a);
49698
+ if (!(value in $m)) {
49699
+ throw new Error('ios not support:' + value);
49700
+ }
49701
+ // @ts-ignore
49702
+ return $m[value];
49703
+ };
49704
+ t_PublishState.ios_to_ts = function (value) {
49705
+ var _a;
49706
+ var $m = (_a = {},
49707
+ _a[ByteRTCPublishState.ByteRTCPublishStatePublish] = exports.PublishState.PUBLISHED,
49708
+ _a[ByteRTCPublishState.ByteRTCPublishStateUnpublish] = exports.PublishState.UNPUBLISHED,
49709
+ _a);
49710
+ if (!(value in $m)) {
49711
+ throw new Error('invalid value:' + value);
49712
+ }
49713
+ // @ts-ignore
49714
+ return $m[value];
49715
+ };
49716
+ return t_PublishState;
49717
+ }());
48718
49718
  var t_RTCUserOfflineReason = /** @class */ (function () {
48719
49719
  function t_RTCUserOfflineReason() {
48720
49720
  }
@@ -51165,10 +52165,8 @@ var t_SubscribeState = /** @class */ (function () {
51165
52165
  t_SubscribeState.ts_to_android = function (value) {
51166
52166
  var _a;
51167
52167
  var $m = (_a = {},
51168
- _a[exports.SubscribeState.SUBSCRIBE_STATE_SUCCESS] = SubscribeState.SUBSCRIBE_STATE_SUCCESS,
51169
- _a[exports.SubscribeState.SUBSCRIBE_STATE_FAILED_NOT_IN_ROOM] = SubscribeState.SUBSCRIBE_STATE_FAILED_NOT_IN_ROOM,
51170
- _a[exports.SubscribeState.SUBSCRIBE_STATE_FAILED_STREAM_NOT_FOUND] = SubscribeState.SUBSCRIBE_STATE_FAILED_STREAM_NOT_FOUND,
51171
- _a[exports.SubscribeState.SUBSCRIBE_STATE_FAILED_SIGNAL] = SubscribeState.SUBSCRIBE_STATE_FAILED_SIGNAL,
52168
+ _a[exports.SubscribeState.SUBSCRIBED] = SubscribeState.SUBSCRIBED,
52169
+ _a[exports.SubscribeState.UNSUBSCRIBED] = SubscribeState.UNSUBSCRIBED,
51172
52170
  _a);
51173
52171
  if (!(value in $m)) {
51174
52172
  throw new Error('android not support:' + value);
@@ -51179,10 +52177,8 @@ var t_SubscribeState = /** @class */ (function () {
51179
52177
  t_SubscribeState.android_to_ts = function (value) {
51180
52178
  var _a;
51181
52179
  var $m = (_a = {},
51182
- _a[SubscribeState.SUBSCRIBE_STATE_SUCCESS] = exports.SubscribeState.SUBSCRIBE_STATE_SUCCESS,
51183
- _a[SubscribeState.SUBSCRIBE_STATE_FAILED_NOT_IN_ROOM] = exports.SubscribeState.SUBSCRIBE_STATE_FAILED_NOT_IN_ROOM,
51184
- _a[SubscribeState.SUBSCRIBE_STATE_FAILED_STREAM_NOT_FOUND] = exports.SubscribeState.SUBSCRIBE_STATE_FAILED_STREAM_NOT_FOUND,
51185
- _a[SubscribeState.SUBSCRIBE_STATE_FAILED_SIGNAL] = exports.SubscribeState.SUBSCRIBE_STATE_FAILED_SIGNAL,
52180
+ _a[SubscribeState.SUBSCRIBED] = exports.SubscribeState.SUBSCRIBED,
52181
+ _a[SubscribeState.UNSUBSCRIBED] = exports.SubscribeState.UNSUBSCRIBED,
51186
52182
  _a);
51187
52183
  if (!(value in $m)) {
51188
52184
  throw new Error('invalid value:' + value);
@@ -51193,10 +52189,8 @@ var t_SubscribeState = /** @class */ (function () {
51193
52189
  t_SubscribeState.ts_to_ios = function (value) {
51194
52190
  var _a;
51195
52191
  var $m = (_a = {},
51196
- _a[exports.SubscribeState.SUBSCRIBE_STATE_SUCCESS] = ByteRTCSubscribeState.ByteRTCSubscribeStateSuccess,
51197
- _a[exports.SubscribeState.SUBSCRIBE_STATE_FAILED_NOT_IN_ROOM] = ByteRTCSubscribeState.ByteRTCSubscribeStateFailedNotInRoom,
51198
- _a[exports.SubscribeState.SUBSCRIBE_STATE_FAILED_STREAM_NOT_FOUND] = ByteRTCSubscribeState.ByteRTCSubscribeStateFailedStreamNotFound,
51199
- _a[exports.SubscribeState.ByteRTCSubscribeStateFailedOverLimit] = ByteRTCSubscribeState.ByteRTCSubscribeStateFailedOverLimit,
52192
+ _a[exports.SubscribeState.SUBSCRIBED] = ByteRTCSubscribeState.ByteRTCSubscribeStateSubscribe,
52193
+ _a[exports.SubscribeState.UNSUBSCRIBED] = ByteRTCSubscribeState.ByteRTCSubscribeStateUnsubscribe,
51200
52194
  _a);
51201
52195
  if (!(value in $m)) {
51202
52196
  throw new Error('ios not support:' + value);
@@ -51207,10 +52201,8 @@ var t_SubscribeState = /** @class */ (function () {
51207
52201
  t_SubscribeState.ios_to_ts = function (value) {
51208
52202
  var _a;
51209
52203
  var $m = (_a = {},
51210
- _a[ByteRTCSubscribeState.ByteRTCSubscribeStateSuccess] = exports.SubscribeState.SUBSCRIBE_STATE_SUCCESS,
51211
- _a[ByteRTCSubscribeState.ByteRTCSubscribeStateFailedNotInRoom] = exports.SubscribeState.SUBSCRIBE_STATE_FAILED_NOT_IN_ROOM,
51212
- _a[ByteRTCSubscribeState.ByteRTCSubscribeStateFailedStreamNotFound] = exports.SubscribeState.SUBSCRIBE_STATE_FAILED_STREAM_NOT_FOUND,
51213
- _a[ByteRTCSubscribeState.ByteRTCSubscribeStateFailedOverLimit] = exports.SubscribeState.ByteRTCSubscribeStateFailedOverLimit,
52204
+ _a[ByteRTCSubscribeState.ByteRTCSubscribeStateSubscribe] = exports.SubscribeState.SUBSCRIBED,
52205
+ _a[ByteRTCSubscribeState.ByteRTCSubscribeStateUnsubscribe] = exports.SubscribeState.UNSUBSCRIBED,
51214
52206
  _a);
51215
52207
  if (!(value in $m)) {
51216
52208
  throw new Error('invalid value:' + value);
@@ -58661,29 +59653,53 @@ var android_RTCRoomEventHandler = /** @class */ (function (_super) {
58661
59653
  }
58662
59654
  return this._instance['onSubscribePrivilegeTokenWillExpire']();
58663
59655
  };
58664
- android_RTCRoomEventHandler.prototype.onUserPublishStream = function (uid, type) {
58665
- if (!this._instance['onUserPublishStream']) {
59656
+ android_RTCRoomEventHandler.prototype.onVideoPublishStateChanged = function (roomId, uid, state, reason) {
59657
+ if (!this._instance['onVideoPublishStateChanged']) {
59658
+ return;
59659
+ }
59660
+ return this._instance['onVideoPublishStateChanged'](String(roomId), String(uid), t_PublishState.android_to_ts(state), t_PublishStateChangeReason.android_to_ts(reason));
59661
+ };
59662
+ android_RTCRoomEventHandler.prototype.onAudioPublishStateChanged = function (roomId, uid, state, reason) {
59663
+ if (!this._instance['onAudioPublishStateChanged']) {
59664
+ return;
59665
+ }
59666
+ return this._instance['onAudioPublishStateChanged'](String(roomId), String(uid), t_PublishState.android_to_ts(state), t_PublishStateChangeReason.android_to_ts(reason));
59667
+ };
59668
+ android_RTCRoomEventHandler.prototype.onScreenVideoPublishStateChanged = function (roomId, uid, state, reason) {
59669
+ if (!this._instance['onScreenVideoPublishStateChanged']) {
58666
59670
  return;
58667
59671
  }
58668
- return this._instance['onUserPublishStream'](String(uid), t_MediaStreamType.android_to_ts(type));
59672
+ return this._instance['onScreenVideoPublishStateChanged'](String(roomId), String(uid), t_PublishState.android_to_ts(state), t_PublishStateChangeReason.android_to_ts(reason));
58669
59673
  };
58670
- android_RTCRoomEventHandler.prototype.onUserUnpublishStream = function (uid, type, reason) {
58671
- if (!this._instance['onUserUnpublishStream']) {
59674
+ android_RTCRoomEventHandler.prototype.onScreenAudioPublishStateChanged = function (roomId, uid, state, reason) {
59675
+ if (!this._instance['onScreenAudioPublishStateChanged']) {
58672
59676
  return;
58673
59677
  }
58674
- return this._instance['onUserUnpublishStream'](String(uid), t_MediaStreamType.android_to_ts(type), t_StreamRemoveReason.android_to_ts(reason));
59678
+ return this._instance['onScreenAudioPublishStateChanged'](String(roomId), String(uid), t_PublishState.android_to_ts(state), t_PublishStateChangeReason.android_to_ts(reason));
58675
59679
  };
58676
- android_RTCRoomEventHandler.prototype.onUserPublishScreen = function (uid, type) {
58677
- if (!this._instance['onUserPublishScreen']) {
59680
+ android_RTCRoomEventHandler.prototype.onVideoSubscribeStateChanged = function (roomId, uid, state, reason) {
59681
+ if (!this._instance['onVideoSubscribeStateChanged']) {
58678
59682
  return;
58679
59683
  }
58680
- return this._instance['onUserPublishScreen'](String(uid), t_MediaStreamType.android_to_ts(type));
59684
+ return this._instance['onVideoSubscribeStateChanged'](String(roomId), String(uid), t_SubscribeState.android_to_ts(state), t_SubscribeStateChangeReason.android_to_ts(reason));
58681
59685
  };
58682
- android_RTCRoomEventHandler.prototype.onUserUnpublishScreen = function (uid, type, reason) {
58683
- if (!this._instance['onUserUnpublishScreen']) {
59686
+ android_RTCRoomEventHandler.prototype.onAudioSubscribeStateChanged = function (roomId, uid, state, reason) {
59687
+ if (!this._instance['onAudioSubscribeStateChanged']) {
58684
59688
  return;
58685
59689
  }
58686
- return this._instance['onUserUnpublishScreen'](String(uid), t_MediaStreamType.android_to_ts(type), t_StreamRemoveReason.android_to_ts(reason));
59690
+ return this._instance['onAudioSubscribeStateChanged'](String(roomId), String(uid), t_SubscribeState.android_to_ts(state), t_SubscribeStateChangeReason.android_to_ts(reason));
59691
+ };
59692
+ android_RTCRoomEventHandler.prototype.onScreenVideoSubscribeStateChanged = function (roomId, uid, state, reason) {
59693
+ if (!this._instance['onScreenVideoSubscribeStateChanged']) {
59694
+ return;
59695
+ }
59696
+ return this._instance['onScreenVideoSubscribeStateChanged'](String(roomId), String(uid), t_SubscribeState.android_to_ts(state), t_SubscribeStateChangeReason.android_to_ts(reason));
59697
+ };
59698
+ android_RTCRoomEventHandler.prototype.onScreenAudioSubscribeStateChanged = function (roomId, uid, state, reason) {
59699
+ if (!this._instance['onScreenAudioSubscribeStateChanged']) {
59700
+ return;
59701
+ }
59702
+ return this._instance['onScreenAudioSubscribeStateChanged'](String(roomId), String(uid), t_SubscribeState.android_to_ts(state), t_SubscribeStateChangeReason.android_to_ts(reason));
58687
59703
  };
58688
59704
  android_RTCRoomEventHandler.prototype.onLocalStreamStats = function (stats) {
58689
59705
  if (!this._instance['onLocalStreamStats']) {
@@ -58703,6 +59719,30 @@ var android_RTCRoomEventHandler = /** @class */ (function (_super) {
58703
59719
  }
58704
59720
  return this._instance['onStreamSubscribed'](t_SubscribeState.android_to_ts(stateCode), String(userId), packObject(info, SubscribeConfig));
58705
59721
  };
59722
+ android_RTCRoomEventHandler.prototype.onUserPublishStreamVideo = function (roomId, uid, isPublish) {
59723
+ if (!this._instance['onUserPublishStreamVideo']) {
59724
+ return;
59725
+ }
59726
+ return this._instance['onUserPublishStreamVideo'](String(roomId), String(uid), isPublish);
59727
+ };
59728
+ android_RTCRoomEventHandler.prototype.onUserPublishStreamAudio = function (roomId, uid, isPublish) {
59729
+ if (!this._instance['onUserPublishStreamAudio']) {
59730
+ return;
59731
+ }
59732
+ return this._instance['onUserPublishStreamAudio'](String(roomId), String(uid), isPublish);
59733
+ };
59734
+ android_RTCRoomEventHandler.prototype.onUserPublishScreenVideo = function (roomId, uid, isPublish) {
59735
+ if (!this._instance['onUserPublishScreenVideo']) {
59736
+ return;
59737
+ }
59738
+ return this._instance['onUserPublishScreenVideo'](String(roomId), String(uid), isPublish);
59739
+ };
59740
+ android_RTCRoomEventHandler.prototype.onUserPublishScreenAudio = function (roomId, uid, isPublish) {
59741
+ if (!this._instance['onUserPublishScreenAudio']) {
59742
+ return;
59743
+ }
59744
+ return this._instance['onUserPublishScreenAudio'](String(roomId), String(uid), isPublish);
59745
+ };
58706
59746
  android_RTCRoomEventHandler.prototype.onRoomMessageReceived = function (uid, message) {
58707
59747
  if (!this._instance['onRoomMessageReceived']) {
58708
59748
  return;
@@ -58886,29 +59926,77 @@ var ios_RTCRoomEventHandler = /** @class */ (function (_super) {
58886
59926
  }
58887
59927
  return this._instance['onSubscribePrivilegeTokenWillExpire']();
58888
59928
  };
58889
- ios_RTCRoomEventHandler.prototype.rtcRoom$onUserPublishStream$type = function (rtcRoom, userId, type) {
58890
- if (!this._instance['onUserPublishStream']) {
59929
+ ios_RTCRoomEventHandler.prototype.rtcRoom$onUserPublishStreamVideo$uid$isPublish = function (rtcRoom, roomId, uid, isPublish) {
59930
+ if (!this._instance['onUserPublishStreamVideo']) {
59931
+ return;
59932
+ }
59933
+ return this._instance['onUserPublishStreamVideo'](String(roomId), String(uid), isPublish);
59934
+ };
59935
+ ios_RTCRoomEventHandler.prototype.rtcRoom$onUserPublishStreamAudio$uid$isPublish = function (rtcRoom, roomId, uid, isPublish) {
59936
+ if (!this._instance['onUserPublishStreamAudio']) {
58891
59937
  return;
58892
59938
  }
58893
- return this._instance['onUserPublishStream'](String(userId), t_MediaStreamType.ios_to_ts(type));
59939
+ return this._instance['onUserPublishStreamAudio'](String(roomId), String(uid), isPublish);
58894
59940
  };
58895
- ios_RTCRoomEventHandler.prototype.rtcRoom$onUserUnpublishStream$type$reason = function (rtcRoom, userId, type, reason) {
58896
- if (!this._instance['onUserUnpublishStream']) {
59941
+ ios_RTCRoomEventHandler.prototype.rtcRoom$onUserPublishScreenVideo$uid$isPublish = function (rtcRoom, roomId, uid, isPublish) {
59942
+ if (!this._instance['onUserPublishScreenVideo']) {
58897
59943
  return;
58898
59944
  }
58899
- return this._instance['onUserUnpublishStream'](String(userId), t_MediaStreamType.ios_to_ts(type), t_StreamRemoveReason.ios_to_ts(reason));
59945
+ return this._instance['onUserPublishScreenVideo'](String(roomId), String(uid), isPublish);
58900
59946
  };
58901
- ios_RTCRoomEventHandler.prototype.rtcRoom$onUserPublishScreen$type = function (rtcRoom, userId, type) {
58902
- if (!this._instance['onUserPublishScreen']) {
59947
+ ios_RTCRoomEventHandler.prototype.rtcRoom$onUserPublishScreenAudio$uid$isPublish = function (rtcRoom, roomId, uid, isPublish) {
59948
+ if (!this._instance['onUserPublishScreenAudio']) {
58903
59949
  return;
58904
59950
  }
58905
- return this._instance['onUserPublishScreen'](String(userId), t_MediaStreamType.ios_to_ts(type));
59951
+ return this._instance['onUserPublishScreenAudio'](String(roomId), String(uid), isPublish);
58906
59952
  };
58907
- ios_RTCRoomEventHandler.prototype.rtcRoom$onUserUnpublishScreen$type$reason = function (rtcRoom, userId, type, reason) {
58908
- if (!this._instance['onUserUnpublishScreen']) {
59953
+ ios_RTCRoomEventHandler.prototype.rtcRoom$onVideoPublishStateChanged$Uid$state$reason = function (rtcRoom, roomId, uid, state, reason) {
59954
+ if (!this._instance['onVideoPublishStateChanged']) {
58909
59955
  return;
58910
59956
  }
58911
- return this._instance['onUserUnpublishScreen'](String(userId), t_MediaStreamType.ios_to_ts(type), t_StreamRemoveReason.ios_to_ts(reason));
59957
+ return this._instance['onVideoPublishStateChanged'](String(roomId), String(uid), t_PublishState.ios_to_ts(state), t_PublishStateChangeReason.ios_to_ts(reason));
59958
+ };
59959
+ ios_RTCRoomEventHandler.prototype.rtcRoom$onAudioPublishStateChanged$Uid$state$reason = function (rtcRoom, roomId, uid, state, reason) {
59960
+ if (!this._instance['onAudioPublishStateChanged']) {
59961
+ return;
59962
+ }
59963
+ return this._instance['onAudioPublishStateChanged'](String(roomId), String(uid), t_PublishState.ios_to_ts(state), t_PublishStateChangeReason.ios_to_ts(reason));
59964
+ };
59965
+ ios_RTCRoomEventHandler.prototype.rtcRoom$onScreenVideoPublishStateChanged$Uid$state$reason = function (rtcRoom, roomId, uid, state, reason) {
59966
+ if (!this._instance['onScreenVideoPublishStateChanged']) {
59967
+ return;
59968
+ }
59969
+ return this._instance['onScreenVideoPublishStateChanged'](String(roomId), String(uid), t_PublishState.ios_to_ts(state), t_PublishStateChangeReason.ios_to_ts(reason));
59970
+ };
59971
+ ios_RTCRoomEventHandler.prototype.rtcRoom$onScreenAudioPublishStateChanged$Uid$state$reason = function (rtcRoom, roomId, uid, state, reason) {
59972
+ if (!this._instance['onScreenAudioPublishStateChanged']) {
59973
+ return;
59974
+ }
59975
+ return this._instance['onScreenAudioPublishStateChanged'](String(roomId), String(uid), t_PublishState.ios_to_ts(state), t_PublishStateChangeReason.ios_to_ts(reason));
59976
+ };
59977
+ ios_RTCRoomEventHandler.prototype.rtcRoom$onVideoSubscribeStateChanged$Uid$state$reason = function (rtcRoom, roomId, uid, state, reason) {
59978
+ if (!this._instance['onVideoSubscribeStateChanged']) {
59979
+ return;
59980
+ }
59981
+ return this._instance['onVideoSubscribeStateChanged'](String(roomId), String(uid), t_SubscribeState.ios_to_ts(state), t_SubscribeStateChangeReason.ios_to_ts(reason));
59982
+ };
59983
+ ios_RTCRoomEventHandler.prototype.rtcRoom$onAudioSubscribeStateChanged$Uid$state$reason = function (rtcRoom, roomId, uid, state, reason) {
59984
+ if (!this._instance['onAudioSubscribeStateChanged']) {
59985
+ return;
59986
+ }
59987
+ return this._instance['onAudioSubscribeStateChanged'](String(roomId), String(uid), t_SubscribeState.ios_to_ts(state), t_SubscribeStateChangeReason.ios_to_ts(reason));
59988
+ };
59989
+ ios_RTCRoomEventHandler.prototype.rtcRoom$onScreenVideoSubscribeStateChanged$Uid$state$reason = function (rtcRoom, roomId, uid, state, reason) {
59990
+ if (!this._instance['onScreenVideoSubscribeStateChanged']) {
59991
+ return;
59992
+ }
59993
+ return this._instance['onScreenVideoSubscribeStateChanged'](String(roomId), String(uid), t_SubscribeState.ios_to_ts(state), t_SubscribeStateChangeReason.ios_to_ts(reason));
59994
+ };
59995
+ ios_RTCRoomEventHandler.prototype.rtcRoom$onScreenAudioSubscribeStateChanged$Uid$state$reason = function (rtcRoom, roomId, uid, state, reason) {
59996
+ if (!this._instance['onScreenAudioSubscribeStateChanged']) {
59997
+ return;
59998
+ }
59999
+ return this._instance['onScreenAudioSubscribeStateChanged'](String(roomId), String(uid), t_SubscribeState.ios_to_ts(state), t_SubscribeStateChangeReason.ios_to_ts(reason));
58912
60000
  };
58913
60001
  ios_RTCRoomEventHandler.prototype.rtcRoom$onLocalStreamStats = function (rtcRoom, stats) {
58914
60002
  if (!this._instance['onLocalStreamStats']) {
@@ -59507,55 +60595,6 @@ var ios_IAudioFrameProcessor = /** @class */ (function (_super) {
59507
60595
  return ios_IAudioFrameProcessor;
59508
60596
  }(ByteRTCAudioFrameProcessor));
59509
60597
 
59510
- var VertcHelper$1 = function () {
59511
- var _classDecorators = [NativeClass('VertcHelper')];
59512
- var _classDescriptor;
59513
- var _classExtraInitializers = [];
59514
- var _classThis;
59515
- var _staticExtraInitializers = [];
59516
- var _instanceExtraInitializers = [];
59517
- var _static_getInstance_decorators;
59518
- var _static_isUnionLiveModeEnable_decorators;
59519
- var _init_decorators;
59520
- var _invokeStartPushSingleStreamToCDN_decorators;
59521
- var VertcHelper = _classThis = /** @class */ (function () {
59522
- function VertcHelper_1() {
59523
- __runInitializers(this, _instanceExtraInitializers);
59524
- }
59525
- VertcHelper_1.prototype.init = function () {
59526
- throw new Error('not implement');
59527
- };
59528
- VertcHelper_1.getInstance = function () {
59529
- throw new Error('not implement');
59530
- };
59531
- VertcHelper_1.prototype.invokeStartPushSingleStreamToCDN = function (video, taskId, param) {
59532
- throw new Error('not implement');
59533
- };
59534
- VertcHelper_1.isUnionLiveModeEnable = function () {
59535
- throw new Error('not implement');
59536
- };
59537
- return VertcHelper_1;
59538
- }());
59539
- __setFunctionName(_classThis, "VertcHelper");
59540
- (function () {
59541
- var _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
59542
- _init_decorators = [NativeMethodSync('init')];
59543
- _static_getInstance_decorators = [ReturnClass(function () { return VertcHelper; }), NativeStaticMethodSync('getInstance')];
59544
- _invokeStartPushSingleStreamToCDN_decorators = [NativeMethod('invokeStartPushSingleStreamToCDN:taskId:singleStream:')];
59545
- _static_isUnionLiveModeEnable_decorators = [NativeStaticMethodSync('isUnionLiveModeEnable')];
59546
- __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);
59547
- __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);
59548
- __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);
59549
- __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);
59550
- __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
59551
- VertcHelper = _classThis = _classDescriptor.value;
59552
- if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
59553
- __runInitializers(_classThis, _staticExtraInitializers);
59554
- __runInitializers(_classThis, _classExtraInitializers);
59555
- })();
59556
- return VertcHelper = _classThis;
59557
- }();
59558
-
59559
60598
  var ForwardStreamInfo = function () {
59560
60599
  var _classDecorators = [PackClass()];
59561
60600
  var _classDescriptor;
@@ -65580,510 +66619,267 @@ var RTCRoom = function () {
65580
66619
  };
65581
66620
  /** {en}
65582
66621
  * @detail api
65583
- * @region Room Management
65584
- * @author shenpengliang
65585
- * @brief Publishes media streams captured by camera/microphone in the current room.
65586
- * @param type Media stream type, used for specifying whether to publish audio stream or video stream. See {@link MediaStreamType MediaStreamType}.
66622
+ * @valid since 3.60.
66623
+ * @brief Start or stop publishing video streams captured by camera in the current room.
66624
+ * @param publish Whether to publish the media stream.
65587
66625
  * @return
65588
66626
  * - 0: Success.
65589
- * - < 0 : Fail. See {@link ReturnStatus ReturnStatus} for more details
66627
+ * - < 0 : Fail. See ReturnStatus{@link #ReturnStatus} for more details
65590
66628
  * @note
65591
- * - You don't need to call this API if you set it to Auto-publish when calling {@link joinRoom joinRoom}.
65592
- * - An invisible user cannot publish media streams. Call {@link setUserVisibility setUserVisibility} to change your visibility in the room.
65593
- * - Call {@link publishScreen publishScreen} to start screen sharing.
65594
- * - Call {@link startForwardStreamToRooms startForwardStreamToRooms} to forward the published streams to the other rooms.
65595
- * - 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.
65596
- * - Call {@link unpublishStream unpublishStream} to stop publishing streams.
66629
+ * - You don't need to call this API if you set it to Auto-publish when calling joinRoom{@link #RTCRoom#joinRoom}.
66630
+ * - An invisible user cannot publish media streams. Call setUserVisibility{@link #RTCRoom#setUserVisibility} to change your visibility in the room.
66631
+ * - Call publishScreenAudio{@link #RTCRoom#publishScreenAudio} (not supported on Linux) and/or publishScreenVideo{@link #RTCRoom#publishScreenVideo} to start or stop screen sharing.
66632
+ * - Call publishStreamAudio{@link #RTCRoom#publishStreamAudio} to start or stop publishing the audio stream captured by the microphone.
66633
+ * - Call startForwardStreamToRooms{@link #RTCRoom#startForwardStreamToRooms} to forward the published streams to the other rooms.
66634
+ * - 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.
65597
66635
  *
65598
66636
  */
65599
- RTCRoom_1.prototype.publishStream = function (type) {
65600
- return __awaiter(this, void 0, void 0, function () {
65601
- var a, i, $os;
65602
- var _this = this;
65603
- return __generator(this, function (_a) {
65604
- switch (_a.label) {
65605
- case 0:
65606
- a = function () { return Number(_this._instance.publishStream(t_MediaStreamType.ts_to_android(type))); };
65607
- i = function () { return __awaiter(_this, void 0, void 0, function () {
65608
- var enable, result, audioRes, videoRes;
65609
- return __generator(this, function (_a) {
65610
- switch (_a.label) {
65611
- case 0: return [4 /*yield*/, VertcHelper$1.isUnionLiveModeEnable()];
65612
- case 1:
65613
- enable = _a.sent();
65614
- if (enable) {
65615
- result = 0;
65616
- if (type !== exports.MediaStreamType.RTC_MEDIA_STREAM_TYPE_VIDEO) {
65617
- audioRes = Number(this._instance.publishStreamAudio(true));
65618
- result = audioRes === 0 ? 0 : audioRes;
65619
- }
65620
- if (type !== exports.MediaStreamType.RTC_MEDIA_STREAM_TYPE_AUDIO) {
65621
- videoRes = Number(this._instance.publishStreamVideo(true));
65622
- result = videoRes === 0 ? 0 : videoRes;
65623
- }
65624
- return [2 /*return*/, result];
65625
- }
65626
- else {
65627
- return [2 /*return*/, Number(this._instance.publishStream(t_MediaStreamType.ts_to_ios(type)))];
65628
- }
65629
- }
65630
- });
65631
- }); };
65632
- $os = env.getOS();
65633
- if (!($os === 'android')) return [3 /*break*/, 2];
65634
- return [4 /*yield*/, a()];
65635
- case 1: return [2 /*return*/, _a.sent()];
65636
- case 2:
65637
- if (!($os === 'ios')) return [3 /*break*/, 4];
65638
- return [4 /*yield*/, i()];
65639
- case 3: return [2 /*return*/, _a.sent()];
65640
- case 4: throw new Error('Not Support Platform ' + $os);
65641
- }
65642
- });
65643
- });
66637
+ RTCRoom_1.prototype.publishStreamVideo = function (publish) {
66638
+ var _this = this;
66639
+ var a = function () { return Number(_this._instance.publishStreamVideo(publish)); };
66640
+ var i = function () { return Number(_this._instance.publishStreamVideo(publish)); };
66641
+ var $os = env.getOS();
66642
+ if ($os === 'android') {
66643
+ return a();
66644
+ }
66645
+ else if ($os === 'ios') {
66646
+ return i();
66647
+ }
66648
+ else {
66649
+ throw new Error('Not Support Platform ' + $os);
66650
+ }
65644
66651
  };
65645
66652
  /** {en}
65646
66653
  * @detail api
65647
- * @region Room Management
65648
- * @author shenpengliang
65649
- * @brief Stops publishing media streams captured by camera/microphone in the current room.
65650
- * @param type Media stream type, used for specifying whether to stop publishing audio stream or video stream. See {@link MediaStreamType MediaStreamType}.
66654
+ * @valid since 3.60.
66655
+ * @brief Start or stop publishing media streams captured by the local microphone in the current room.
66656
+ * @param publish Whether to publish the media stream.
65651
66657
  * @return
65652
66658
  * - 0: Success.
65653
- * - < 0 : Fail. See {@link ReturnStatus ReturnStatus} for more details
66659
+ * - < 0 : Fail. See ReturnStatus{@link #ReturnStatus} for more details
65654
66660
  * @note
65655
- * - After calling {@link publishStream publishStream}, call this API to stop publishing streams.
65656
- * - After calling this API, the other users in the room will receive {@link onUserUnpublishStream onUserUnpublishStream}
66661
+ * - You don't need to call this API if you set it to Auto-publish when calling joinRoom{@link #RTCRoom#joinRoom}.
66662
+ * - An invisible user cannot publish media streams. Call setUserVisibility{@link #RTCRoom#setUserVisibility} to change your visibility in the room.
66663
+ * - Call publishScreenAudio{@link #RTCRoom#publishScreenAudio} (not supported on Linux) and/or publishScreenVideo{@link #RTCRoom#publishScreenVideo} to start or stop screen sharing.
66664
+ * - Call publishStreamVideo{@link #RTCRoom#publishStreamVideo} to start or stop publishing the video stream captured by the camera.
66665
+ * - Call startForwardStreamToRooms{@link #RTCRoom#startForwardStreamToRooms} to forward the published streams to the other rooms.
66666
+ * - 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.
65657
66667
  *
65658
66668
  */
65659
- RTCRoom_1.prototype.unpublishStream = function (type) {
65660
- return __awaiter(this, void 0, void 0, function () {
65661
- var a, i, $os;
65662
- var _this = this;
65663
- return __generator(this, function (_a) {
65664
- switch (_a.label) {
65665
- case 0:
65666
- a = function () { return Number(_this._instance.unpublishStream(t_MediaStreamType.ts_to_android(type))); };
65667
- i = function () { return __awaiter(_this, void 0, void 0, function () {
65668
- var enable, result, audioRes, videoRes;
65669
- return __generator(this, function (_a) {
65670
- switch (_a.label) {
65671
- case 0: return [4 /*yield*/, VertcHelper$1.isUnionLiveModeEnable()];
65672
- case 1:
65673
- enable = _a.sent();
65674
- if (enable) {
65675
- result = 0;
65676
- if (type !== exports.MediaStreamType.RTC_MEDIA_STREAM_TYPE_VIDEO) {
65677
- audioRes = Number(this._instance.publishStreamAudio(false));
65678
- result = audioRes === 0 ? 0 : audioRes;
65679
- }
65680
- if (type !== exports.MediaStreamType.RTC_MEDIA_STREAM_TYPE_AUDIO) {
65681
- videoRes = Number(this._instance.publishStreamVideo(false));
65682
- result = videoRes === 0 ? 0 : videoRes;
65683
- }
65684
- return [2 /*return*/, result];
65685
- }
65686
- else {
65687
- return [2 /*return*/, Number(this._instance.unpublishStream(t_MediaStreamType.ts_to_ios(type)))];
65688
- }
65689
- }
65690
- });
65691
- }); };
65692
- $os = env.getOS();
65693
- if (!($os === 'android')) return [3 /*break*/, 2];
65694
- return [4 /*yield*/, a()];
65695
- case 1: return [2 /*return*/, _a.sent()];
65696
- case 2:
65697
- if (!($os === 'ios')) return [3 /*break*/, 4];
65698
- return [4 /*yield*/, i()];
65699
- case 3: return [2 /*return*/, _a.sent()];
65700
- case 4: throw new Error('Not Support Platform ' + $os);
65701
- }
65702
- });
65703
- });
66669
+ RTCRoom_1.prototype.publishStreamAudio = function (publish) {
66670
+ var _this = this;
66671
+ var a = function () { return Number(_this._instance.publishStreamAudio(publish)); };
66672
+ var i = function () { return Number(_this._instance.publishStreamAudio(publish)); };
66673
+ var $os = env.getOS();
66674
+ if ($os === 'android') {
66675
+ return a();
66676
+ }
66677
+ else if ($os === 'ios') {
66678
+ return i();
66679
+ }
66680
+ else {
66681
+ throw new Error('Not Support Platform ' + $os);
66682
+ }
65704
66683
  };
65705
66684
  /** {en}
65706
66685
  * @detail api
65707
- * @region Screen Sharing
65708
- * @author liyi.000
65709
- * @brief Publishes local screen sharing streams in the current room.
65710
- * @param type Media stream type, used for specifying whether to publish audio stream or video stream. See {@link MediaStreamType MediaStreamType}.
66686
+ * @valid since 3.60.
66687
+ * @brief Start or stop sharing the local screen in the room.
66688
+ * 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.
66689
+ * @param publish Whether to publish video stream.
65711
66690
  * @return
65712
66691
  * - 0: Success.
65713
- * - < 0 : Fail. See {@link ReturnStatus ReturnStatus} for more details
66692
+ * - < 0 : Fail. See ReturnStatus{@link #ReturnStatus} for more details
65714
66693
  * @note
65715
- * - You need to call this API to publish screen even if you set it to Auto-publish when calling {@link joinRoom joinRoom}.
65716
- * - An invisible user cannot publish media streams. Call {@link setUserVisibility setUserVisibility} to change your visibility in the room.
65717
- * - 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.
65718
- * - After calling this API, you'll receive {@link onScreenVideoFrameSendStateChanged onScreenVideoFrameSendStateChanged}.
65719
- * - Call {@link startForwardStreamToRooms startForwardStreamToRooms} to forward the published streams to the other rooms.
65720
- * - Call {@link unpublishScreen unpublishScreen} to stop publishing screen-sharing streams.
65721
- * - Refer to [Sharing Screen in Android](https://docs.byteplus.com/byteplus-rtc/docs/124176) for more information.
66694
+ * - You need to call this API to publish screen even if you set it to Auto-publish when calling joinRoom{@link #RTCRoom#joinRoom}.
66695
+ * - An invisible user cannot publish media streams. Call setUserVisibility{@link #RTCRoom#setUserVisibility} to change your visibility in the room.
66696
+ * - Call publishScreenAudio{@link #RTCRoom#publishScreenAudio} (not supported on Linux) to start or stop sharing computer audio.
66697
+ * - Call publishStreamVideo{@link #RTCRoom#publishStreamVideo} to start or stop publishing the video stream captured by the camera.
66698
+ * - Call publishStreamAudio{@link #RTCRoom#publishStreamAudio} to start or stop publishing the audio stream captured by the microphone.
66699
+ * - Call startForwardStreamToRooms{@link #RTCRoom#startForwardStreamToRooms} to forward the published streams to the other rooms.
66700
+ * - 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.
66701
+ * - After calling this API, you'll receive onScreenVideoFrameSendStateChanged{@link #IRTCEngineEventHandler#onScreenVideoFrameSendStateChanged}.
66702
+ * - Refer to [Sharing Screen in PC](https://docs.byteplus.com/byteplus-rtc/docs/70144) for more information.
65722
66703
  *
65723
66704
  */
65724
- RTCRoom_1.prototype.publishScreen = function (type) {
65725
- return __awaiter(this, void 0, void 0, function () {
65726
- var a, i, $os;
65727
- var _this = this;
65728
- return __generator(this, function (_a) {
65729
- switch (_a.label) {
65730
- case 0:
65731
- a = function () { return Number(_this._instance.publishScreen(t_MediaStreamType.ts_to_android(type))); };
65732
- i = function () { return __awaiter(_this, void 0, void 0, function () {
65733
- var enable, result, audioRes, videoRes;
65734
- return __generator(this, function (_a) {
65735
- switch (_a.label) {
65736
- case 0: return [4 /*yield*/, VertcHelper$1.isUnionLiveModeEnable()];
65737
- case 1:
65738
- enable = _a.sent();
65739
- if (enable) {
65740
- result = 0;
65741
- if (type !== exports.MediaStreamType.RTC_MEDIA_STREAM_TYPE_VIDEO) {
65742
- audioRes = Number(this._instance.publishScreenAudio(true));
65743
- result = audioRes === 0 ? 0 : audioRes;
65744
- }
65745
- if (type !== exports.MediaStreamType.RTC_MEDIA_STREAM_TYPE_AUDIO) {
65746
- videoRes = Number(this._instance.publishScreenVideo(true));
65747
- result = videoRes === 0 ? 0 : videoRes;
65748
- }
65749
- return [2 /*return*/, result];
65750
- }
65751
- else {
65752
- return [2 /*return*/, Number(this._instance.publishScreen(t_MediaStreamType.ts_to_ios(type)))];
65753
- }
65754
- }
65755
- });
65756
- }); };
65757
- $os = env.getOS();
65758
- if (!($os === 'android')) return [3 /*break*/, 2];
65759
- return [4 /*yield*/, a()];
65760
- case 1: return [2 /*return*/, _a.sent()];
65761
- case 2:
65762
- if (!($os === 'ios')) return [3 /*break*/, 4];
65763
- return [4 /*yield*/, i()];
65764
- case 3: return [2 /*return*/, _a.sent()];
65765
- case 4: throw new Error('Not Support Platform ' + $os);
65766
- }
65767
- });
65768
- });
66705
+ RTCRoom_1.prototype.publishScreenVideo = function (publish) {
66706
+ var _this = this;
66707
+ var a = function () { return Number(_this._instance.publishScreenVideo(publish)); };
66708
+ var i = function () { return Number(_this._instance.publishScreenVideo(publish)); };
66709
+ var $os = env.getOS();
66710
+ if ($os === 'android') {
66711
+ return a();
66712
+ }
66713
+ else if ($os === 'ios') {
66714
+ return i();
66715
+ }
66716
+ else {
66717
+ throw new Error('Not Support Platform ' + $os);
66718
+ }
65769
66719
  };
65770
66720
  /** {en}
66721
+ * @hidden(Linux)
65771
66722
  * @detail api
65772
- * @region Screen Sharing
65773
- * @author liyi.000
65774
- * @brief Stops publishing local screen sharing streams in the current room.
65775
- * @param type Media stream type, used for specifying whether to stop publishing audio stream or video stream. See {@link MediaStreamType MediaStreamType}.
66723
+ * @valid since 3.60.
66724
+ * @brief Manually publishes local screen-sharing streams in the current room. <br>
66725
+ * 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.
66726
+ * @param publish Media stream type, used for specifying whether to publish audio stream or video stream.
65776
66727
  * @return
65777
66728
  * - 0: Success.
65778
- * - < 0 : Fail. See {@link ReturnStatus ReturnStatus} for more details
66729
+ * - < 0 : Fail. See ReturnStatus{@link #ReturnStatus} for more details
65779
66730
  * @note
65780
- * - After calling {@link publishScreen publishScreen}, call this API to stop publishing streams.
65781
- * - After calling this API, the other users in the room will receive {@link onUserUnpublishScreen onUserUnpublishScreen}.
66731
+ * - You need to call this API to publish screen even if you set it to Auto-publish when calling joinRoom{@link #RTCRoom#joinRoom}.
66732
+ * - An invisible user cannot publish media streams. Call setUserVisibility{@link #RTCRoom#setUserVisibility} to change your visibility in the room.
66733
+ * - Call publishScreenVideo{@link #RTCRoom#publishScreenVideo} to start or stop sharing the local screen.
66734
+ * - Call publishStreamVideo{@link #RTCRoom#publishStreamVideo} to start or stop publishing the video stream captured by the camera.
66735
+ * - Call publishStreamAudio{@link #RTCRoom#publishStreamAudio} to start or stop publishing the audio stream captured by the microphone.
66736
+ * - Call startForwardStreamToRooms{@link #RTCRoom#startForwardStreamToRooms} to forward the published streams to the other rooms.
66737
+ * - 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.
66738
+ * - Refer to [Sharing Screen in PC](https://docs.byteplus.com/byteplus-rtc/docs/70144) for more information.
65782
66739
  *
65783
66740
  */
65784
- RTCRoom_1.prototype.unpublishScreen = function (type) {
65785
- return __awaiter(this, void 0, void 0, function () {
65786
- var a, i, $os;
65787
- var _this = this;
65788
- return __generator(this, function (_a) {
65789
- switch (_a.label) {
65790
- case 0:
65791
- a = function () { return Number(_this._instance.unpublishScreen(t_MediaStreamType.ts_to_android(type))); };
65792
- i = function () { return __awaiter(_this, void 0, void 0, function () {
65793
- var enable, result, audioRes, videoRes;
65794
- return __generator(this, function (_a) {
65795
- switch (_a.label) {
65796
- case 0: return [4 /*yield*/, VertcHelper$1.isUnionLiveModeEnable()];
65797
- case 1:
65798
- enable = _a.sent();
65799
- if (enable) {
65800
- result = 0;
65801
- if (type !== exports.MediaStreamType.RTC_MEDIA_STREAM_TYPE_VIDEO) {
65802
- audioRes = Number(this._instance.publishScreenAudio(false));
65803
- result = audioRes === 0 ? 0 : audioRes;
65804
- }
65805
- if (type !== exports.MediaStreamType.RTC_MEDIA_STREAM_TYPE_AUDIO) {
65806
- videoRes = Number(this._instance.publishScreenVideo(false));
65807
- result = videoRes === 0 ? 0 : videoRes;
65808
- }
65809
- return [2 /*return*/, result];
65810
- }
65811
- else {
65812
- return [2 /*return*/, Number(this._instance.unpublishScreen(t_MediaStreamType.ts_to_ios(type)))];
65813
- }
65814
- }
65815
- });
65816
- }); };
65817
- $os = env.getOS();
65818
- if (!($os === 'android')) return [3 /*break*/, 2];
65819
- return [4 /*yield*/, a()];
65820
- case 1: return [2 /*return*/, _a.sent()];
65821
- case 2:
65822
- if (!($os === 'ios')) return [3 /*break*/, 4];
65823
- return [4 /*yield*/, i()];
65824
- case 3: return [2 /*return*/, _a.sent()];
65825
- case 4: throw new Error('Not Support Platform ' + $os);
65826
- }
65827
- });
65828
- });
66741
+ RTCRoom_1.prototype.publishScreenAudio = function (publish) {
66742
+ var _this = this;
66743
+ var a = function () { return Number(_this._instance.publishScreenAudio(publish)); };
66744
+ var i = function () { return Number(_this._instance.publishScreenAudio(publish)); };
66745
+ var $os = env.getOS();
66746
+ if ($os === 'android') {
66747
+ return a();
66748
+ }
66749
+ else if ($os === 'ios') {
66750
+ return i();
66751
+ }
66752
+ else {
66753
+ throw new Error('Not Support Platform ' + $os);
66754
+ }
65829
66755
  };
65830
66756
  /** {en}
65831
66757
  * @detail api
65832
- * @region Room Management
65833
- * @author shenpengliang
65834
- * @brief Subscribes to specific remote media streams captured by camera/microphone. Or update the options of the subscribed user.
65835
- * @param uid ID of the remote user who published the target audio/video stream.
65836
- * @param type Media stream type, used for specifying whether to subscribe to the audio stream or the video stream. See {@link MediaStreamType MediaStreamType}.
66758
+ * @valid since 3.60.
66759
+ * @brief Subscribes to specific remote media streams captured by the local camera. Or update the subscribe options of the subscribed user.
66760
+ * @param userId The ID of the remote user who published the target video stream.
66761
+ * @param subscribe Whether to subscribe to the stream.
65837
66762
  * @return API call result: <br>
65838
66763
  * - 0: Success.
65839
- * - <0: Failure. See {@link ReturnStatus ReturnStatus} for specific reasons.
66764
+ * - <0: Failure. See ReturnStatus{@link #ReturnStatus} for specific reasons.
65840
66765
  * @note
65841
66766
  * - 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.
65842
- * - You must first get the remote stream information through {@link onUserPublishStream onUserPublishStream} before calling this API to subscribe to streams accordingly.
65843
- * - After calling this API, you will be informed of the calling result with {@link onStreamSubscribed onStreamSubscribed}.
65844
- * - 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}.
65845
- * - Any other exceptions will be included in {@link onStreamStateChanged onStreamStateChanged}, see {@link ErrorCode ErrorCode} for the reasons.
66767
+ * - You must first get the remote stream information through onUserPublishStreamVideo{@link #IRTCRoomEventHandler#onUserPublishStreamVideo} before calling this API to subscribe to streams accordingly.
66768
+ * - After calling this API, you will be informed of the calling result with onVideoSubscribeStateChanged{@link #IRTCRoomEventHandler#onVideoSubscribeStateChanged}.
66769
+ * - 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}.
66770
+ * - Any other exceptions will be included in onVideoSubscribeStateChanged{@link #IRTCRoomEventHandler#onVideoSubscribeStateChanged}, see SubscribeStateChangeReason{@link #SubscribeStateChangeReason} for the reasons.
65846
66771
  *
65847
66772
  */
65848
- RTCRoom_1.prototype.subscribeStream = function (uid, type) {
65849
- return __awaiter(this, void 0, void 0, function () {
65850
- var a, i, $os;
65851
- var _this = this;
65852
- return __generator(this, function (_a) {
65853
- switch (_a.label) {
65854
- case 0:
65855
- a = function () {
65856
- return Number(_this._instance.subscribeStream(uid, t_MediaStreamType.ts_to_android(type)));
65857
- };
65858
- i = function () { return __awaiter(_this, void 0, void 0, function () {
65859
- var enable, result, audioRes, videoRes;
65860
- return __generator(this, function (_a) {
65861
- switch (_a.label) {
65862
- case 0: return [4 /*yield*/, VertcHelper$1.isUnionLiveModeEnable()];
65863
- case 1:
65864
- enable = _a.sent();
65865
- if (enable) {
65866
- result = 0;
65867
- if (type !== exports.MediaStreamType.RTC_MEDIA_STREAM_TYPE_VIDEO) {
65868
- audioRes = Number(this._instance.subscribeStreamAudio(uid, true));
65869
- result = audioRes === 0 ? 0 : audioRes;
65870
- }
65871
- if (type !== exports.MediaStreamType.RTC_MEDIA_STREAM_TYPE_AUDIO) {
65872
- videoRes = Number(this._instance.subscribeStreamVideo(uid, true));
65873
- result = videoRes === 0 ? 0 : videoRes;
65874
- }
65875
- return [2 /*return*/, result];
65876
- }
65877
- else {
65878
- return [2 /*return*/, Number(this._instance.subscribeStream(uid, t_MediaStreamType.ts_to_ios(type)))];
65879
- }
65880
- }
65881
- });
65882
- }); };
65883
- $os = env.getOS();
65884
- if (!($os === 'android')) return [3 /*break*/, 2];
65885
- return [4 /*yield*/, a()];
65886
- case 1: return [2 /*return*/, _a.sent()];
65887
- case 2:
65888
- if (!($os === 'ios')) return [3 /*break*/, 4];
65889
- return [4 /*yield*/, i()];
65890
- case 3: return [2 /*return*/, _a.sent()];
65891
- case 4: throw new Error('Not Support Platform ' + $os);
65892
- }
65893
- });
65894
- });
66773
+ RTCRoom_1.prototype.subscribeStreamVideo = function (userId, subscribe) {
66774
+ var _this = this;
66775
+ var a = function () { return Number(_this._instance.subscribeStreamVideo(userId, subscribe)); };
66776
+ var i = function () { return Number(_this._instance.subscribeStreamVideo(userId, subscribe)); };
66777
+ var $os = env.getOS();
66778
+ if ($os === 'android') {
66779
+ return a();
66780
+ }
66781
+ else if ($os === 'ios') {
66782
+ return i();
66783
+ }
66784
+ else {
66785
+ throw new Error('Not Support Platform ' + $os);
66786
+ }
65895
66787
  };
65896
66788
  /** {en}
65897
66789
  * @detail api
65898
- * @region Room Management
65899
- * @author shenpengliang
65900
- * @brief Unsubscribes from specific remote media streams captured by camera/microphone. <br>
65901
- * You can call this API in both automatic subscription mode and manual subscription mode.
65902
- * @param uid The ID of the remote user who published the target audio/video stream.
65903
- * @param type Media stream type, used for specifying whether to unsubscribe from the audio stream or the video stream. See {@link MediaStreamType MediaStreamType}.
66790
+ * @valid since 3.60.
66791
+ * @brief Subscribes to specific remote media streams captured by the local microphone. Or update the subscribe options of the subscribed user.
66792
+ * @param userId The ID of the remote user who published the target media stream.
66793
+ * @param subscribe Whether to subscribe to the audio stream.
65904
66794
  * @return API call result: <br>
65905
66795
  * - 0: Success.
65906
- * - <0: Failure. See {@link ReturnStatus ReturnStatus} for specific reasons.
66796
+ * - <0: Failure. See ReturnStatus{@link #ReturnStatus} for specific reasons.
65907
66797
  * @note
65908
- * - After calling this API, you will be informed of the calling result with {@link onStreamSubscribed onStreamSubscribed}.
65909
- * - Any other exceptions will be included in {@link onStreamStateChanged onStreamStateChanged}, see {@link ErrorCode ErrorCode} for the reasons.
66798
+ * - 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.
66799
+ * - You must first get the remote stream information through onUserPublishStreamAudio{@link #IRTCRoomEventHandler#onUserPublishStreamAudio} before calling this API to subscribe to streams accordingly.
66800
+ * - After calling this API, you will be informed of the calling result with onAudioSubscribeStateChanged{@link #IRTCRoomEventHandler#onAudioSubscribeStateChanged}.
66801
+ * - 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}.
66802
+ * - Any other exceptions will be included in onAudioSubscribeStateChanged{@link #IRTCRoomEventHandler#onAudioSubscribeStateChanged}, see ErrorCode{@link #ErrorCode} for the reasons.
65910
66803
  *
65911
66804
  */
65912
- RTCRoom_1.prototype.unsubscribeStream = function (uid, type) {
65913
- return __awaiter(this, void 0, void 0, function () {
65914
- var a, i, $os;
65915
- var _this = this;
65916
- return __generator(this, function (_a) {
65917
- switch (_a.label) {
65918
- case 0:
65919
- a = function () {
65920
- return Number(_this._instance.unsubscribeStream(uid, t_MediaStreamType.ts_to_android(type)));
65921
- };
65922
- i = function () { return __awaiter(_this, void 0, void 0, function () {
65923
- var enable, result, audioRes, videoRes;
65924
- return __generator(this, function (_a) {
65925
- switch (_a.label) {
65926
- case 0: return [4 /*yield*/, VertcHelper$1.isUnionLiveModeEnable()];
65927
- case 1:
65928
- enable = _a.sent();
65929
- if (enable) {
65930
- result = 0;
65931
- if (type !== exports.MediaStreamType.RTC_MEDIA_STREAM_TYPE_VIDEO) {
65932
- audioRes = Number(this._instance.subscribeStreamAudio(uid, false));
65933
- result = audioRes === 0 ? 0 : audioRes;
65934
- }
65935
- if (type !== exports.MediaStreamType.RTC_MEDIA_STREAM_TYPE_AUDIO) {
65936
- videoRes = Number(this._instance.subscribeStreamVideo(uid, false));
65937
- result = videoRes === 0 ? 0 : videoRes;
65938
- }
65939
- return [2 /*return*/, result];
65940
- }
65941
- else {
65942
- return [2 /*return*/, Number(this._instance.unsubscribeStream(uid, t_MediaStreamType.ts_to_ios(type)))];
65943
- }
65944
- }
65945
- });
65946
- }); };
65947
- $os = env.getOS();
65948
- if (!($os === 'android')) return [3 /*break*/, 2];
65949
- return [4 /*yield*/, a()];
65950
- case 1: return [2 /*return*/, _a.sent()];
65951
- case 2:
65952
- if (!($os === 'ios')) return [3 /*break*/, 4];
65953
- return [4 /*yield*/, i()];
65954
- case 3: return [2 /*return*/, _a.sent()];
65955
- case 4: throw new Error('Not Support Platform ' + $os);
65956
- }
65957
- });
65958
- });
66805
+ RTCRoom_1.prototype.subscribeStreamAudio = function (userId, subscribe) {
66806
+ var _this = this;
66807
+ var a = function () { return Number(_this._instance.subscribeStreamAudio(userId, subscribe)); };
66808
+ var i = function () { return Number(_this._instance.subscribeStreamAudio(userId, subscribe)); };
66809
+ var $os = env.getOS();
66810
+ if ($os === 'android') {
66811
+ return a();
66812
+ }
66813
+ else if ($os === 'ios') {
66814
+ return i();
66815
+ }
66816
+ else {
66817
+ throw new Error('Not Support Platform ' + $os);
66818
+ }
65959
66819
  };
65960
66820
  /** {en}
65961
66821
  * @detail api
65962
- * @region Room Management
65963
- * @author shenpengliang
65964
- * @brief Subscribes to specific screen sharing media stream. Or update the subscribe options of the subscribed user.
65965
- * @param uid The ID of the remote user who published the target screen audio/video stream.
65966
- * @param type Media stream type, used for specifying whether to subscribe to the audio stream or the video stream. See {@link MediaStreamType MediaStreamType}.
66822
+ * @valid since 3.60.
66823
+ * @brief Subscribes to specific screen sharing media stream. Or update the subscribe options of the subscribed user.
66824
+ * @param userId The ID of the remote user who published the target screen video stream.
66825
+ * @param subscribe Whether to subscribe to the screen video stream.
65967
66826
  * @return API call result: <br>
65968
66827
  * - 0: Success.
65969
- * - <0: Failure. See {@link ReturnStatus ReturnStatus} for specific reasons.
66828
+ * - <0: Failure. See ReturnStatus{@link #ReturnStatus} for specific reasons.
65970
66829
  * @note
65971
66830
  * - 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.
65972
- * - You must first get the remote stream information through {@link onUserPublishScreen onUserPublishScreen} before calling this API to subscribe to streams accordingly.
65973
- * - After calling this API, you will be informed of the calling result with {@link onStreamSubscribed onStreamSubscribed}.
65974
- * - 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}.
65975
- * - Any other exceptions will be included in {@link onStreamStateChanged onStreamStateChanged}, see {@link ErrorCode ErrorCode} for the reasons.
66831
+ * - You must first get the remote stream information through onUserPublishScreenVideo{@link #IRTCRoomEventHandler#onUserPublishScreenVideo} before calling this API to subscribe to streams accordingly.
66832
+ * - After calling this API, you will be informed of the calling result with onScreenVideoSubscribeStateChanged{@link #IRTCRoomEventHandler#onScreenVideoSubscribeStateChanged}.
66833
+ * - 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}.
66834
+ * - Any other exceptions will be included in onScreenVideoSubscribeStateChanged{@link #IRTCRoomEventHandler#onScreenVideoSubscribeStateChanged}, see SubscribeStateChangeReason{@link #SubscribeStateChangeReason} for the reasons.
65976
66835
  *
65977
66836
  */
65978
- RTCRoom_1.prototype.subscribeScreen = function (uid, type) {
65979
- return __awaiter(this, void 0, void 0, function () {
65980
- var a, i, $os;
65981
- var _this = this;
65982
- return __generator(this, function (_a) {
65983
- a = function () {
65984
- return Number(_this._instance.subscribeScreen(uid, t_MediaStreamType.ts_to_android(type)));
65985
- };
65986
- i = function () { return __awaiter(_this, void 0, void 0, function () {
65987
- var enable, result, audioRes, videoRes;
65988
- return __generator(this, function (_a) {
65989
- switch (_a.label) {
65990
- case 0: return [4 /*yield*/, VertcHelper$1.isUnionLiveModeEnable()];
65991
- case 1:
65992
- enable = _a.sent();
65993
- if (enable) {
65994
- result = 0;
65995
- if (type !== exports.MediaStreamType.RTC_MEDIA_STREAM_TYPE_VIDEO) {
65996
- audioRes = Number(this._instance.subscribeScreenAudio(uid, true));
65997
- result = audioRes === 0 ? 0 : audioRes;
65998
- }
65999
- if (type !== exports.MediaStreamType.RTC_MEDIA_STREAM_TYPE_AUDIO) {
66000
- videoRes = Number(this._instance.subscribeScreenVideo(uid, true));
66001
- result = videoRes === 0 ? 0 : videoRes;
66002
- }
66003
- return [2 /*return*/, result];
66004
- }
66005
- else {
66006
- return [2 /*return*/, Number(this._instance.subscribeScreen(uid, t_MediaStreamType.ts_to_ios(type)))];
66007
- }
66008
- }
66009
- });
66010
- }); };
66011
- $os = env.getOS();
66012
- if ($os === 'android') {
66013
- return [2 /*return*/, a()];
66014
- }
66015
- else if ($os === 'ios') {
66016
- return [2 /*return*/, i()];
66017
- }
66018
- else {
66019
- throw new Error('Not Support Platform ' + $os);
66020
- }
66021
- });
66022
- });
66837
+ RTCRoom_1.prototype.subscribeScreenVideo = function (userId, subscribe) {
66838
+ var _this = this;
66839
+ var a = function () { return Number(_this._instance.subscribeScreenVideo(userId, subscribe)); };
66840
+ var i = function () { return Number(_this._instance.subscribeScreenVideo(userId, subscribe)); };
66841
+ var $os = env.getOS();
66842
+ if ($os === 'android') {
66843
+ return a();
66844
+ }
66845
+ else if ($os === 'ios') {
66846
+ return i();
66847
+ }
66848
+ else {
66849
+ throw new Error('Not Support Platform ' + $os);
66850
+ }
66023
66851
  };
66024
66852
  /** {en}
66025
66853
  * @detail api
66026
- * @region Room Management
66027
- * @author shenpengliang
66028
- * @brief Unsubscribes from specific screen sharing media stream. <br>
66029
- * You can call this API in both automatic subscription mode and manual subscription mode.
66030
- * @param uid The ID of the remote user who published the target screen audio/video stream.
66031
- * @param type Media stream type, used for specifying whether to unsubscribe from the audio stream or the video stream. See {@link MediaStreamType MediaStreamType}.
66854
+ * @valid since 3.60.
66855
+ * @brief Subscribes to specific screen sharing media stream. Or update the subscribe options of the subscribed user.
66856
+ * @param userId The ID of the remote user who published the target screen audio stream.
66857
+ * @param subscribe Whether to subscribe to the screen audio stream.
66032
66858
  * @return API call result: <br>
66033
66859
  * - 0: Success.
66034
- * - <0: Failure. See {@link ReturnStatus ReturnStatus} for specific reasons.
66860
+ * - <0: Failure. See ReturnStatus{@link #ReturnStatus} for specific reasons.
66035
66861
  * @note
66036
- * - After calling this API, you will be informed of the calling result with {@link onStreamSubscribed onStreamSubscribed}.
66037
- * - Any other exceptions will be included in {@link onStreamStateChanged onStreamStateChanged}, see {@link ErrorCode ErrorCode} for the reasons.
66862
+ * - 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.
66863
+ * - You must first get the remote stream information through onUserPublishScreenAudio{@link #IRTCRoomEventHandler#onUserPublishScreenAudio} before calling this API to subscribe to streams accordingly.
66864
+ * - After calling this API, you will be informed of the calling result with onScreenAudioSubscribeStateChanged{@link #IRTCRoomEventHandler#onScreenAudioSubscribeStateChanged}.
66865
+ * - 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}.
66866
+ * - Any other exceptions will be included in onScreenAudioSubscribeStateChanged{@link #IRTCRoomEventHandler#onScreenAudioSubscribeStateChanged}, see SubscribeStateChangeReason{@link #SubscribeStateChangeReason} for the reasons.
66038
66867
  *
66039
66868
  */
66040
- RTCRoom_1.prototype.unsubscribeScreen = function (uid, type) {
66041
- return __awaiter(this, void 0, void 0, function () {
66042
- var a, i, $os;
66043
- var _this = this;
66044
- return __generator(this, function (_a) {
66045
- switch (_a.label) {
66046
- case 0:
66047
- a = function () {
66048
- return Number(_this._instance.unsubscribeScreen(uid, t_MediaStreamType.ts_to_android(type)));
66049
- };
66050
- i = function () { return __awaiter(_this, void 0, void 0, function () {
66051
- var enable, result, audioRes, videoRes;
66052
- return __generator(this, function (_a) {
66053
- switch (_a.label) {
66054
- case 0: return [4 /*yield*/, VertcHelper$1.isUnionLiveModeEnable()];
66055
- case 1:
66056
- enable = _a.sent();
66057
- if (enable) {
66058
- result = 0;
66059
- if (type !== exports.MediaStreamType.RTC_MEDIA_STREAM_TYPE_VIDEO) {
66060
- audioRes = Number(this._instance.subscribeScreenAudio(uid, false));
66061
- result = audioRes === 0 ? 0 : audioRes;
66062
- }
66063
- if (type !== exports.MediaStreamType.RTC_MEDIA_STREAM_TYPE_AUDIO) {
66064
- videoRes = Number(this._instance.subscribeScreenVideo(uid, false));
66065
- result = videoRes === 0 ? 0 : videoRes;
66066
- }
66067
- return [2 /*return*/, result];
66068
- }
66069
- else {
66070
- return [2 /*return*/, Number(this._instance.unsubscribeScreen(uid, t_MediaStreamType.ts_to_ios(type)))];
66071
- }
66072
- }
66073
- });
66074
- }); };
66075
- $os = env.getOS();
66076
- if (!($os === 'android')) return [3 /*break*/, 2];
66077
- return [4 /*yield*/, a()];
66078
- case 1: return [2 /*return*/, _a.sent()];
66079
- case 2:
66080
- if (!($os === 'ios')) return [3 /*break*/, 4];
66081
- return [4 /*yield*/, i()];
66082
- case 3: return [2 /*return*/, _a.sent()];
66083
- case 4: throw new Error('Not Support Platform ' + $os);
66084
- }
66085
- });
66086
- });
66869
+ RTCRoom_1.prototype.subscribeScreenAudio = function (userId, subscribe) {
66870
+ var _this = this;
66871
+ var a = function () { return Number(_this._instance.subscribeScreenAudio(userId, subscribe)); };
66872
+ var i = function () { return Number(_this._instance.subscribeScreenAudio(userId, subscribe)); };
66873
+ var $os = env.getOS();
66874
+ if ($os === 'android') {
66875
+ return a();
66876
+ }
66877
+ else if ($os === 'ios') {
66878
+ return i();
66879
+ }
66880
+ else {
66881
+ throw new Error('Not Support Platform ' + $os);
66882
+ }
66087
66883
  };
66088
66884
  /** {en}
66089
66885
  * @detail api
@@ -68613,7 +69409,7 @@ var VertcLive = function () {
68613
69409
  return _classThis;
68614
69410
  }();
68615
69411
 
68616
- var VertcHelper = function () {
69412
+ var VertcHelper$1 = function () {
68617
69413
  var _classDecorators = [NativeClass('com.volcengine.reactnative.vertc.VertcHelper')];
68618
69414
  var _classDescriptor;
68619
69415
  var _classExtraInitializers = [];
@@ -68625,6 +69421,8 @@ var VertcHelper = function () {
68625
69421
  var _invokeSetVideoEncoderConfig_decorators;
68626
69422
  var _invokeSetLocalVideoMirrorType_decorators;
68627
69423
  var _invokeStartPushSingleStreamToCDN_decorators;
69424
+ var _invokeStartScreenCapture_decorators;
69425
+ var _invokeSetAudioScene_decorators;
68628
69426
  var VertcHelper = _classThis = /** @class */ (function (_super) {
68629
69427
  __extends(VertcHelper_1, _super);
68630
69428
  function VertcHelper_1() {
@@ -68644,6 +69442,12 @@ var VertcHelper = function () {
68644
69442
  VertcHelper_1.prototype.invokeStartPushSingleStreamToCDN = function (video, taskId, param) {
68645
69443
  throw new Error('not implement');
68646
69444
  };
69445
+ VertcHelper_1.prototype.invokeStartScreenCapture = function (video, mediaType) {
69446
+ throw new Error('not implement');
69447
+ };
69448
+ VertcHelper_1.prototype.invokeSetAudioScene = function (video, scene) {
69449
+ throw new Error('not implement');
69450
+ };
68647
69451
  return VertcHelper_1;
68648
69452
  }(_classSuper));
68649
69453
  __setFunctionName(_classThis, "VertcHelper");
@@ -68654,10 +69458,69 @@ var VertcHelper = function () {
68654
69458
  _invokeSetVideoEncoderConfig_decorators = [NativeMethod()];
68655
69459
  _invokeSetLocalVideoMirrorType_decorators = [NativeMethod()];
68656
69460
  _invokeStartPushSingleStreamToCDN_decorators = [NativeMethod()];
69461
+ _invokeStartScreenCapture_decorators = [NativeMethod()];
69462
+ _invokeSetAudioScene_decorators = [NativeMethod()];
68657
69463
  __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);
68658
69464
  __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);
68659
69465
  __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);
68660
69466
  __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);
69467
+ __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);
69468
+ __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);
69469
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
69470
+ VertcHelper = _classThis = _classDescriptor.value;
69471
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
69472
+ __runInitializers(_classThis, _staticExtraInitializers);
69473
+ __runInitializers(_classThis, _classExtraInitializers);
69474
+ })();
69475
+ return VertcHelper = _classThis;
69476
+ }();
69477
+
69478
+ var VertcHelper = function () {
69479
+ var _classDecorators = [NativeClass('VertcHelper')];
69480
+ var _classDescriptor;
69481
+ var _classExtraInitializers = [];
69482
+ var _classThis;
69483
+ var _staticExtraInitializers = [];
69484
+ var _instanceExtraInitializers = [];
69485
+ var _static_getInstance_decorators;
69486
+ var _static_isUnionLiveModeEnable_decorators;
69487
+ var _init_decorators;
69488
+ var _invokeStartPushSingleStreamToCDN_decorators;
69489
+ var _invokeSetAudioScene_decorators;
69490
+ var VertcHelper = _classThis = /** @class */ (function () {
69491
+ function VertcHelper_1() {
69492
+ __runInitializers(this, _instanceExtraInitializers);
69493
+ }
69494
+ VertcHelper_1.prototype.init = function () {
69495
+ throw new Error('not implement');
69496
+ };
69497
+ VertcHelper_1.getInstance = function () {
69498
+ throw new Error('not implement');
69499
+ };
69500
+ VertcHelper_1.prototype.invokeStartPushSingleStreamToCDN = function (video, taskId, param) {
69501
+ throw new Error('not implement');
69502
+ };
69503
+ VertcHelper_1.isUnionLiveModeEnable = function () {
69504
+ throw new Error('not implement');
69505
+ };
69506
+ VertcHelper_1.prototype.invokeSetAudioScene = function (video, scene) {
69507
+ throw new Error('not implement');
69508
+ };
69509
+ return VertcHelper_1;
69510
+ }());
69511
+ __setFunctionName(_classThis, "VertcHelper");
69512
+ (function () {
69513
+ var _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
69514
+ _init_decorators = [NativeMethodSync('init')];
69515
+ _static_getInstance_decorators = [ReturnClass(function () { return VertcHelper; }), NativeStaticMethodSync('getInstance')];
69516
+ _invokeStartPushSingleStreamToCDN_decorators = [NativeMethod('invokeStartPushSingleStreamToCDN:taskId:singleStream:')];
69517
+ _static_isUnionLiveModeEnable_decorators = [NativeStaticMethodSync('isUnionLiveModeEnable')];
69518
+ _invokeSetAudioScene_decorators = [NativeMethod('invokeSetAudioScene:scene:')];
69519
+ __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);
69520
+ __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);
69521
+ __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);
69522
+ __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);
69523
+ __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);
68661
69524
  __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
68662
69525
  VertcHelper = _classThis = _classDescriptor.value;
68663
69526
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
@@ -68948,7 +69811,7 @@ extendsClassMethod(RTCVideo, 'setVideoEncoderConfig', function (origin) {
68948
69811
  return function impl(channelSolutions) {
68949
69812
  var _this = this;
68950
69813
  var a = function () {
68951
- var vertc = VertcHelper.getInstance();
69814
+ var vertc = VertcHelper$1.getInstance();
68952
69815
  return vertc.invokeSetVideoEncoderConfig(unpackObject(_this), channelSolutions.map(function (item) { return unpackObject(item); }));
68953
69816
  };
68954
69817
  var i = function () {
@@ -68970,16 +69833,12 @@ extendsClassMethod(RTCVideo, 'startPushSingleStreamToCDN', function () {
68970
69833
  return function impl(taskId, params) {
68971
69834
  var _this = this;
68972
69835
  var a = function () {
68973
- var vertc = VertcHelper.getInstance();
68974
- var streamParams = new PushSingleStreamParam$1();
68975
- streamParams.roomId = params.roomId;
68976
- streamParams.userId = params.userId;
68977
- streamParams.url = params.url;
68978
- streamParams.isScreen = params.isScreen || false;
69836
+ var vertc = VertcHelper$1.getInstance();
69837
+ var streamParams = new PushSingleStreamParam$1(params.roomId, params.userId, params.url, params.isScreen || false);
68979
69838
  return vertc.invokeStartPushSingleStreamToCDN(unpackObject(_this), taskId, streamParams);
68980
69839
  };
68981
69840
  var i = function () {
68982
- var vertc = VertcHelper$1.getInstance();
69841
+ var vertc = VertcHelper.getInstance();
68983
69842
  var streamParams = new ByteRTCPushSingleStreamParam();
68984
69843
  streamParams.roomId = params.roomId;
68985
69844
  streamParams.userId = params.userId;
@@ -69003,7 +69862,7 @@ extendsClassMethod(RTCVideo, 'setLocalVideoMirrorType', function (origin) {
69003
69862
  return function impl(mirrorType) {
69004
69863
  var _this = this;
69005
69864
  var a = function () {
69006
- var vertc = VertcHelper.getInstance();
69865
+ var vertc = VertcHelper$1.getInstance();
69007
69866
  return vertc.invokeSetLocalVideoMirrorType(unpackObject(_this), t_MirrorType.ts_to_android(mirrorType));
69008
69867
  };
69009
69868
  var i = function () {
@@ -69022,86 +69881,6 @@ extendsClassMethod(RTCVideo, 'setLocalVideoMirrorType', function (origin) {
69022
69881
  };
69023
69882
  });
69024
69883
 
69025
- var NativeSurfaceView = /** @class */ (function (_super) {
69026
- __extends(NativeSurfaceView, _super);
69027
- function NativeSurfaceView() {
69028
- return _super !== null && _super.apply(this, arguments) || this;
69029
- }
69030
- return NativeSurfaceView;
69031
- }(NativeView));
69032
- var ApplicationContext = /** @class */ (function () {
69033
- function ApplicationContext() {
69034
- }
69035
- return ApplicationContext;
69036
- }());
69037
- var ScreenIntent = /** @class */ (function () {
69038
- function ScreenIntent() {
69039
- }
69040
- return ScreenIntent;
69041
- }());
69042
- var NativeVariables = function () {
69043
- var _a;
69044
- var _staticExtraInitializers = [];
69045
- var _static_getApplicationContext_decorators;
69046
- var _static_getScreenIntent_decorators;
69047
- return _a = /** @class */ (function () {
69048
- function NativeVariables() {
69049
- }
69050
- NativeVariables.getApplicationContext = function () {
69051
- throw new Error('');
69052
- };
69053
- NativeVariables.getScreenIntent = function () {
69054
- throw new Error('');
69055
- };
69056
- return NativeVariables;
69057
- }()),
69058
- (function () {
69059
- var _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
69060
- _static_getApplicationContext_decorators = [NativeVar('ApplicationContext', ApplicationContext)];
69061
- _static_getScreenIntent_decorators = [NativeVar('screenIntent', ScreenIntent)];
69062
- __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);
69063
- __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);
69064
- if (_metadata) Object.defineProperty(_a, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
69065
- __runInitializers(_a, _staticExtraInitializers);
69066
- })(),
69067
- _a;
69068
- }();
69069
-
69070
- /** {en}
69071
- * @brief Request user to start screen capture
69072
- */
69073
- var requestScreenCapture = function () { return __awaiter(void 0, void 0, void 0, function () {
69074
- var intent;
69075
- return __generator(this, function (_a) {
69076
- switch (_a.label) {
69077
- case 0:
69078
- _a.trys.push([0, 3, , 4]);
69079
- if (!(reactNative.Platform.OS === 'android')) return [3 /*break*/, 2];
69080
- return [4 /*yield*/, NativeVariables.getScreenIntent()];
69081
- case 1:
69082
- intent = _a.sent();
69083
- return [2 /*return*/, intent];
69084
- case 2: return [3 /*break*/, 4];
69085
- case 3:
69086
- _a.sent();
69087
- return [3 /*break*/, 4];
69088
- case 4: return [2 /*return*/];
69089
- }
69090
- });
69091
- }); };
69092
- var isAndroid = function () { return reactNative.Platform.OS === 'android'; };
69093
- var isIOS = function () { return reactNative.Platform.OS === 'ios'; };
69094
- var platformBriefs = function (_a) {
69095
- var android = _a.android, ios = _a.ios;
69096
- if (isAndroid()) {
69097
- return android();
69098
- }
69099
- if (isIOS()) {
69100
- return ios();
69101
- }
69102
- throw new Error('Unsupported platform');
69103
- };
69104
-
69105
69884
  var proxyEngine = function (engine) {
69106
69885
  /** Render Local View */
69107
69886
  var originalSetLocalVideoCanvas = engine.setLocalVideoCanvas;
@@ -69202,19 +69981,28 @@ var proxyEngine = function (engine) {
69202
69981
  /** StartScreenCapture */
69203
69982
  var originalStartScreenCapture = engine.startScreenCapture;
69204
69983
  engine.startScreenCapture = function (type, bundleId) { return __awaiter(void 0, void 0, void 0, function () {
69205
- var intent;
69984
+ var vertc;
69206
69985
  return __generator(this, function (_a) {
69207
- switch (_a.label) {
69208
- case 0:
69209
- if (!bundleId) return [3 /*break*/, 1];
69210
- return [2 /*return*/, originalStartScreenCapture.call(engine, type, bundleId)];
69211
- case 1: return [4 /*yield*/, requestScreenCapture()];
69212
- case 2:
69213
- intent = _a.sent();
69214
- return [2 /*return*/, originalStartScreenCapture.call(engine, type, intent)];
69986
+ if (bundleId) {
69987
+ return [2 /*return*/, originalStartScreenCapture.call(engine, type, bundleId)];
69988
+ }
69989
+ else {
69990
+ vertc = VertcHelper$1.getInstance();
69991
+ return [2 /*return*/, vertc.invokeStartScreenCapture(unpackObject(engine), type)];
69215
69992
  }
69216
69993
  });
69217
69994
  }); };
69995
+ /** SetAudioScene */
69996
+ engine.setAudioScene = function (scene) {
69997
+ if (reactNative.Platform.OS === 'android') {
69998
+ var vertc = VertcHelper$1.getInstance();
69999
+ return vertc.invokeSetAudioScene(unpackObject(engine), scene);
70000
+ }
70001
+ else {
70002
+ var vertc = VertcHelper.getInstance();
70003
+ return vertc.invokeSetAudioScene(unpackObject(engine), scene);
70004
+ }
70005
+ };
69218
70006
  /** RequestRemoteVideoKeyFrame */
69219
70007
  var originalRequestRemoteVideoKeyFrame = engine
69220
70008
  .requestRemoteVideoKeyFrame;
@@ -69261,27 +70049,30 @@ var proxyRoom = function (room) {
69261
70049
  room.joinRoom = function (params) {
69262
70050
  var token = params.token, userId = params.userId, _a = params.extras, extras = _a === void 0 ? {} : _a, _b = params.roomConfigs, roomConfigs = _b === void 0 ? {
69263
70051
  profile: exports.ChannelProfile.CHANNEL_PROFILE_COMMUNICATION,
69264
- // isAutoPublish: true,
70052
+ isAutoPublishVideo: true,
70053
+ isAutoPublishAudio: true,
69265
70054
  isAutoSubscribeAudio: true,
69266
70055
  isAutoSubscribeVideo: true,
69267
70056
  } : _b;
69268
70057
  var _c = platformBriefs({
69269
70058
  android: function () {
70059
+ var _a, _b;
69270
70060
  var userInfo = new UserInfo(userId, JSON.stringify(extras || {}));
69271
- var roomInfo = new RTCRoomConfig(roomConfigs.profile, roomConfigs.isAutoPublish || true, roomConfigs.isAutoSubscribeAudio, roomConfigs.isAutoSubscribeVideo);
70061
+ 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);
69272
70062
  return [userInfo, roomInfo];
69273
70063
  },
69274
70064
  ios: function () {
70065
+ var _a, _b;
69275
70066
  var userInfo = new UserInfo();
69276
70067
  var roomInfo = new RTCRoomConfig();
69277
70068
  userInfo.userId = userId;
69278
70069
  userInfo.extraInfo = JSON.stringify(extras || {});
69279
- if (typeof roomConfigs.isAutoPublish === 'boolean') {
69280
- roomInfo.isAutoPublish = roomConfigs.isAutoPublish;
69281
- }
70070
+ roomInfo.isPublishVideo = (_a = roomConfigs.isAutoPublishVideo) !== null && _a !== void 0 ? _a : true;
70071
+ roomInfo.isPublishAudio = (_b = roomConfigs.isAutoPublishAudio) !== null && _b !== void 0 ? _b : true;
69282
70072
  roomInfo.isAutoSubscribeAudio = roomConfigs.isAutoSubscribeAudio;
69283
70073
  roomInfo.isAutoSubscribeVideo = roomConfigs.isAutoSubscribeVideo;
69284
70074
  roomInfo.profile = roomConfigs.profile;
70075
+ // roomInfo.remoteVideoConfig = remoteVideoConfig;
69285
70076
  return [userInfo, roomInfo];
69286
70077
  },
69287
70078
  }), userInfo = _c[0], roomInfo = _c[1];
@@ -69304,7 +70095,8 @@ var proxyRoom = function (room) {
69304
70095
  });
69305
70096
  return originalSetRemoteVideoConfig.call(room, userId, remoteStreamInfo);
69306
70097
  };
69307
- var originalStartForwardStreamToRooms = room.startForwardStreamToRooms;
70098
+ var originalStartForwardStreamToRooms = room
70099
+ .startForwardStreamToRooms;
69308
70100
  room.startForwardStreamToRooms = function (forwardStreamConfig) {
69309
70101
  var streamInfos = platformBriefs({
69310
70102
  android: function () {
@@ -69323,7 +70115,8 @@ var proxyRoom = function (room) {
69323
70115
  });
69324
70116
  return originalStartForwardStreamToRooms.call(room, streamInfos);
69325
70117
  };
69326
- var originalUpdateForwardStreamToRooms = room.updateForwardStreamToRooms;
70118
+ var originalUpdateForwardStreamToRooms = room
70119
+ .updateForwardStreamToRooms;
69327
70120
  room.updateForwardStreamToRooms = function (forwardStreamConfig) {
69328
70121
  var streamInfos = platformBriefs({
69329
70122
  android: function () {
@@ -69543,6 +70336,13 @@ exports.EncryptTypes = void 0;
69543
70336
  */
69544
70337
  EncryptTypes[EncryptTypes["AES256ECB"] = 4] = "AES256ECB";
69545
70338
  })(exports.EncryptTypes || (exports.EncryptTypes = {}));
70339
+ exports.AudioSceneType = void 0;
70340
+ (function (AudioSceneType) {
70341
+ AudioSceneType[AudioSceneType["AUDIO_SCENE_DEFAULT"] = 0] = "AUDIO_SCENE_DEFAULT";
70342
+ AudioSceneType[AudioSceneType["AUDIO_SCENE_CHATROOM"] = 1] = "AUDIO_SCENE_CHATROOM";
70343
+ AudioSceneType[AudioSceneType["AUDIO_SCENE_HIGH_QUALITY_CHATROOM"] = 2] = "AUDIO_SCENE_HIGH_QUALITY_CHATROOM";
70344
+ AudioSceneType[AudioSceneType["AUDIO_SCENE_LOW_LATENCY"] = 3] = "AUDIO_SCENE_LOW_LATENCY";
70345
+ })(exports.AudioSceneType || (exports.AudioSceneType = {}));
69546
70346
 
69547
70347
  exports.ApplicationContext = ApplicationContext;
69548
70348
  exports.AudioEffectPlayerConfig = AudioEffectPlayerConfig;
@@ -69786,6 +70586,8 @@ exports.t_PlayerState = t_PlayerState;
69786
70586
  exports.t_ProblemFeedbackOption = t_ProblemFeedbackOption;
69787
70587
  exports.t_PublicStreamErrorCode = t_PublicStreamErrorCode;
69788
70588
  exports.t_PublishFallbackOption = t_PublishFallbackOption;
70589
+ exports.t_PublishState = t_PublishState;
70590
+ exports.t_PublishStateChangeReason = t_PublishStateChangeReason;
69789
70591
  exports.t_RTCASRErrorCode = t_RTCASRErrorCode;
69790
70592
  exports.t_RTCNetworkType = t_RTCNetworkType;
69791
70593
  exports.t_RTCScreenVideoEncoderPreference = t_RTCScreenVideoEncoderPreference;
@@ -69815,6 +70617,7 @@ exports.t_StreamIndex = t_StreamIndex;
69815
70617
  exports.t_StreamRemoveReason = t_StreamRemoveReason;
69816
70618
  exports.t_SubscribeMediaType = t_SubscribeMediaType;
69817
70619
  exports.t_SubscribeState = t_SubscribeState;
70620
+ exports.t_SubscribeStateChangeReason = t_SubscribeStateChangeReason;
69818
70621
  exports.t_SubtitleErrorCode = t_SubtitleErrorCode;
69819
70622
  exports.t_SubtitleMode = t_SubtitleMode;
69820
70623
  exports.t_SubtitleState = t_SubtitleState;