trtc-electron-sdk 11.6.601-alpha.0 → 11.6.601

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
@@ -1,7 +1,7 @@
1
1
  /// <reference types="node" />
2
2
  import { EventEmitter } from 'events';
3
3
  import { TRTCConfig } from './Renderer/util';
4
- import { AudioMusicParam, Rect, TRTCAppScene, TRTCAudioEffectParam, TRTCAudioQuality, TRTCBeautyStyle, TRTCDeviceState, TRTCDeviceType, TRTCLogLevel, TRTCRenderParams, TRTCRoleType, TRTCSpeedTestResult, TRTCStatistics, TRTCSwitchRoomParam, TRTCVideoBufferType, TRTCVideoFillMode, TRTCAudioFrame, TRTCVideoPixelFormat, TRTCVideoRotation, TRTCVideoStreamType, TRTCVolumeInfo, TRTCWaterMarkSrcType, TRTCQualityInfo, PluginInfo, TRTCAudioRecordingParams, TRTCScreenCaptureSourceInfo, TRTCScreenCaptureProperty, TRTCSpeedTestParams, TRTCRecordType, TRTCDeviceInfo, TRTCCameraCaptureParams, TRTCImageBuffer, TRTCInitConfig, TRTCAudioParallelParams, TRTCVoiceReverbType } from './trtc_define';
4
+ import { AudioMusicParam, Rect, TRTCAppScene, TRTCAudioEffectParam, TRTCAudioQuality, TRTCBeautyStyle, TRTCDeviceState, TRTCDeviceType, TRTCLogLevel, TRTCRenderParams, TRTCRoleType, TRTCSpeedTestResult, TRTCStatistics, TRTCSwitchRoomParam, TRTCVideoBufferType, TRTCVideoFillMode, TRTCAudioFrame, TRTCVideoPixelFormat, TRTCVideoRotation, TRTCVideoStreamType, TRTCVolumeInfo, TRTCWaterMarkSrcType, TRTCQualityInfo, PluginInfo, TRTCAudioRecordingParams, TRTCScreenCaptureSourceInfo, TRTCScreenCaptureProperty, TRTCSpeedTestParams, TRTCRecordType, TRTCDeviceInfo, TRTCCameraCaptureParams, TRTCImageBuffer, TRTCInitConfig, TRTCAudioParallelParams, TRTCVoiceReverbType, TRTCMusicPlayObserver } from './trtc_define';
5
5
  export * from './trtc_define';
6
6
  export * from './trtc_code';
7
7
  export * from './vod_player';
