trtc-electron-sdk 10.3.8-beta.35 → 10.3.8-beta.37

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/liteav/trtc.d.ts CHANGED
@@ -43,6 +43,8 @@ declare class TRTCCloud extends EventEmitter {
43
43
  private enableRenderFrame;
44
44
  private screenCaptureStreamType;
45
45
  private isScreenCapturing;
46
+ private isEnterRoom;
47
+ private isCaptureLocalVideoEnabled;
46
48
  constructor();
47
49
  /**
48
50
  * 创建 TRTCCloud 对象单例
@@ -68,6 +70,7 @@ declare class TRTCCloud extends EventEmitter {
68
70
  */
69
71
  getConfigObject(): import("./Render/util").Config;
70
72
  setExternalRenderEnabled(enabled: boolean): void;
73
+ setCaptureLocalVideoEnabled(enabled: boolean): void;
71
74
  /**
72
75
  * 清理资源
73
76
  */
package/liteav/trtc.js CHANGED
@@ -31,6 +31,7 @@ __exportStar(require("./trtc_define"), exports);
31
31
  __exportStar(require("./trtc_code"), exports);
32
32
  // 监听该事件,返回自定义视频渲染数据 ( bgra 格式)
33
33
  const CUSTOM_VIDEO_DATA = 'onVideoData';
34
+ const LOCAL_VIDEO_DATA = 'onLocalVideoData';
34
35
  const CAMERA_DEVICE_TEST_VIEW = 'camera_device_test_view';
35
36
  const CAMERA_DEVICE_TEST_ID = 'camera_device_test';
36
37
  const DEFAULT_VIDEO_WIDTH = 8;
@@ -198,6 +199,8 @@ class TRTCCloud extends events_1.EventEmitter {
198
199
  this.enableRenderFrame = true;
199
200
  this.screenCaptureStreamType = trtc_define_1.TRTCVideoStreamType.TRTCVideoStreamTypeSub;
200
201
  this.isScreenCapturing = false;
202
+ this.isEnterRoom = false;
203
+ this.isCaptureLocalVideoEnabled = false;
201
204
  this.initEventHandler();
202
205
  console.log('trtc:constructor render:' + this.renderMode + '|sdk version:' + pkg.version +
203
206
  '|native sdk version:' + this.rtcCloud.getSDKVersion());
@@ -247,10 +250,14 @@ class TRTCCloud extends events_1.EventEmitter {
247
250
  setExternalRenderEnabled(enabled) {
248
251
  this.isExternalRenderEnabled = enabled;
249
252
  }
253
+ setCaptureLocalVideoEnabled(enabled) {
254
+ this.isCaptureLocalVideoEnabled = enabled;
255
+ }
250
256
  /**
251
257
  * 清理资源
252
258
  */
253
259
  destroy() {
260
+ this.isEnterRoom = false;
254
261
  this.firstVideoFrameList = [];
255
262
  this.playAudioEffectIdList = [];
256
263
  this.rtcCloud.destroy();
@@ -489,6 +496,9 @@ class TRTCCloud extends events_1.EventEmitter {
489
496
  */
490
497
  handleOnEnterRoom(result) {
491
498
  this.fire('onEnterRoom', result);
499
+ if (result > 0) {
500
+ this.isEnterRoom = true;
501
+ }
492
502
  const params = {
493
503
  js_version: pkg.version,
494
504
  electron_version: process && process.versions && process.versions.electron || '',
@@ -511,6 +521,7 @@ class TRTCCloud extends events_1.EventEmitter {
511
521
  */
512
522
  handleOnExitRoom(reason) {
513
523
  this.firstVideoFrameList = [];
524
+ this.isEnterRoom = false;
514
525
  this.fire('onExitRoom', reason);
515
526
  }
516
527
  /**
@@ -3929,6 +3940,13 @@ class TRTCCloud extends events_1.EventEmitter {
3929
3940
  }
3930
3941
  });
3931
3942
  }
3943
+ if (uid.length == 0 && this.isEnterRoom && this.isCaptureLocalVideoEnabled) {
3944
+ this.fire(LOCAL_VIDEO_DATA, {
3945
+ uid: '', type, rotation, timestamp,
3946
+ pixelformate: this.pixelformate,
3947
+ data: { width, height, data }
3948
+ });
3949
+ }
3932
3950
  if (uid.length == 0 || uid === CAMERA_DEVICE_TEST_ID) {
3933
3951
  // 本地预览或者摄像头测试
3934
3952
  if (this.isExternalRenderEnabled) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "trtc-electron-sdk",
3
- "version": "10.3.8-beta.35",
3
+ "version": "10.3.8-beta.37",
4
4
  "description": "trtc electron sdk",
5
5
  "main": "./liteav/trtc.js",
6
6
  "types": "./liteav/trtc.d.ts",