trtc-electron-sdk 12.2.701 → 12.2.702

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.
@@ -582,6 +582,13 @@ export declare enum TRTCAudioRecordingContent {
582
582
  TRTCAudioRecordingContentLocal = 1,
583
583
  TRTCAudioRecordingContentRemote = 2
584
584
  }
585
+ export declare enum TRTCPublishMode {
586
+ TRTCPublishModeUnknown = 0,
587
+ TRTCPublishBigStreamToCdn = 1,
588
+ TRTCPublishSubStreamToCdn = 2,
589
+ TRTCPublishMixStreamToCdn = 3,
590
+ TRTCPublishMixStreamToRoom = 4
591
+ }
585
592
  export declare enum TRTCVoiceReverbType {
586
593
  TRTCLiveVoiceReverbType_0 = 0,
587
594
  TRTCLiveVoiceReverbType_1 = 1,
@@ -707,6 +714,54 @@ export declare class TRTCPublishCDNParam {
707
714
  streamId: null | string;
708
715
  constructor(appId?: number, bizId?: number, url?: null | string, streamId?: null | string);
709
716
  }
717
+ export declare type TRTCPublishCdnUrl = {
718
+ rtmpUrl: string;
719
+ isInternalLine: boolean;
720
+ };
721
+ export declare type TRTCUser = {
722
+ userId: string;
723
+ intRoomId: number;
724
+ strRoomId: string;
725
+ };
726
+ export declare type TRTCPublishTarget = {
727
+ mode: TRTCPublishMode;
728
+ cdnUrlList: TRTCPublishCdnUrl[];
729
+ mixStreamIdentity: TRTCUser;
730
+ };
731
+ export declare type TRTCStreamEncoderParam = {
732
+ videoEncodedWidth: number;
733
+ videoEncodedHeight: number;
734
+ videoEncodedFPS: number;
735
+ videoEncodedGOP: number;
736
+ videoEncodedKbps: number;
737
+ audioEncodedSampleRate: number;
738
+ audioEncodedChannelNum: number;
739
+ audioEncodedKbps: number;
740
+ audioEncodedCodecType: number;
741
+ videoEncodedCodecType: number;
742
+ videoSeiParams: string;
743
+ };
744
+ export declare type TRTCVideoLayout = {
745
+ rect: Rect;
746
+ zOrder: number;
747
+ fillMode: TRTCVideoFillMode;
748
+ backgroundColor: number;
749
+ placeHolderImage: string;
750
+ fixedVideoUser: TRTCUser;
751
+ fixedVideoStreamType: TRTCVideoStreamType;
752
+ };
753
+ export declare type TRTCWatermark = {
754
+ watermarkUrl: string;
755
+ rect: Rect;
756
+ zOrder: number;
757
+ };
758
+ export declare type TRTCStreamMixingConfig = {
759
+ backgroundColor: number;
760
+ backgroundImage: string;
761
+ videoLayoutList: TRTCVideoLayout[];
762
+ audioMixUserList: TRTCUser[];
763
+ watermarkList: TRTCWatermark[];
764
+ };
710
765
  /**
711
766
  * 录音参数
712
767
  *
@@ -6,8 +6,8 @@
6
6
  *
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.TRTCLocalStatistics = exports.TRTCAudioEffectParam = exports.TRTCAudioRecordingParams = exports.TRTCPublishCDNParam = exports.TRTCTranscodingConfig = exports.TRTCPluginType = exports.TRTCVoiceChangerType = exports.TRTCVoiceReverbType = exports.TRTCAudioRecordingContent = exports.TRTCMixInputType = exports.TRTCTranscodingConfigMode = exports.TRTCMixUser = exports.Rect = exports.TRTCSpeedTestResult = exports.TRTCSpeedTestParams = exports.TRTCVolumeInfo = exports.TRTCQualityInfo = exports.TRTCNetworkQosParam = exports.TRTCRenderParams = exports.TRTCVideoEncParam = exports.TRTCParams = exports.TRTCWaterMarkSrcType = exports.TRTCCameraCaptureMode = exports.TRTCDeviceType = exports.TRTCDeviceState = exports.TRTCLogLevel = exports.TRTCAudioFrame = exports.TRTCVideoFrame = exports.TRTCDeviceInfo = exports.TRTCScreenCaptureProperty = exports.TRTCScreenCaptureSourceInfo = exports.TRTCImageBuffer = exports.TRTCAudioQuality = exports.TRTCScreenCaptureSourceType = exports.TRTCAudioFrameFormat = exports.TRTCVideoQosPreference = exports.TRTCQosControlMode = exports.TRTCRoleType = exports.TRTCAppScene = exports.TRTCRecordType = exports.TRTCVideoMirrorType = exports.TRTCVideoBufferType = exports.TRTCVideoPixelFormat = exports.TRTCBeautyStyle = exports.TRTCVideoRotation = exports.TRTCVideoFillMode = exports.TRTCQuality = exports.TRTCVideoStreamType = exports.TRTCVideoResolutionMode = exports.TRTCVideoResolution = void 0;
10
- exports.VideoBufferInfo = exports.TRTCSwitchRoomParam = exports.AudioMusicParam = exports.TRTCStatistics = exports.TRTCRemoteStatistics = void 0;
9
+ exports.TRTCAudioEffectParam = exports.TRTCAudioRecordingParams = exports.TRTCPublishCDNParam = exports.TRTCTranscodingConfig = exports.TRTCPluginType = exports.TRTCVoiceChangerType = exports.TRTCVoiceReverbType = exports.TRTCPublishMode = exports.TRTCAudioRecordingContent = exports.TRTCMixInputType = exports.TRTCTranscodingConfigMode = exports.TRTCMixUser = exports.Rect = exports.TRTCSpeedTestResult = exports.TRTCSpeedTestParams = exports.TRTCVolumeInfo = exports.TRTCQualityInfo = exports.TRTCNetworkQosParam = exports.TRTCRenderParams = exports.TRTCVideoEncParam = exports.TRTCParams = exports.TRTCWaterMarkSrcType = exports.TRTCCameraCaptureMode = exports.TRTCDeviceType = exports.TRTCDeviceState = exports.TRTCLogLevel = exports.TRTCAudioFrame = exports.TRTCVideoFrame = exports.TRTCDeviceInfo = exports.TRTCScreenCaptureProperty = exports.TRTCScreenCaptureSourceInfo = exports.TRTCImageBuffer = exports.TRTCAudioQuality = exports.TRTCScreenCaptureSourceType = exports.TRTCAudioFrameFormat = exports.TRTCVideoQosPreference = exports.TRTCQosControlMode = exports.TRTCRoleType = exports.TRTCAppScene = exports.TRTCRecordType = exports.TRTCVideoMirrorType = exports.TRTCVideoBufferType = exports.TRTCVideoPixelFormat = exports.TRTCBeautyStyle = exports.TRTCVideoRotation = exports.TRTCVideoFillMode = exports.TRTCQuality = exports.TRTCVideoStreamType = exports.TRTCVideoResolutionMode = exports.TRTCVideoResolution = void 0;
10
+ exports.VideoBufferInfo = exports.TRTCSwitchRoomParam = exports.AudioMusicParam = exports.TRTCStatistics = exports.TRTCRemoteStatistics = exports.TRTCLocalStatistics = void 0;
11
11
  const util_1 = require("./Renderer/util");
12
12
  /////////////////////////////////////////////////////////////////////////////////
13
13
  //
@@ -1206,6 +1206,33 @@ var TRTCAudioRecordingContent;
1206
1206
  TRTCAudioRecordingContent[TRTCAudioRecordingContent["TRTCAudioRecordingContentLocal"] = 1] = "TRTCAudioRecordingContentLocal";
1207
1207
  TRTCAudioRecordingContent[TRTCAudioRecordingContent["TRTCAudioRecordingContentRemote"] = 2] = "TRTCAudioRecordingContentRemote";
1208
1208
  })(TRTCAudioRecordingContent = exports.TRTCAudioRecordingContent || (exports.TRTCAudioRecordingContent = {}));
1209
+ /**
1210
+ * 媒体流发布模式
1211
+ *
1212
+ * 该枚举类型用于媒体流发布接口 [startPublishMediaStream]{@link TRTCCloud#startPublishMediaStream} TRTC 的媒体流发布服务能够将房间中的多路音视频流混合成一路发布至 CDN 或者回推到房间内,也可以将您当前的这路音视频发布到腾讯或者第三方 CDN 因此您需要指定对应媒体流的发布模式,我们提供了如下几种模式。
1213
+ *
1214
+ * @enum {Number}
1215
+ */
1216
+ const TRTCPublishMode_HACK_JSDOC = {
1217
+ /** 未定义。 */
1218
+ TRTCPublishModeUnknown: 0,
1219
+ /** 您可以通过设置该参数将您房间内的主路流([TRTCVideoStreamTypeBig]{@link TRTCVideoStreamTypeBig})发布到腾讯或者第三方直播 CDN 服务商(仅支持标准 RTMP 协议)。 */
1220
+ TRTCPublishBigStreamToCdn: 1,
1221
+ /** 您可以通过设置该参数将您房间内的辅路流([TRTCVideoStreamTypeSub]{@link TRTCVideoStreamTypeSub})发布到腾讯或者第三方直播 CDN 服务商(仅支持标准 RTMP 协议)。 */
1222
+ TRTCPublishSubStreamToCdn: 2,
1223
+ /** 您可以通过设置该参数,配合编码输出参数 ([TRTCStreamEncoderParam]{@link TRTCStreamEncoderParam}) 和混流转码参数 ([TRTCStreamMixingConfig]{@link TRTCStreamMixingConfig}),将您指定的多路音视频流进行转码并发布到腾讯或者第三方直播 CDN 服务商(仅支持标准 RTMP 协议)。 */
1224
+ TRTCPublishMixStreamToCdn: 3,
1225
+ /** 您可以通过设置该参数,配合媒体流编码输出参数 ([TRTCStreamEncoderParam]{@link TRTCStreamEncoderParam}) 和混流转码参数 ([TRTCStreamMixingConfig]{@link TRTCStreamMixingConfig}),将您指定的多路音视频流进行转码并发布到您指定的房间中。通过 {[TRTCPublishTarget]@link TRTCPublishTarget} 中的 TRTCUser 进行指定回推房间的机器人信息。 */
1226
+ TRTCPublishMixStreamToRoom: 4,
1227
+ };
1228
+ var TRTCPublishMode;
1229
+ (function (TRTCPublishMode) {
1230
+ TRTCPublishMode[TRTCPublishMode["TRTCPublishModeUnknown"] = 0] = "TRTCPublishModeUnknown";
1231
+ TRTCPublishMode[TRTCPublishMode["TRTCPublishBigStreamToCdn"] = 1] = "TRTCPublishBigStreamToCdn";
1232
+ TRTCPublishMode[TRTCPublishMode["TRTCPublishSubStreamToCdn"] = 2] = "TRTCPublishSubStreamToCdn";
1233
+ TRTCPublishMode[TRTCPublishMode["TRTCPublishMixStreamToCdn"] = 3] = "TRTCPublishMixStreamToCdn";
1234
+ TRTCPublishMode[TRTCPublishMode["TRTCPublishMixStreamToRoom"] = 4] = "TRTCPublishMixStreamToRoom";
1235
+ })(TRTCPublishMode = exports.TRTCPublishMode || (exports.TRTCPublishMode = {}));
1209
1236
  /**
1210
1237
  * 混响特效
1211
1238
  *
@@ -1430,6 +1457,204 @@ class TRTCPublishCDNParam {
1430
1457
  }
1431
1458
  }
1432
1459
  exports.TRTCPublishCDNParam = TRTCPublishCDNParam;
1460
+ /**
1461
+ * 向腾讯或者第三方 CDN 上发布音视频流时需设置的 url 配置
1462
+ *
1463
+ * 该配置用于媒体流发布接口 [startPublishMediaStream]{@link TRTCCloud#startPublishMediaStream} 中的目标推流配置 ([TRTCPublishTarget]{@link TRTCPublishTarget})
1464
+ *
1465
+ * @typedef {Object} TRTCPublishCdnUrl
1466
+ * @property {String} rtmpUrl
1467
+ * 【字段含义】指定该路音视频流在腾讯或者第三方直播服务商的推流地址(RTMP 格式)。<br/>
1468
+ * 【推荐取值】各家服务商的推流地址规则差异较大,请根据目标服务商的要求填写合法的推流 URL,TRTC 的后台服务器会按照您填写的 URL 向第三方服务商推送标准格式音视频流。<br/>
1469
+ * 【特别说明】推流 URL 必须为 RTMP 格式,必须符合您的目标直播服务商的规范要求,否则目标服务商会拒绝来自 TRTC 后台服务的推流请求。
1470
+ *@property {Boolean} isInternalLine
1471
+ * 【字段含义】指定该路音视频流是否发布至腾讯云。<br/>
1472
+ * 【推荐取值】默认值:true。<br/>
1473
+ * 【特别说明】若您的目标直播服务商为腾讯,请将此参数设置为 true,此时后台计费系统不会对此计算转推服务费。
1474
+ */
1475
+ const TRTCPublishCdnUrl_HACK_JSDOC = null;
1476
+ /**
1477
+ * 媒体流发布相关配置的用户信息
1478
+ *
1479
+ * 您可以通过设置该参数,配合媒体流目标发布参数 ({@link TRTCPublishTarget}) 和混流转码参数 ({@link TRTCStreamMixingConfig}),将您指定的多路音视频流进行转码并发布到您填写的目标发布地址中
1480
+ *
1481
+ * @typedef {Object} TRTCUser
1482
+ * @property {String} userId
1483
+ * 【字段含义】用户标识,当前用户的 userId,相当于用户名,使用 UTF-8 编码。<br/>
1484
+ * 【推荐取值】如果一个用户在您的账号系统中的 ID 为“mike”,则 userId 即可设置为“mike”。
1485
+ * @property {Number} intRoomId
1486
+ * 【字段含义】数字房间号,需要和您的进房参数 ({@link TRTCParams}) 中的房间号类型相匹配。<br/>
1487
+ * 【推荐取值】取值范围:1 - 4294967294。<br/>
1488
+ * 【特别说明】intRoomId 与 strRoomId 是互斥的,若您进房参数中选用 strRoomId,则 intRoomId 需要填写为0。若两者都填,SDK 将优先选用 intRoomId。
1489
+ * @property {String} strRoomId
1490
+ * 【字段含义】字符串房间号,需要和您的进房参数 ({@link TRTCParams}) 中的房间号类型相匹配。<br/>
1491
+ * 【特别说明】intRoomId 与 strRoomId 是互斥的,若您进房参数中选用 roomId,则 strRoomId 无需填写。若两者都填,SDK 将优先选用 intRoomId。<br/>
1492
+ * 【推荐取值】限制长度为 64 字节。以下为支持的字符集范围(共 89 个字符):<br/>
1493
+ * - 大小写英文字母(a-zA-Z);<br/>
1494
+ * - 数字(0-9);<br/>
1495
+ * - 空格、`!`、`#`、`$`、`%`、`&`、`(`、`)`、`+`、`-`、`:`、`;`、`<`、`=`、`.`、`>`、`?`、`@`、`[`、`]`、`^`、`_`、`{`、`}`、`|`、`~`、`,`。
1496
+ */
1497
+ const TRTCUser_HACK_JSDOC = null;
1498
+ /**
1499
+ * 目标推流配置
1500
+ *
1501
+ * 该配置用于媒体流发布接口 [startPublishMediaStream]{@link TRTCCloud#startPublishMediaStream}。
1502
+ *
1503
+ * @typedef {Object} TRTCPublishTarget
1504
+ * @property {TRTCPublishMode} mode
1505
+ * 【字段含义】媒体流发布模式。<br/>
1506
+ * 【推荐取值】请根据您的业务场景要求自行选择,TRTC 支持转推、转码和回推到 RTC 房间的模式。<br/>
1507
+ * 【特别说明】若您的业务场景需要多个发布模式,您可以通过多次调用媒体流发布接口 ([startPublishMediaStream]{@link TRTCCloud#startPublishMediaStream}) 并分别设置不同的 TRTCPublishTarget。<br/>
1508
+ * 【特别说明】同一个 mode 请对应一个媒体流发布接口 ([startPublishMediaStream]{@link TRTCCloud#startPublishMediaStream}),并在后续需要调整时,使用 [updatePublishMediaStream]{@link TRTCCloud#updatePublishMediaStream} 进行更新。<br/>
1509
+ * @property {Array<TRTCPublishCdnUrl>} cdnUrlList
1510
+ * 【字段含义】发布至腾讯或者第三方直播服务商的推流地址(RTMP 格式)。<br/>
1511
+ * 【特别说明】若您的 mode 选择为 TRTCPublishMixStreamToRoom,此时您不需要设置该参数。
1512
+ * @property {TRTCUser} mixStreamIdentity
1513
+ * 【字段含义】回推房间机器人信息。<br/>
1514
+ * 【特别说明】仅当您的 mode 选择为 TRTCPublishMixStreamToRoom 时,您需要设置该参数。<br/>
1515
+ * 【特别说明】设置后,该路转码音视频数据将回推到您指定的房间中。建议设置为特殊的 userId,以避免难以区分回推机器人和您通过 TRTC SDK 进房的主播。<br/>
1516
+ * 【特别说明】参与混流的用户不支持订阅该转码流。<br/>
1517
+ * 【特别说明】当您进房前设置的订阅模式([setDefaultStreamRecvMode]{@link TRTCCloud#setDefaultStreamRecvMode}) 均为手动时,您需要自行管理您想要拉取的音视频流(通常当您拉取回推房间的转码流时,您应该取消订阅参与转码的对应音视频单流)。<br/>
1518
+ * 【特别说明】当您进房前设置的订阅模式([setDefaultStreamRecvMode]{@link TRTCCloud#setDefaultStreamRecvMode}) 均为自动时,不参与转码的用户将自动收到后台下发的转码流并不再继续接收参与转码的音视频单流。除非您明确进行取消订阅([muteRemoteVideoStream]{@link TRTCCloud#muteRemoteVideoStream} 和 [muteRemoteAudio]{@link TRTCCloud#muteRemoteAudio}),否则转码流数据将持续下发。
1519
+ */
1520
+ const TRTCPublishTarget_HACK_JSDOC = null;
1521
+ /**
1522
+ * 媒体流编码输出参数
1523
+ *
1524
+ * 【字段含义】该配置用于媒体流发布接口([startPublishMediaStream]{@link TRTCCloud#startPublishMediaStream})。<br/>
1525
+ * 【特别说明】当您的发布目标({@link TRTCPublishTarget})中的 mode 配置为 TRTCPublish_MixStream_ToCdn 或者 TRTCPublish_MixStream_ToRoom 时,该参数为必填。<br/>
1526
+ * 【特别说明】当您使用转推服务(mode 为 TRTCPublishBigStreamToCdn 或者 TRTCPublishSubStreamToCdn)时,为了更好的转推稳定性以及更好的 CDN 播放兼容性,也建议您填写该配置的具体参数。
1527
+ *
1528
+ * @typedef {Object} TRTCStreamEncoderParam
1529
+ * @property {Number} videoEncodedWidth
1530
+ * 【字段含义】指定媒体发布流的目标分辨率(宽度)。<br/>
1531
+ * 【推荐取值】单位:像素值,推荐值:368,如果你只混合音频流,请将 width 和 height 均设置为 0,否则混流转码后的直播流中会有黑色背景。
1532
+ * @property {Number} videoEncodedHeight
1533
+ * 【字段含义】指定媒体发布流的目标分辨率(高度)。<br/>
1534
+ * 【推荐取值】单位:像素值,推荐值:640,如果你只混合音频流,请将 width 和 height 均设置为 0,否则混流转码后的直播流中会有黑色背景。
1535
+ * @property {Number} videoEncodedFPS
1536
+ * 【字段含义】指定媒体发布流的目标视频帧率(FPS)。<br/>
1537
+ * 【推荐取值】推荐值:20fps,取值范围是 (0,30]。
1538
+ * @property {Number} videoEncodedGOP
1539
+ * 【字段含义】指定媒体发布流的目标视频关键帧间隔(GOP)。<br/>
1540
+ * 【推荐取值】推荐值:3,单位为秒,取值范围是 [1,5]。
1541
+ * @property {Number} videoEncodedKbps
1542
+ * 【字段含义】指定媒体发布流的目标视频码率(kbps)。<br/>
1543
+ * 【推荐取值】如果填 0,TRTC 会根据 videoEncodedWidth 和 videoEncodedHeight 估算出一个合理的码率值,您也可以参考视频分辨率枚举定义中所推荐的码率值(见注释部分)。
1544
+ * @property {Number} audioEncodedSampleRate
1545
+ * 【字段含义】指定媒体发布流的目标音频采样率。<br/>
1546
+ * 【推荐取值】默认值:48000Hz。取值为 [48000, 44100, 32000, 24000, 16000, 8000],单位是 Hz。
1547
+ * @property {Number} audioEncodedChannelNum
1548
+ * 【字段含义】指定媒体发布流的目标音频声道数。<br/>
1549
+ * 【推荐取值】默认值:1,代表单声道。可设定的数值只有两个数字:1-单声道,2-双声道。
1550
+ * @property {Number} audioEncodedKbps
1551
+ * 【字段含义】指定媒体发布流的目标音频码率(kbps)。<br/>
1552
+ * 【推荐取值】默认值:50kbps,取值范围是 [32,192]。
1553
+ * @property {Number} audioEncodedCodecType
1554
+ * 【字段含义】指定媒体发布流的目标音频编码类型。<br/>
1555
+ * 【推荐取值】默认值:0,代表 LC-AAC。可设定的数值只有三个数字:0 - LC-AAC,1 - HE-AAC,2 - HE-AACv2。<br/>
1556
+ * 【特别说明】HE-AAC 和 HE-AACv2 支持的输出流音频采样率范围为[48000, 44100, 32000, 24000, 16000]。<br/>
1557
+ * 【特别说明】当音频编码设置为 HE-AACv2 时,只支持输出流音频声道数为双声道。
1558
+ * @property {Number} videoEncodedCodecType
1559
+ * 【字段含义】指定媒体发布流的目标视频编码类型。<br/>
1560
+ * 【推荐取值】默认值:0,代表 H264。可设定的数值只有两个数字:0 - H264,1 - H265。
1561
+ * @property {String} videoSeiParams
1562
+ * 【字段含义】混流 SEI 参数,默认不填写。<br/>
1563
+ * 【特别说明】参数以 json 字符串形式传入,示例如下:<br/>
1564
+ * ```json
1565
+ * {
1566
+ * "payLoadContent":"xxx",
1567
+ * "payloadType":5,
1568
+ * "payloadUuid":"1234567890abcdef1234567890abcdef",
1569
+ * "interval":1000,
1570
+ * "followIdr":false
1571
+ * }
1572
+ * ```
1573
+ * 当前支持的字段及含义:<br/>
1574
+ * - payloadContent: 必填。透传 sei 的 payload 内容,不能为空;
1575
+ * - payloadType: 必填。sei 消息的类型,取值范围: 5 或 [100, 254] 范围内的整数(244 除外,244 是内部自定义的时间戳 sei);
1576
+ * - payloadUuid: 当 payloadType 为 5 时必须填写,其他情况下该值会被忽略。该值必须是长度为 32 的十六进制数字;
1577
+ * - interval: 选填,默认 1000。sei 的发送间隔,单位毫秒;
1578
+ * - followIdr: 选填,默认 false。该值为 true 时,发送关键帧时会确保带 sei,否则不确保。
1579
+ */
1580
+ const TRTCStreamEncoderParam_HACK_JSDOC = null;
1581
+ /**
1582
+ * 转码视频布局
1583
+ *
1584
+ * 该配置用于媒体流发布接口([startPublishMediaStream]{@link TRTCCloud#startPublishMediaStream})中的转码配置({@link TRTCStreamMixingConfig})。
1585
+ * 用于指定转码流中每一路视频画面的位置、大小、图层以及流类型等信息。
1586
+ *
1587
+ * @typedef {Object} TRTCVideoLayout
1588
+ * @property {Rect} rect
1589
+ * 【字段含义】指定该路画面的坐标区域(单位:像素)。
1590
+ * @property {Number} zOrder
1591
+ * 【字段含义】指定该路画面的层级(取值范围:0 - 15,不可重复)。
1592
+ * @property {TRTCVideoFillMode} fillMode
1593
+ * 【字段含义】画面填充模式。<br/>
1594
+ * 【推荐取值】填充(画面可能会被拉伸裁剪)或适应(画面可能会有黑边),默认值:{@link TRTCVideoFillMode_Fill}。
1595
+ * @property {Number} backgroundColor
1596
+ * 【字段含义】指定混合画面的底色颜色。<br/>
1597
+ * 【推荐取值】默认值:0x000000 代表黑色。格式为十六进制数字,比如:“0x61B9F1” 代表 RGB 分别为 (97,158,241)。
1598
+ * @property {String} placeHolderImage
1599
+ * 【字段含义】占位图 URL,即当指定用户暂时仅上行音频时,腾讯云的后台服务器会将该 URL 地址指定的图片混合到最终的画面中。<br/>
1600
+ * 【推荐取值】默认值:空值,即不设置占位图。<br/>
1601
+ * 【特别说明】此时需要您指定用户信息 fixedVideoUser 中的 userId。<br/>
1602
+ * 【特别说明】
1603
+ * - URL 链接长度限制为 512 字节。图片大小限制不超过 2MB。
1604
+ * - 图片格式支持 png、jpg、jpeg、bmp 格式,推荐使用 png 格式的半透明图片作为占位图。
1605
+ * @property {TRTCUser} fixedVideoUser
1606
+ * 【字段含义】参与转码的用户信息。<br/>
1607
+ * 【特别说明】用户信息 ({@link TRTCUser}) 支持不填写(即 userId、intRoomId 和 strRoomId 均不填写)。此时当发起混流的房间中有主播上行音视频数据时,TRTC 后台服务器将自动将对应主播音视频填充到您指定的布局中。
1608
+ * @property {TRTCVideoStreamType} fixedVideoStreamType
1609
+ * 【字段含义】指定该路画面是主路画面({@link TRTCVideoStreamTypeBig})还是辅路画面({@link TRTCVideoStreamTypeSub})。
1610
+ *
1611
+ */
1612
+ const TRTCVideoLayout_HACK_JSDOC = null;
1613
+ /**
1614
+ * 水印布局
1615
+ *
1616
+ * 该配置用于媒体流发布接口 ([startPublishMediaStream]{@link TRTCCloud#startPublishMediaStream}) 中的转码配置 ({@link TRTCStreamMixingConfig})
1617
+ *
1618
+ * @typedef {Object} TRTCWatermark
1619
+ * @property {String} watermarkUrl
1620
+ * 【字段含义】水印 URL,腾讯云的后台服务器会将该 URL 地址指定的图片混合到最终的画面中。<br/>
1621
+ * 【特别说明】
1622
+ * - URL 链接长度限制为 512 字节。图片大小限制不超过 2MB。
1623
+ * - 图片格式支持 png、jpg、jpeg、bmp 格式,推荐使用 png 格式的半透明图片作为水印。
1624
+ * @property {Rect} rect
1625
+ * 【字段含义】指定该路水印画面的坐标区域(单位:像素)。
1626
+ * @property {Number} zOrder
1627
+ * 【字段含义】指定该路水印画面的层级(取值范围:0 - 15,不可重复)。
1628
+ */
1629
+ const TRTCWatermark_HACK_JSDOC = null;
1630
+ /**
1631
+ * 媒体流转码配置参数
1632
+ *
1633
+ * 该配置用于媒体流发布接口([startPublishMediaStream]{@link TRTCCloud#startPublishMediaStream})。
1634
+ * 用于指定转码时各路画面的排版位置信息和输入的音频信息。
1635
+ *
1636
+ * @typedef {Object} TRTCStreamMixingConfig
1637
+ * @property {Number} backgroundColor
1638
+ * 【字段含义】指定混合画面的底色颜色。<br/>
1639
+ * 【推荐取值】默认值:0x000000 代表黑色。格式为十六进制数字,比如:“0x61B9F1” 代表 RGB 分别为 (97、158、241)。
1640
+ * @property {String} backgroundImage
1641
+ * 【字段含义】指定混合画面的背景图 URL,腾讯云的后台服务器会将该 URL 地址指定的图片混合到最终的画面中。<br/>
1642
+ * 【推荐取值】默认值:空值,即不设置背景图片。<br/>
1643
+ * 【特别说明】
1644
+ * - URL 链接长度限制为 512 字节。图片大小限制不超过 2MB。
1645
+ * - 图片格式支持 png、jpg、jpeg、bmp 格式,推荐使用 png 格式的半透明图片作为背景图。
1646
+ * @property {Array<TRTCVideoLayout>} videoLayoutList
1647
+ * 【字段含义】指定混合画面中的每一路视频画面的位置、大小、图层以及流类型等信息。<br/>
1648
+ * 【推荐取值】该字段是一个 TRTCVideoLayout 类型的数组,数组中的每一个元素都用来代表每一路画面的信息。
1649
+ * @property {Array<TRTCUser>} audioMixUserList
1650
+ * 【字段含义】指定转码流中的每一路输入音频的信息。<br/>
1651
+ * 【推荐取值】该字段是一个 TRTCUser 类型的数组,数组中的每一个元素都用来代表每一路输入音频的信息。<br/>
1652
+ * 【特别说明】用户信息支持不填写(即 audioMixUserList 为空)。此时若设置了 TRTCStreamEncoderParam 中音频相关编码输出参数,TRTC 后台服务器将自动将所有主播的音频混合输出(当前仅支持最高 16 路音视频输入)。
1653
+ * @property {Array<TRTCWatermark>} watermarkList
1654
+ * 【字段含义】指定混合画面中的每一路水印画面的位置、大小、图层等信息。<br/>
1655
+ * 【推荐取值】该字段是一个 TRTCWatermark 类型的数组,数组中的每一个元素都用来代表每一路水印的信息。
1656
+ */
1657
+ const TRTCStreamMixingConfig_HACK_JSDOC = null;
1433
1658
  /**
1434
1659
  * 录音参数
1435
1660
  *
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "trtc-electron-sdk",
3
- "version": "12.2.701",
3
+ "version": "12.2.702",
4
4
  "description": "trtc electron sdk",
5
5
  "main": "./liteav/trtc.js",
6
6
  "types": "./liteav/trtc.d.ts",
@@ -3,14 +3,26 @@ const {copy, remove} = require('fs-sync');
3
3
  const fs = require('fs');
4
4
 
5
5
  const liteavPath = path.join(__dirname, '../liteav');
6
- const liteavFiles = fs.readdirSync(liteavPath, {withFileTypes: true});
7
- liteavFiles.forEach(file => {
8
- if (file.isFile() && file.name.indexOf('_en.') !== -1) {
9
- const filePath = path.join(liteavPath, file.name);
10
- console.log(`Remove en files not to be published: `, filePath);
11
- remove(filePath);
6
+
7
+ function deleteENFileNotToPublish(dir) {
8
+ const files = fs.readdirSync(dir, {withFileTypes: true});
9
+
10
+ for (const file of files) {
11
+ if (file.isFile()) {
12
+ if (file.name.indexOf('_en.') !== -1) {
13
+ const filePath = path.join(dir, file.name);
14
+ console.log(`Remove en files not to be published: `, filePath);
15
+ remove(filePath);
16
+ }
17
+ } else if (file.isDirectory()) {
18
+ const childFilePath = path.join(dir, file.name);
19
+ deleteENFileNotToPublish(childFilePath);
20
+ } else {
21
+ // do nothing
22
+ }
12
23
  }
13
- });
24
+ }
25
+ deleteENFileNotToPublish(liteavPath);
14
26
 
15
27
  remove('./npm');
16
28
  copy(path.resolve('./liteav'), path.resolve('./npm/liteav'));