@@ -600,34 +600,6 @@ declare class TRTCCloud extends EventEmitter {
600
600
  * @param {Number} height - 截图画面的高度
601
601
  */
602
602
  handleOnSnapshotComplete(userId: string, type: TRTCVideoStreamType, buffer: ArrayBuffer, width: number, height: number): void;
603
- /**
604
- * 废弃事件: 开始播放背景音乐
605
- *
606
- * @deprecated 从 TRTCSDK 8.0 后该接口已被废弃,不推荐使用
607
- *
608
- * @event TRTCCallback#onPlayBGMBegin
609
- * @param {Number} errCode - 错误码
610
- */
611
- handleOnPlayBGMBegin(errCode: number): void;
612
- /**
613
- * 废弃事件: 播放背景音乐的进度
614
- *
615
- * @deprecated 从 TRTCSDK 8.0 后该接口已被废弃,不推荐使用
616
- *
617
- * @event TRTCCallback#onPlayBGMProgress
618
- * @param {Number} progressMS - 已播放时间
619
- * @param {Number} durationMS - 总时间
620
- */
621
- handleOnPlayBGMProgress(progressMS: number, durationMS: number): void;
622
- /**
623
- * 废弃事件: 播放背景音乐结束
624
- *
625
- * @deprecated 从 TRTCSDK 8.0 后该接口已被废弃,不推荐使用
626
- *
627
- * @event TRTCCallback#onPlayBGMComplete
628
- * @param {Number} errCode - 错误码
629
- */
630
- handleOnPlayBGMComplete(errCode: number): void;
631
603
  /**
632
604
  * 本地录制任务开始的事件回调
633
605
  *
@@ -2090,24 +2062,26 @@ declare class TRTCCloud extends EventEmitter {
2090
2062
  */
2091
2063
  setSystemAudioLoopbackVolume(volume: number): void;
2092
2064
  /**
2093
- * 启动播放背景音乐
2065
+ * 设置背景音乐的事件回调监听
2066
+ *
2067
+ * 请在播放背景音乐之前使用该接口设置播放事件回调,以便感知背景音乐的播放进度。
2068
+ *
2069
+ * @param {TRTCMusicPlayObserver} observer - 背景音乐播放事件回调
2070
+ *
2071
+ */
2072
+ setMusicObserver(observer: TRTCMusicPlayObserver): void;
2073
+ /**
2074
+ * 开始播放背景音乐
2094
2075
  *
2095
2076
  * @param {AudioMusicParam} musicParam - 背景音乐参数
2096
- * @param {Object} callbackMap - 播放音乐事件回调(可选)
2097
- * @param {Function} callbackMap.onStart - 开始播放背景音乐回调
2098
- * @param {Function} callbackMap.onPlayProgress - 播放背景音乐的进度
2099
- * @param {Function} callbackMap.onComplete - 播放背景音乐结束
2077
+ * @param {TRTCMusicPlayObserver} [observer] - <span style="color:red;">该可选入参已经废弃。</span> 播放音乐事件回调监听,请使用 [setMusicObserver()]{@link TRTCCloud#setMusicObserver} 接口设置背景音乐事件回调。
2100
2078
  *
2101
2079
  * @example
2102
- * // 音乐播放
2103
2080
  * import TRTCCloud, { AudioMusicParam } from 'trtc-electron-sdk';
2104
2081
  * const rtcCloud = TRTCCloud.getTRTCShareInstance();
2105
2082
  *
2106
- * const params = new AudioMusicParam();
2107
- * params.id = 1;
2108
- * params.path = 'path';
2109
- * params.publish = true;
2110
- * rtcCloud.startPlayMusic(params, {
2083
+ * // 设置背景音乐播放事件监听
2084
+ * rtcCloud.setMusicObserver({
2111
2085
  * onStart: (id: number, errCode: number) => {
2112
2086
  * console.log(`onStart, id: ${id}, errorCode: ${errCode}`);
2113
2087
  * },
@@ -2117,13 +2091,16 @@ declare class TRTCCloud extends EventEmitter {
2117
2091
  * onComplete: (id: number, errCode: number) => {
2118
2092
  * console.log(`onComplete, id: ${id}, errCode: ${errCode}`);
2119
2093
  * }
2120
- * )
2094
+ * });
2095
+ *
2096
+ * // 开始播放背景音乐
2097
+ * const params = new AudioMusicParam();
2098
+ * params.id = 1;
2099
+ * params.path = 'path';
2100
+ * params.publish = true;
2101
+ * rtcCloud.startPlayMusic(params);
2121
2102
  */
2122
- startPlayMusic(musicParam: AudioMusicParam, callbackMap?: {
2123
- onStart?: (id: number, errCode: number) => void;
2124
- onPlayProgress?: (id: number, curPtsMS: number, durationMS: number) => void;
2125
- onComplete?: (id: number, errCode: number) => void;
2126
- }): void;
2103
+ startPlayMusic(musicParam: AudioMusicParam, callbackMap?: TRTCMusicPlayObserver): void;
2127
2104
  /**
2128
2105
  * 停止播放背景音乐
2129
2106
  *
package/liteav/trtc.js CHANGED
@@ -139,7 +139,6 @@ const getComponentNO = function () {
139
139
  }
140
140
  return componentNO;
141
141
  };
142
- let oriRtcCloud = null;
143
142
  /**
144
143
  * 腾讯云视频通话功能的主要接口类
145
144
  *
@@ -160,10 +159,6 @@ class TRTCCloud extends events_1.EventEmitter {
160
159
  this.logger = new logger_1.Logger(`TRTC_${this.id}`);
161
160
  const componentNO = getComponentNO();
162
161
  this.rtcCloud = new NodeTRTCEngine.NodeTRTCCloud(Object.assign({ jsVersion: pkg.version, componentNO }, config));
163
- this.logger.warn('NodeRTCCloud:', this.rtcCloud);
164
- // this.rtcCloud = Object.assign({}, oriRtcCloud, {
165
- // onlineLog: undefined
166
- // });
167
162
  this.videoRendererMap = new Map();
168
163
  this.pixelFormat = trtc_define_1.TRTCVideoPixelFormat.TRTCVideoPixelFormat_I420;
169
164
  this.pixelLength = 1.5;
@@ -338,15 +333,7 @@ class TRTCCloud extends events_1.EventEmitter {
338
333
  * @namespace TRTCCallback
339
334
  */
340
335
  initEventHandler() {
341
- // this.rtcCloud.onEvent('apierror', (funcName: string) => {
342
- // this.logger.error(`api ${funcName} failed. this is an error
343
- // thrown by c++ addon layer. it often means sth is
344
- // going wrong with this function call and it refused
345
- // to do what is asked. kindly check your parameter types
346
- // to see if it matches properly.`);
347
- // });
348
336
  this.rtcCloud.setTRTCCloudCallback((args) => {
349
- this.logger.log('trtc event:', args);
350
337
  const key = args[0];
351
338
  const data = args[1];
352
339
  switch (key) {
@@ -467,15 +454,6 @@ class TRTCCloud extends events_1.EventEmitter {
467
454
  case 'onSnapshotComplete':
468
455
  this.handleOnSnapshotComplete(data.userId, data.type, data.data, data.width, data.height);
469
456
  break;
470
- case 'onPlayBGMBegin':
471
- this.handleOnPlayBGMBegin(data.errCode);
472
- break;
473
- case 'onPlayBGMProgress':
474
- this.handleOnPlayBGMProgress(data.progressMS, data.durationMS);
475
- break;
476
- case 'onPlayBGMComplete':
477
- this.handleOnPlayBGMComplete(data.errCode);
478
- break;
479
457
  case 'onAudioDeviceCaptureVolumeChanged':
480
458
  this.handleOnAudioDeviceCaptureVolumeChanged(data.volume, data.muted);
481
459
  break;
@@ -526,7 +504,6 @@ class TRTCCloud extends events_1.EventEmitter {
526
504
  this.emit(event, ...args);
527
505
  });
528
506
  }
529
- ;
530
507
  /////////////////////////////////////////////////////////////////////////////////
531
508
  //
532
509
  // (一)错误事件和警告事件
@@ -581,7 +558,6 @@ class TRTCCloud extends events_1.EventEmitter {
581
558
  arch: process && process.arch || '',
582
559
  ua: window.navigator.userAgent
583
560
  };
584
- // oriRtcCloud.onlineLog(result, SDK_LOG_LEVEL, '[trtc-electron-sdk] trtcstats', formatLogParams(params));
585
561
  this.rtcCloud.callExperimentalAPI(JSON.stringify({
586
562
  api: 'reportOnlineLog',
587
563
  params: {
@@ -1281,40 +1257,6 @@ class TRTCCloud extends events_1.EventEmitter {
1281
1257
  // (十二)背景混音事件回调
1282
1258
  //
1283
1259
  /////////////////////////////////////////////////////////////////////////////////
1284
- /**
1285
- * 废弃事件: 开始播放背景音乐
1286
- *
1287
- * @deprecated 从 TRTCSDK 8.0 后该接口已被废弃,不推荐使用
1288
- *
1289
- * @event TRTCCallback#onPlayBGMBegin
1290
- * @param {Number} errCode - 错误码
1291
- */
1292
- handleOnPlayBGMBegin(errCode) {
1293
- this.fire('onPlayBGMBegin', errCode);
1294
- }
1295
- /**
1296
- * 废弃事件: 播放背景音乐的进度
1297
- *
1298
- * @deprecated 从 TRTCSDK 8.0 后该接口已被废弃,不推荐使用
1299
- *
1300
- * @event TRTCCallback#onPlayBGMProgress
1301
- * @param {Number} progressMS - 已播放时间
1302
- * @param {Number} durationMS - 总时间
1303
- */
1304
- handleOnPlayBGMProgress(progressMS, durationMS) {
1305
- this.fire('onPlayBGMProgress', progressMS, durationMS);
1306
- }
1307
- /**
1308
- * 废弃事件: 播放背景音乐结束
1309
- *
1310
- * @deprecated 从 TRTCSDK 8.0 后该接口已被废弃,不推荐使用
1311
- *
1312
- * @event TRTCCallback#onPlayBGMComplete
1313
- * @param {Number} errCode - 错误码
1314
- */
1315
- handleOnPlayBGMComplete(errCode) {
1316
- this.fire('onPlayBGMComplete', errCode);
1317
- }
1318
1260
  /**
1319
1261
  * 本地录制任务开始的事件回调
1320
1262
  *
@@ -1934,7 +1876,7 @@ class TRTCCloud extends events_1.EventEmitter {
1934
1876
  */
1935
1877
  setCameraCaptureParams(params) {
1936
1878
  if (params && (0, validate_util_1.isNumber)(params.mode) && (0, validate_util_1.isNumber)(params.width) && (0, validate_util_1.isNumber)(params.height)) {
1937
- this.rtcCloud.setCameraCaptureParam(params.mode, params.width, params.height);
1879
+ this.rtcCloud.setCameraCaptureParam(params);
1938
1880
  }
1939
1881
  else {
1940
1882
  this.logger.error('setCameraCaptureParams invalid params:', params);
@@ -2620,12 +2562,12 @@ class TRTCCloud extends events_1.EventEmitter {
2620
2562
  startAudioRecording(params) {
2621
2563
  var _a;
2622
2564
  if (params instanceof trtc_define_1.TRTCAudioRecordingParams && ((_a = params.filePath) === null || _a === void 0 ? void 0 : _a.length)) {
2623
- return this.rtcCloud.startAudioRecording(params.filePath, params.recordingContent, params.maxDurationPerFile);
2565
+ return this.rtcCloud.startAudioRecording(params);
2624
2566
  }
2625
2567
  else if (typeof params === 'string' && params.length) {
2626
2568
  const path = params;
2627
2569
  const recordParams = new trtc_define_1.TRTCAudioRecordingParams(path);
2628
- return this.rtcCloud.startAudioRecording(recordParams.filePath, recordParams.recordingContent, recordParams.maxDurationPerFile);
2570
+ return this.rtcCloud.startAudioRecording(recordParams);
2629
2571
  }
2630
2572
  else {
2631
2573
  this.logger.error('startAudioRecording, params is not valid');
@@ -3693,24 +3635,28 @@ class TRTCCloud extends events_1.EventEmitter {
3693
3635
  this.rtcCloud.setSystemAudioLoopbackVolume(volume);
3694
3636
  }
3695
3637
  /**
3696
- * 启动播放背景音乐
3638
+ * 设置背景音乐的事件回调监听
3639
+ *
3640
+ * 请在播放背景音乐之前使用该接口设置播放事件回调,以便感知背景音乐的播放进度。
3641
+ *
3642
+ * @param {TRTCMusicPlayObserver} observer - 背景音乐播放事件回调
3643
+ *
3644
+ */
3645
+ setMusicObserver(observer) {
3646
+ this.rtcCloud.setMusicObserver(observer.onStart, observer.onPlayProgress, observer.onComplete);
3647
+ }
3648
+ /**
3649
+ * 开始播放背景音乐
3697
3650
  *
3698
3651
  * @param {AudioMusicParam} musicParam - 背景音乐参数
3699
- * @param {Object} callbackMap - 播放音乐事件回调(可选)
3700
- * @param {Function} callbackMap.onStart - 开始播放背景音乐回调
3701
- * @param {Function} callbackMap.onPlayProgress - 播放背景音乐的进度
3702
- * @param {Function} callbackMap.onComplete - 播放背景音乐结束
3652
+ * @param {TRTCMusicPlayObserver} [observer] - <span style="color:red;">该可选入参已经废弃。</span> 播放音乐事件回调监听,请使用 [setMusicObserver()]{@link TRTCCloud#setMusicObserver} 接口设置背景音乐事件回调。
3703
3653
  *
3704
3654
  * @example
3705
- * // 音乐播放
3706
3655
  * import TRTCCloud, { AudioMusicParam } from 'trtc-electron-sdk';
3707
3656
  * const rtcCloud = TRTCCloud.getTRTCShareInstance();
3708
3657
  *
3709
- * const params = new AudioMusicParam();
3710
- * params.id = 1;
3711
- * params.path = 'path';
3712
- * params.publish = true;
3713
- * rtcCloud.startPlayMusic(params, {
3658
+ * // 设置背景音乐播放事件监听
3659
+ * rtcCloud.setMusicObserver({
3714
3660
  * onStart: (id: number, errCode: number) => {
3715
3661
  * console.log(`onStart, id: ${id}, errorCode: ${errCode}`);
3716
3662
  * },
@@ -3720,29 +3666,20 @@ class TRTCCloud extends events_1.EventEmitter {
3720
3666
  * onComplete: (id: number, errCode: number) => {
3721
3667
  * console.log(`onComplete, id: ${id}, errCode: ${errCode}`);
3722
3668
  * }
3723
- * )
3669
+ * });
3670
+ *
3671
+ * // 开始播放背景音乐
3672
+ * const params = new AudioMusicParam();
3673
+ * params.id = 1;
3674
+ * params.path = 'path';
3675
+ * params.publish = true;
3676
+ * rtcCloud.startPlayMusic(params);
3724
3677
  */
3725
3678
  startPlayMusic(musicParam, callbackMap) {
3726
- let onStartCb = (id, errCode) => {
3727
- this.fire('onPlayBGMBegin', errCode);
3728
- if (callbackMap && callbackMap.onStart) {
3729
- callbackMap.onStart(id, errCode);
3730
- }
3731
- };
3732
- let onPlayProgressCb = (id, curPtsMS, durationMS) => {
3733
- this.fire('onPlayBGMProgress', curPtsMS, durationMS);
3734
- if (callbackMap && callbackMap.onPlayProgress) {
3735
- callbackMap.onPlayProgress(id, curPtsMS, durationMS);
3736
- }
3737
- };
3738
- let onCompleteCb = (id, errCode) => {
3739
- this.fire('onPlayBGMComplete', errCode);
3740
- if (callbackMap && callbackMap.onComplete) {
3741
- callbackMap.onComplete(id, errCode);
3742
- }
3743
- };
3679
+ if ((callbackMap === null || callbackMap === void 0 ? void 0 : callbackMap.onStart) || (callbackMap === null || callbackMap === void 0 ? void 0 : callbackMap.onPlayProgress) || (callbackMap === null || callbackMap === void 0 ? void 0 : callbackMap.onComplete)) {
3680
+ this.rtcCloud.setMusicObserver((callbackMap === null || callbackMap === void 0 ? void 0 : callbackMap.onStart) || null, (callbackMap === null || callbackMap === void 0 ? void 0 : callbackMap.onPlayProgress) || null, (callbackMap === null || callbackMap === void 0 ? void 0 : callbackMap.onComplete) || null);
3681
+ }
3744
3682
  this.rtcCloud.startPlayMusic(musicParam);
3745
- this.rtcCloud.setMusicObserver(onStartCb, onPlayProgressCb, onCompleteCb);
3746
3683
  }
3747
3684
  /**
3748
3685
  * 停止播放背景音乐
@@ -4124,7 +4061,7 @@ class TRTCCloud extends events_1.EventEmitter {
4124
4061
  * @param {Boolean} enabled - 指定是否启用,默认为禁止状态
4125
4062
  */
4126
4063
  setLogCompressEnabled(enabled) {
4127
- // this.rtcCloud.setLogCompressEnabled(enabled); // To-do: 缺少该接口
4064
+ this.rtcCloud.setLogCompressEnabled(enabled);
4128
4065
  }
4129
4066
  /**
4130
4067
  * 设置日志保存路径
@@ -815,6 +815,33 @@ export declare class AudioMusicParam {
815
815
  endTimeMS: number;
816
816
  constructor(id?: number, path?: string, loopCount?: number, publish?: boolean, isShortFile?: boolean, startTimeMS?: number, endTimeMS?: number);
817
817
  }
818
+ /**
819
+ * 背景音乐播放事件监听器类型定义
820
+ */
821
+ export declare type TRTCMusicPlayObserver = {
822
+ /**
823
+ * 背景音乐开始播放事件
824
+ * @param {Number} id - 背景音乐 ID
825
+ * @param {Number} errCode - 错误码。0: 开始播放成功;-4001: 打开文件失败,如音频文件格式不支持,本地音频文件不存在,网络音频文件无法访问等。
826
+ * @returns
827
+ */
828
+ onStart: (id: number, errCode: number) => void | null;
829
+ /**
830
+ * 背景音乐的播放进度事件
831
+ * @param {Number} id - 背景音乐 ID
832
+ * @param {Number} curPtsMS - 背景音乐当前播放时间戳
833
+ * @param {Number} durationMS - 背景音乐时长
834
+ * @returns
835
+ */
836
+ onPlayProgress: (id: number, curPtsMS: number, durationMS: number) => void | null;
837
+ /**
838
+ * 背景音乐播放完毕事件
839
+ * @param {Number} id - 背景音乐 ID
840
+ * @param {Number} errCode - 错误码。0: 播放结束;-4002: 解码失败,如音频文件损坏,网络音频文件服务器无法访问等。
841
+ * @returns
842
+ */
843
+ onComplete: (id: number, errCode: number) => void | null;
844
+ };
818
845
  /**
819
846
  * 房间切换参数
820
847
  *
@@ -1524,6 +1524,36 @@ class AudioMusicParam {
1524
1524
  }
1525
1525
  }
1526
1526
  exports.AudioMusicParam = AudioMusicParam;
1527
+ /**
1528
+ * @namespace TRTCMusicEvent
1529
+ *
1530
+ * @description 背景音乐事件
1531
+ */
1532
+ /**
1533
+ * @callback TRTCMusicEvent~onStart
1534
+ * @param {number} [id] - 背景音乐 ID
1535
+ * @param {number} [errCode] - 错误码。0: 开始播放成功;-4001: 打开文件失败,如音频文件格式不支持,本地音频文件不存在,网络音频文件无法访问等。
1536
+ */
1537
+ /**
1538
+ * @callback TRTCMusicEvent~onPlayProgress
1539
+ * @param {number} [id] - 背景音乐 ID
1540
+ * @param {Number} [curPtsMS] - 背景音乐当前播放时间戳
1541
+ * @param {Number} [durationMS] - 背景音乐时长
1542
+ */
1543
+ /**
1544
+ * @callback TRTCMusicEvent~onComplete
1545
+ * @param {number} [id] - 背景音乐 ID
1546
+ * @param {number} [errCode] - 错误码。0: 播放结束;-4002: 解码失败,如音频文件损坏,网络音频文件服务器无法访问等。
1547
+ */
1548
+ /**
1549
+ * 背景音乐播放事件回调
1550
+ *
1551
+ * @typedef {Object} TRTCMusicPlayObserver
1552
+ * @property {TRTCMusicEvent~onStart|null} onStart - 背景音乐开始播放事件。
1553
+ * @property {TRTCMusicEvent~onPlayProgress|null} onPlayProgress - 背景音乐的播放进度事件。
1554
+ * @property {TRTCMusicEvent~onComplete|null} onComplete - 背景音乐播放完毕事件。
1555
+ */
1556
+ const TRTCMusicPlayObserver_HACK_JSDOC = null;
1527
1557
  /**
1528
1558
  * 房间切换参数
1529
1559
  *
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "trtc-electron-sdk",
3
- "version": "11.6.601-alpha.0",
3
+ "version": "11.6.601",
4
4
  "description": "trtc electron sdk",
5
5
  "main": "./liteav/trtc.js",
6
6
  "types": "./liteav/trtc.d.ts",