@rongcloud/plugin-rtc 5.4.7-alpha.1 → 5.4.7-alpha.4
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/dist/core/webrtc/sdp/ASdpBuilder.d.ts +5 -0
- package/dist/helper.d.ts +4 -0
- package/dist/index.d.ts +3 -3
- package/dist/index.esm.js +50 -27
- package/dist/index.js +50 -27
- package/dist/index.umd.js +50 -27
- package/package.json +3 -3
|
@@ -46,6 +46,11 @@ export default abstract class ASdpBuilder {
|
|
|
46
46
|
* @returns SDP 标头和音频和视频流的字符串。
|
|
47
47
|
*/
|
|
48
48
|
abstract stringify(): string;
|
|
49
|
+
/**
|
|
50
|
+
* 它将 SDP 标头中的 `a=group` 行替换为 `b=AS` 和 `b=TIAS` 行
|
|
51
|
+
* @param {number} maxBitrate - 流的最大比特率。
|
|
52
|
+
*/
|
|
53
|
+
setHeaderBitrate(maxBitrate: number): void;
|
|
49
54
|
/**
|
|
50
55
|
* 它获取音频流并将它们映射到一个新数组,其中每个项目都是调用 setAudioItemBitrate 函数的结果
|
|
51
56
|
* @param {IRCTrackBitrate} bitrate - 以 kbps 为单位的比特率。
|
package/dist/helper.d.ts
CHANGED
|
@@ -42,6 +42,10 @@ export declare const isValidLocation: boolean;
|
|
|
42
42
|
* @param track
|
|
43
43
|
*/
|
|
44
44
|
export declare const getVideoTrackInfo: (track: MediaStreamTrack) => {
|
|
45
|
+
/**
|
|
46
|
+
* applyConstraints 方法应用的宽高约束不一定可以立马生效
|
|
47
|
+
* 取值优先 constraints
|
|
48
|
+
*/
|
|
45
49
|
width: number;
|
|
46
50
|
height: number;
|
|
47
51
|
frameRate: number;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* RCRTC - v5.4.7-alpha.
|
|
3
|
-
* CommitId -
|
|
4
|
-
* Tue
|
|
2
|
+
* RCRTC - v5.4.7-alpha.4
|
|
3
|
+
* CommitId - 1297531a6457c0e72d9fa276eee9a49a7b3c596e
|
|
4
|
+
* Tue Sep 13 2022 20:41:55 GMT+0800 (China Standard Time)
|
|
5
5
|
* ©2020 RongCloud, Inc. All rights reserved.
|
|
6
6
|
*/
|
|
7
7
|
import { EventEmitter, RTCMode, IRuntime, RTCPluginContext, IJoinRTCRoomData, IReceivedMessage, ErrorCode, RTCJoinType, IRTCUserData, KVString, IServerRTCRoomEntry, LogLevel, IRTCJoinedInfo, IPluginGenerator } from '@rongcloud/engine';
|
package/dist/index.esm.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* RCRTC - v5.4.7-alpha.
|
|
3
|
-
* CommitId -
|
|
4
|
-
* Tue
|
|
2
|
+
* RCRTC - v5.4.7-alpha.4
|
|
3
|
+
* CommitId - 1297531a6457c0e72d9fa276eee9a49a7b3c596e
|
|
4
|
+
* Tue Sep 13 2022 20:41:55 GMT+0800 (China Standard Time)
|
|
5
5
|
* ©2020 RongCloud, Inc. All rights reserved.
|
|
6
6
|
*/
|
|
7
7
|
import { Logger, EventEmitter, logger as logger$1, LogSource, isNumber, validate, ErrorCode, HttpMethod, ConnectionStatus, RTCMode, notEmptyString, isObject as isObject$1, isString, RTCJoinType, RTCApiType, isArray, assert, ConversationType, isHttpUrl, isBoolean, isUndefined, RTCIdentityChangeType, VersionManage } from '@rongcloud/engine';
|
|
@@ -6227,22 +6227,22 @@ var RCMediaType;
|
|
|
6227
6227
|
const RongRTCVideoBitrate = {
|
|
6228
6228
|
[RCResolution.W176_H132]: { width: 176, height: 132, maxBitrate: 150, minBitrate: 80 },
|
|
6229
6229
|
[RCResolution.W176_H144]: { width: 176, height: 144, maxBitrate: 150, minBitrate: 80 },
|
|
6230
|
-
[RCResolution.W180_H180]: { width:
|
|
6231
|
-
[RCResolution.W240_H180]: { width: 240, height:
|
|
6230
|
+
[RCResolution.W180_H180]: { width: 180, height: 180, maxBitrate: 200, minBitrate: 100 },
|
|
6231
|
+
[RCResolution.W240_H180]: { width: 240, height: 180, maxBitrate: 240, minBitrate: 120 },
|
|
6232
6232
|
[RCResolution.W240_H240]: { width: 240, height: 240, maxBitrate: 280, minBitrate: 120 },
|
|
6233
6233
|
[RCResolution.W256_H144]: { width: 256, height: 144, maxBitrate: 240, minBitrate: 120 },
|
|
6234
|
-
[RCResolution.W320_H180]: { width: 320, height:
|
|
6234
|
+
[RCResolution.W320_H180]: { width: 320, height: 180, maxBitrate: 280, minBitrate: 120 },
|
|
6235
6235
|
[RCResolution.W320_H240]: { width: 320, height: 240, maxBitrate: 400, minBitrate: 120 },
|
|
6236
|
-
[RCResolution.W360_H360]: { width:
|
|
6237
|
-
[RCResolution.W480_H360]: { width: 480, height:
|
|
6236
|
+
[RCResolution.W360_H360]: { width: 360, height: 360, maxBitrate: 520, minBitrate: 140 },
|
|
6237
|
+
[RCResolution.W480_H360]: { width: 480, height: 360, maxBitrate: 650, minBitrate: 150 },
|
|
6238
6238
|
[RCResolution.W480_H480]: { width: 480, height: 480, maxBitrate: 800, minBitrate: 180 },
|
|
6239
|
-
[RCResolution.W640_H360]: { width: 640, height:
|
|
6239
|
+
[RCResolution.W640_H360]: { width: 640, height: 360, maxBitrate: 800, minBitrate: 180 },
|
|
6240
6240
|
[RCResolution.W640_H480]: { width: 640, height: 480, maxBitrate: 900, minBitrate: 200 },
|
|
6241
6241
|
[RCResolution.W720_H480]: { width: 720, height: 480, maxBitrate: 1000, minBitrate: 200 },
|
|
6242
6242
|
[RCResolution.W848_H480]: { width: 848, height: 480, maxBitrate: 1860, minBitrate: 200 },
|
|
6243
6243
|
[RCResolution.W960_H720]: { width: 960, height: 720, maxBitrate: 2000, minBitrate: 250 },
|
|
6244
6244
|
[RCResolution.W1280_H720]: { width: 1280, height: 720, maxBitrate: 2200, minBitrate: 250 },
|
|
6245
|
-
[RCResolution.W1920_H1080]: { width: 1920, height:
|
|
6245
|
+
[RCResolution.W1920_H1080]: { width: 1920, height: 1080, maxBitrate: 4000, minBitrate: 400 }
|
|
6246
6246
|
};
|
|
6247
6247
|
/**
|
|
6248
6248
|
* 分辨率适配
|
|
@@ -7349,8 +7349,12 @@ const getVideoTrackInfo = (track) => {
|
|
|
7349
7349
|
const settings = track.getSettings();
|
|
7350
7350
|
const constraints = track.getConstraints();
|
|
7351
7351
|
return {
|
|
7352
|
-
|
|
7353
|
-
|
|
7352
|
+
/**
|
|
7353
|
+
* applyConstraints 方法应用的宽高约束不一定可以立马生效
|
|
7354
|
+
* 取值优先 constraints
|
|
7355
|
+
*/
|
|
7356
|
+
width: getValue(constraints.width) || settings.width || 0,
|
|
7357
|
+
height: getValue(constraints.height) || settings.height || 0,
|
|
7354
7358
|
frameRate: settings.frameRate || getValue(constraints.frameRate)
|
|
7355
7359
|
};
|
|
7356
7360
|
};
|
|
@@ -7935,7 +7939,7 @@ const getCommonHeader = () => ({
|
|
|
7935
7939
|
'Content-Type': 'application/json;charset=UTF-8',
|
|
7936
7940
|
'Cache-Control': 'no-cache',
|
|
7937
7941
|
ClientType: `web|${browserInfo.browser}|${browserInfo.version}`,
|
|
7938
|
-
ClientVersion: "5.4.7-alpha.
|
|
7942
|
+
ClientVersion: "5.4.7-alpha.4",
|
|
7939
7943
|
'Client-Session-Id': getUUID(),
|
|
7940
7944
|
'Request-Id': Date.now().toString()
|
|
7941
7945
|
});
|
|
@@ -8025,11 +8029,12 @@ class RCMediaService {
|
|
|
8025
8029
|
path,
|
|
8026
8030
|
headers,
|
|
8027
8031
|
body,
|
|
8028
|
-
reqId
|
|
8032
|
+
reqId,
|
|
8033
|
+
timeout: this._timeout
|
|
8029
8034
|
}, {
|
|
8030
8035
|
logSource: LogSource.RTC
|
|
8031
8036
|
});
|
|
8032
|
-
logger.info(`request -> Request-Id: ${reqId}, url: ${url}, headers: ${JSON.stringify(mergeHeaders)}, body: ${jsonBody}`);
|
|
8037
|
+
logger.info(`request -> Request-Id: ${reqId}, url: ${url}, headers: ${JSON.stringify(mergeHeaders)}, body: ${jsonBody}, timeout: ${this._timeout}`);
|
|
8033
8038
|
const { status, data } = yield this._runtime.httpReq({
|
|
8034
8039
|
url,
|
|
8035
8040
|
body: jsonBody,
|
|
@@ -9263,6 +9268,13 @@ class ASdpBuilder {
|
|
|
9263
9268
|
}
|
|
9264
9269
|
return stream;
|
|
9265
9270
|
}
|
|
9271
|
+
/**
|
|
9272
|
+
* 它将 SDP 标头中的 `a=group` 行替换为 `b=AS` 和 `b=TIAS` 行
|
|
9273
|
+
* @param {number} maxBitrate - 流的最大比特率。
|
|
9274
|
+
*/
|
|
9275
|
+
setHeaderBitrate(maxBitrate) {
|
|
9276
|
+
this.SDPHeader = this.SDPHeader.replace(/(\r\ns=[^\r\n]+)/ig, `$1\r\nc=IN IP4 0.0.0.0\r\nb=AS:${maxBitrate * ASdpBuilder.KBitrate}\r\nb=TIAS:${maxBitrate * ASdpBuilder.KBitrate * 850}`);
|
|
9277
|
+
}
|
|
9266
9278
|
/**
|
|
9267
9279
|
* 它获取音频流并将它们映射到一个新数组,其中每个项目都是调用 setAudioItemBitrate 函数的结果
|
|
9268
9280
|
* @param {IRCTrackBitrate} bitrate - 以 kbps 为单位的比特率。
|
|
@@ -9353,7 +9365,7 @@ class ASdpBuilder {
|
|
|
9353
9365
|
*/
|
|
9354
9366
|
addAudioBlineAS(sdpAudioBlock, bitrate) {
|
|
9355
9367
|
if (!/\bb=AS:\d+\b/ig.test(sdpAudioBlock)) {
|
|
9356
|
-
return sdpAudioBlock.replace(
|
|
9368
|
+
return sdpAudioBlock.replace(/(\bc=IN[^\r\n]+)/ig, `$1\r\nb=AS:${bitrate.max * ASdpBuilder.KBitrate}\r\nb=TIAS:${bitrate.max * ASdpBuilder.KBitrate * 850}`);
|
|
9357
9369
|
}
|
|
9358
9370
|
return sdpAudioBlock;
|
|
9359
9371
|
}
|
|
@@ -9451,7 +9463,7 @@ class ASdpBuilder {
|
|
|
9451
9463
|
addVideoBlineAS(sdpVideoBlock, bitrate) {
|
|
9452
9464
|
// b=AS: 定义本端带宽信息
|
|
9453
9465
|
if (!/\bb=AS:\d+\b/ig.test(sdpVideoBlock)) {
|
|
9454
|
-
return sdpVideoBlock.replace(
|
|
9466
|
+
return sdpVideoBlock.replace(/(\bc=IN[^\r\n]+)/ig, `$1\r\nb=AS:${bitrate.max * ASdpBuilder.KBitrate}\r\nb=TIAS:${bitrate.max * ASdpBuilder.KBitrate * 850}`);
|
|
9455
9467
|
}
|
|
9456
9468
|
return sdpVideoBlock;
|
|
9457
9469
|
}
|
|
@@ -10823,7 +10835,7 @@ class PolarisReporter {
|
|
|
10823
10835
|
* 加入房间
|
|
10824
10836
|
*/
|
|
10825
10837
|
sendR1() {
|
|
10826
|
-
const rtcVersion = "5.4.7-alpha.
|
|
10838
|
+
const rtcVersion = "5.4.7-alpha.4";
|
|
10827
10839
|
const imVersion = this._context.getCoreVersion();
|
|
10828
10840
|
const platform = 'web';
|
|
10829
10841
|
const pcName = navigator.platform;
|
|
@@ -12430,6 +12442,16 @@ class PublishCommand extends BaseCommand {
|
|
|
12430
12442
|
const { track: localTrack } = track instanceof RCLocalTrack ? { track } : track;
|
|
12431
12443
|
localTracks.push(localTrack);
|
|
12432
12444
|
});
|
|
12445
|
+
/**
|
|
12446
|
+
* 将发布的视频流按从小到大进行排序
|
|
12447
|
+
*/
|
|
12448
|
+
tracks.sort((item, nextItem) => {
|
|
12449
|
+
const { track: localTrack } = item instanceof RCLocalTrack ? { track: item } : item;
|
|
12450
|
+
const { max: maxBitrate } = localTrack.getBitrate();
|
|
12451
|
+
const { track: nextLocalTrack } = nextItem instanceof RCLocalTrack ? { track: nextItem } : nextItem;
|
|
12452
|
+
const { max: maxNextBitrate } = nextLocalTrack.getBitrate();
|
|
12453
|
+
return maxBitrate - maxNextBitrate;
|
|
12454
|
+
});
|
|
12433
12455
|
/**
|
|
12434
12456
|
* 一个 peerConnection 上行不超过 10 个
|
|
12435
12457
|
*/
|
|
@@ -12443,10 +12465,10 @@ class PublishCommand extends BaseCommand {
|
|
|
12443
12465
|
* 资源发布应先与 mediaserver 交换资源,建 PeerConnection 通道,后通知房间
|
|
12444
12466
|
* 资源取消发布则应先通知取消发布,后与 mediaServer 协商取消资源发布
|
|
12445
12467
|
*/
|
|
12446
|
-
tracks.
|
|
12468
|
+
for (let index = 0; index < tracks.length; index++) {
|
|
12469
|
+
const track = tracks[index];
|
|
12447
12470
|
// 向 RTCPeerConnection 添加轨道数据
|
|
12448
12471
|
const { track: localTrack, pubTiny } = track instanceof RCLocalTrack ? { pubTiny: false, track } : track;
|
|
12449
|
-
pc.addLocalTrack(localTrack);
|
|
12450
12472
|
// 拷贝生成小流并添加至 RTCPeerConnection
|
|
12451
12473
|
if (localTrack.isVideoTrack()) {
|
|
12452
12474
|
if (pubTiny) {
|
|
@@ -12457,17 +12479,18 @@ class PublishCommand extends BaseCommand {
|
|
|
12457
12479
|
const resolution = pubTiny.resolution || RCResolution.W176_H144;
|
|
12458
12480
|
const { width, height } = transResolution(resolution);
|
|
12459
12481
|
const frameRate = transFrameRate(rcFrameRate);
|
|
12460
|
-
cloneTrack.applyConstraints({ width, height, frameRate });
|
|
12482
|
+
yield cloneTrack.applyConstraints({ width, height, frameRate });
|
|
12461
12483
|
}
|
|
12462
12484
|
catch (error) {
|
|
12463
12485
|
cloneTrack === null || cloneTrack === void 0 ? void 0 : cloneTrack.stop();
|
|
12464
12486
|
logger.warn(`pubTiny failed -> id: ${localTrack.getTrackId()}, msg: ${error.message}`);
|
|
12465
|
-
|
|
12487
|
+
break;
|
|
12466
12488
|
}
|
|
12467
12489
|
pc.addLocalTrack(new RCLocalVideoTrack(localTrack.getTag(), localTrack.getUserId(), cloneTrack, true));
|
|
12468
12490
|
}
|
|
12469
12491
|
}
|
|
12470
|
-
|
|
12492
|
+
pc.addLocalTrack(localTrack);
|
|
12493
|
+
}
|
|
12471
12494
|
// 客户端主动调用 api 发请求时,清除 ice 断线重连的定时器
|
|
12472
12495
|
pc.clearReTryExchangeTimer();
|
|
12473
12496
|
// 发送 /exchange 请求
|
|
@@ -19306,9 +19329,9 @@ const installer = {
|
|
|
19306
19329
|
logger.error('Please use the https protocol or use `http://localhost` to open the page!');
|
|
19307
19330
|
return false;
|
|
19308
19331
|
}
|
|
19309
|
-
VersionManage.add('plugin-rtc', "5.4.7-alpha.
|
|
19310
|
-
if (!VersionManage.validEngine("
|
|
19311
|
-
logger.error(`The current engine version '${VersionManage.getInfo().engine}' error, plugin-rtc required engine version at least '${"
|
|
19332
|
+
VersionManage.add('plugin-rtc', "5.4.7-alpha.4");
|
|
19333
|
+
if (!VersionManage.validEngine("5.3.4 - 5.4.5")) {
|
|
19334
|
+
logger.error(`The current engine version '${VersionManage.getInfo().engine}' error, plugin-rtc required engine version at least '${"5.3.4 - 5.4.5"}'.`);
|
|
19312
19335
|
return false;
|
|
19313
19336
|
}
|
|
19314
19337
|
return true;
|
|
@@ -19317,7 +19340,7 @@ const installer = {
|
|
|
19317
19340
|
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
19318
19341
|
logger.setLogLevel(options.logLevel);
|
|
19319
19342
|
logger.setLogStdout(options.logStdout);
|
|
19320
|
-
logger.warn(`RCRTC Version: ${"5.4.7-alpha.
|
|
19343
|
+
logger.warn(`RCRTC Version: ${"5.4.7-alpha.4"}, Commit: ${"1297531a6457c0e72d9fa276eee9a49a7b3c596e"}`);
|
|
19321
19344
|
logger.warn(`browserInfo.browser -> ${browserInfo.browser}`);
|
|
19322
19345
|
logger.warn(`browserInfo.supportsUnifiedPlan -> ${browserInfo.supportsUnifiedPlan}`);
|
|
19323
19346
|
logger.warn(`browserInfo.version -> ${browserInfo.version}`);
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* RCRTC - v5.4.7-alpha.
|
|
3
|
-
* CommitId -
|
|
4
|
-
* Tue
|
|
2
|
+
* RCRTC - v5.4.7-alpha.4
|
|
3
|
+
* CommitId - 1297531a6457c0e72d9fa276eee9a49a7b3c596e
|
|
4
|
+
* Tue Sep 13 2022 20:41:55 GMT+0800 (China Standard Time)
|
|
5
5
|
* ©2020 RongCloud, Inc. All rights reserved.
|
|
6
6
|
*/
|
|
7
7
|
'use strict';
|
|
@@ -6230,22 +6230,22 @@ exports.RCMediaType = void 0;
|
|
|
6230
6230
|
const RongRTCVideoBitrate = {
|
|
6231
6231
|
[exports.RCResolution.W176_H132]: { width: 176, height: 132, maxBitrate: 150, minBitrate: 80 },
|
|
6232
6232
|
[exports.RCResolution.W176_H144]: { width: 176, height: 144, maxBitrate: 150, minBitrate: 80 },
|
|
6233
|
-
[exports.RCResolution.W180_H180]: { width:
|
|
6234
|
-
[exports.RCResolution.W240_H180]: { width: 240, height:
|
|
6233
|
+
[exports.RCResolution.W180_H180]: { width: 180, height: 180, maxBitrate: 200, minBitrate: 100 },
|
|
6234
|
+
[exports.RCResolution.W240_H180]: { width: 240, height: 180, maxBitrate: 240, minBitrate: 120 },
|
|
6235
6235
|
[exports.RCResolution.W240_H240]: { width: 240, height: 240, maxBitrate: 280, minBitrate: 120 },
|
|
6236
6236
|
[exports.RCResolution.W256_H144]: { width: 256, height: 144, maxBitrate: 240, minBitrate: 120 },
|
|
6237
|
-
[exports.RCResolution.W320_H180]: { width: 320, height:
|
|
6237
|
+
[exports.RCResolution.W320_H180]: { width: 320, height: 180, maxBitrate: 280, minBitrate: 120 },
|
|
6238
6238
|
[exports.RCResolution.W320_H240]: { width: 320, height: 240, maxBitrate: 400, minBitrate: 120 },
|
|
6239
|
-
[exports.RCResolution.W360_H360]: { width:
|
|
6240
|
-
[exports.RCResolution.W480_H360]: { width: 480, height:
|
|
6239
|
+
[exports.RCResolution.W360_H360]: { width: 360, height: 360, maxBitrate: 520, minBitrate: 140 },
|
|
6240
|
+
[exports.RCResolution.W480_H360]: { width: 480, height: 360, maxBitrate: 650, minBitrate: 150 },
|
|
6241
6241
|
[exports.RCResolution.W480_H480]: { width: 480, height: 480, maxBitrate: 800, minBitrate: 180 },
|
|
6242
|
-
[exports.RCResolution.W640_H360]: { width: 640, height:
|
|
6242
|
+
[exports.RCResolution.W640_H360]: { width: 640, height: 360, maxBitrate: 800, minBitrate: 180 },
|
|
6243
6243
|
[exports.RCResolution.W640_H480]: { width: 640, height: 480, maxBitrate: 900, minBitrate: 200 },
|
|
6244
6244
|
[exports.RCResolution.W720_H480]: { width: 720, height: 480, maxBitrate: 1000, minBitrate: 200 },
|
|
6245
6245
|
[exports.RCResolution.W848_H480]: { width: 848, height: 480, maxBitrate: 1860, minBitrate: 200 },
|
|
6246
6246
|
[exports.RCResolution.W960_H720]: { width: 960, height: 720, maxBitrate: 2000, minBitrate: 250 },
|
|
6247
6247
|
[exports.RCResolution.W1280_H720]: { width: 1280, height: 720, maxBitrate: 2200, minBitrate: 250 },
|
|
6248
|
-
[exports.RCResolution.W1920_H1080]: { width: 1920, height:
|
|
6248
|
+
[exports.RCResolution.W1920_H1080]: { width: 1920, height: 1080, maxBitrate: 4000, minBitrate: 400 }
|
|
6249
6249
|
};
|
|
6250
6250
|
/**
|
|
6251
6251
|
* 分辨率适配
|
|
@@ -7352,8 +7352,12 @@ const getVideoTrackInfo = (track) => {
|
|
|
7352
7352
|
const settings = track.getSettings();
|
|
7353
7353
|
const constraints = track.getConstraints();
|
|
7354
7354
|
return {
|
|
7355
|
-
|
|
7356
|
-
|
|
7355
|
+
/**
|
|
7356
|
+
* applyConstraints 方法应用的宽高约束不一定可以立马生效
|
|
7357
|
+
* 取值优先 constraints
|
|
7358
|
+
*/
|
|
7359
|
+
width: getValue(constraints.width) || settings.width || 0,
|
|
7360
|
+
height: getValue(constraints.height) || settings.height || 0,
|
|
7357
7361
|
frameRate: settings.frameRate || getValue(constraints.frameRate)
|
|
7358
7362
|
};
|
|
7359
7363
|
};
|
|
@@ -7938,7 +7942,7 @@ const getCommonHeader = () => ({
|
|
|
7938
7942
|
'Content-Type': 'application/json;charset=UTF-8',
|
|
7939
7943
|
'Cache-Control': 'no-cache',
|
|
7940
7944
|
ClientType: `web|${browserInfo.browser}|${browserInfo.version}`,
|
|
7941
|
-
ClientVersion: "5.4.7-alpha.
|
|
7945
|
+
ClientVersion: "5.4.7-alpha.4",
|
|
7942
7946
|
'Client-Session-Id': getUUID(),
|
|
7943
7947
|
'Request-Id': Date.now().toString()
|
|
7944
7948
|
});
|
|
@@ -8028,11 +8032,12 @@ class RCMediaService {
|
|
|
8028
8032
|
path,
|
|
8029
8033
|
headers,
|
|
8030
8034
|
body,
|
|
8031
|
-
reqId
|
|
8035
|
+
reqId,
|
|
8036
|
+
timeout: this._timeout
|
|
8032
8037
|
}, {
|
|
8033
8038
|
logSource: engine.LogSource.RTC
|
|
8034
8039
|
});
|
|
8035
|
-
logger.info(`request -> Request-Id: ${reqId}, url: ${url}, headers: ${JSON.stringify(mergeHeaders)}, body: ${jsonBody}`);
|
|
8040
|
+
logger.info(`request -> Request-Id: ${reqId}, url: ${url}, headers: ${JSON.stringify(mergeHeaders)}, body: ${jsonBody}, timeout: ${this._timeout}`);
|
|
8036
8041
|
const { status, data } = yield this._runtime.httpReq({
|
|
8037
8042
|
url,
|
|
8038
8043
|
body: jsonBody,
|
|
@@ -9266,6 +9271,13 @@ class ASdpBuilder {
|
|
|
9266
9271
|
}
|
|
9267
9272
|
return stream;
|
|
9268
9273
|
}
|
|
9274
|
+
/**
|
|
9275
|
+
* 它将 SDP 标头中的 `a=group` 行替换为 `b=AS` 和 `b=TIAS` 行
|
|
9276
|
+
* @param {number} maxBitrate - 流的最大比特率。
|
|
9277
|
+
*/
|
|
9278
|
+
setHeaderBitrate(maxBitrate) {
|
|
9279
|
+
this.SDPHeader = this.SDPHeader.replace(/(\r\ns=[^\r\n]+)/ig, `$1\r\nc=IN IP4 0.0.0.0\r\nb=AS:${maxBitrate * ASdpBuilder.KBitrate}\r\nb=TIAS:${maxBitrate * ASdpBuilder.KBitrate * 850}`);
|
|
9280
|
+
}
|
|
9269
9281
|
/**
|
|
9270
9282
|
* 它获取音频流并将它们映射到一个新数组,其中每个项目都是调用 setAudioItemBitrate 函数的结果
|
|
9271
9283
|
* @param {IRCTrackBitrate} bitrate - 以 kbps 为单位的比特率。
|
|
@@ -9356,7 +9368,7 @@ class ASdpBuilder {
|
|
|
9356
9368
|
*/
|
|
9357
9369
|
addAudioBlineAS(sdpAudioBlock, bitrate) {
|
|
9358
9370
|
if (!/\bb=AS:\d+\b/ig.test(sdpAudioBlock)) {
|
|
9359
|
-
return sdpAudioBlock.replace(
|
|
9371
|
+
return sdpAudioBlock.replace(/(\bc=IN[^\r\n]+)/ig, `$1\r\nb=AS:${bitrate.max * ASdpBuilder.KBitrate}\r\nb=TIAS:${bitrate.max * ASdpBuilder.KBitrate * 850}`);
|
|
9360
9372
|
}
|
|
9361
9373
|
return sdpAudioBlock;
|
|
9362
9374
|
}
|
|
@@ -9454,7 +9466,7 @@ class ASdpBuilder {
|
|
|
9454
9466
|
addVideoBlineAS(sdpVideoBlock, bitrate) {
|
|
9455
9467
|
// b=AS: 定义本端带宽信息
|
|
9456
9468
|
if (!/\bb=AS:\d+\b/ig.test(sdpVideoBlock)) {
|
|
9457
|
-
return sdpVideoBlock.replace(
|
|
9469
|
+
return sdpVideoBlock.replace(/(\bc=IN[^\r\n]+)/ig, `$1\r\nb=AS:${bitrate.max * ASdpBuilder.KBitrate}\r\nb=TIAS:${bitrate.max * ASdpBuilder.KBitrate * 850}`);
|
|
9458
9470
|
}
|
|
9459
9471
|
return sdpVideoBlock;
|
|
9460
9472
|
}
|
|
@@ -10826,7 +10838,7 @@ class PolarisReporter {
|
|
|
10826
10838
|
* 加入房间
|
|
10827
10839
|
*/
|
|
10828
10840
|
sendR1() {
|
|
10829
|
-
const rtcVersion = "5.4.7-alpha.
|
|
10841
|
+
const rtcVersion = "5.4.7-alpha.4";
|
|
10830
10842
|
const imVersion = this._context.getCoreVersion();
|
|
10831
10843
|
const platform = 'web';
|
|
10832
10844
|
const pcName = navigator.platform;
|
|
@@ -12433,6 +12445,16 @@ class PublishCommand extends BaseCommand {
|
|
|
12433
12445
|
const { track: localTrack } = track instanceof RCLocalTrack ? { track } : track;
|
|
12434
12446
|
localTracks.push(localTrack);
|
|
12435
12447
|
});
|
|
12448
|
+
/**
|
|
12449
|
+
* 将发布的视频流按从小到大进行排序
|
|
12450
|
+
*/
|
|
12451
|
+
tracks.sort((item, nextItem) => {
|
|
12452
|
+
const { track: localTrack } = item instanceof RCLocalTrack ? { track: item } : item;
|
|
12453
|
+
const { max: maxBitrate } = localTrack.getBitrate();
|
|
12454
|
+
const { track: nextLocalTrack } = nextItem instanceof RCLocalTrack ? { track: nextItem } : nextItem;
|
|
12455
|
+
const { max: maxNextBitrate } = nextLocalTrack.getBitrate();
|
|
12456
|
+
return maxBitrate - maxNextBitrate;
|
|
12457
|
+
});
|
|
12436
12458
|
/**
|
|
12437
12459
|
* 一个 peerConnection 上行不超过 10 个
|
|
12438
12460
|
*/
|
|
@@ -12446,10 +12468,10 @@ class PublishCommand extends BaseCommand {
|
|
|
12446
12468
|
* 资源发布应先与 mediaserver 交换资源,建 PeerConnection 通道,后通知房间
|
|
12447
12469
|
* 资源取消发布则应先通知取消发布,后与 mediaServer 协商取消资源发布
|
|
12448
12470
|
*/
|
|
12449
|
-
tracks.
|
|
12471
|
+
for (let index = 0; index < tracks.length; index++) {
|
|
12472
|
+
const track = tracks[index];
|
|
12450
12473
|
// 向 RTCPeerConnection 添加轨道数据
|
|
12451
12474
|
const { track: localTrack, pubTiny } = track instanceof RCLocalTrack ? { pubTiny: false, track } : track;
|
|
12452
|
-
pc.addLocalTrack(localTrack);
|
|
12453
12475
|
// 拷贝生成小流并添加至 RTCPeerConnection
|
|
12454
12476
|
if (localTrack.isVideoTrack()) {
|
|
12455
12477
|
if (pubTiny) {
|
|
@@ -12460,17 +12482,18 @@ class PublishCommand extends BaseCommand {
|
|
|
12460
12482
|
const resolution = pubTiny.resolution || exports.RCResolution.W176_H144;
|
|
12461
12483
|
const { width, height } = transResolution(resolution);
|
|
12462
12484
|
const frameRate = transFrameRate(rcFrameRate);
|
|
12463
|
-
cloneTrack.applyConstraints({ width, height, frameRate });
|
|
12485
|
+
yield cloneTrack.applyConstraints({ width, height, frameRate });
|
|
12464
12486
|
}
|
|
12465
12487
|
catch (error) {
|
|
12466
12488
|
cloneTrack === null || cloneTrack === void 0 ? void 0 : cloneTrack.stop();
|
|
12467
12489
|
logger.warn(`pubTiny failed -> id: ${localTrack.getTrackId()}, msg: ${error.message}`);
|
|
12468
|
-
|
|
12490
|
+
break;
|
|
12469
12491
|
}
|
|
12470
12492
|
pc.addLocalTrack(new RCLocalVideoTrack(localTrack.getTag(), localTrack.getUserId(), cloneTrack, true));
|
|
12471
12493
|
}
|
|
12472
12494
|
}
|
|
12473
|
-
|
|
12495
|
+
pc.addLocalTrack(localTrack);
|
|
12496
|
+
}
|
|
12474
12497
|
// 客户端主动调用 api 发请求时,清除 ice 断线重连的定时器
|
|
12475
12498
|
pc.clearReTryExchangeTimer();
|
|
12476
12499
|
// 发送 /exchange 请求
|
|
@@ -19309,9 +19332,9 @@ const installer = {
|
|
|
19309
19332
|
logger.error('Please use the https protocol or use `http://localhost` to open the page!');
|
|
19310
19333
|
return false;
|
|
19311
19334
|
}
|
|
19312
|
-
engine.VersionManage.add('plugin-rtc', "5.4.7-alpha.
|
|
19313
|
-
if (!engine.VersionManage.validEngine("
|
|
19314
|
-
logger.error(`The current engine version '${engine.VersionManage.getInfo().engine}' error, plugin-rtc required engine version at least '${"
|
|
19335
|
+
engine.VersionManage.add('plugin-rtc', "5.4.7-alpha.4");
|
|
19336
|
+
if (!engine.VersionManage.validEngine("5.3.4 - 5.4.5")) {
|
|
19337
|
+
logger.error(`The current engine version '${engine.VersionManage.getInfo().engine}' error, plugin-rtc required engine version at least '${"5.3.4 - 5.4.5"}'.`);
|
|
19315
19338
|
return false;
|
|
19316
19339
|
}
|
|
19317
19340
|
return true;
|
|
@@ -19320,7 +19343,7 @@ const installer = {
|
|
|
19320
19343
|
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
19321
19344
|
logger.setLogLevel(options.logLevel);
|
|
19322
19345
|
logger.setLogStdout(options.logStdout);
|
|
19323
|
-
logger.warn(`RCRTC Version: ${"5.4.7-alpha.
|
|
19346
|
+
logger.warn(`RCRTC Version: ${"5.4.7-alpha.4"}, Commit: ${"1297531a6457c0e72d9fa276eee9a49a7b3c596e"}`);
|
|
19324
19347
|
logger.warn(`browserInfo.browser -> ${browserInfo.browser}`);
|
|
19325
19348
|
logger.warn(`browserInfo.supportsUnifiedPlan -> ${browserInfo.supportsUnifiedPlan}`);
|
|
19326
19349
|
logger.warn(`browserInfo.version -> ${browserInfo.version}`);
|
package/dist/index.umd.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* RCRTC - v5.4.7-alpha.
|
|
3
|
-
* CommitId -
|
|
4
|
-
* Tue
|
|
2
|
+
* RCRTC - v5.4.7-alpha.4
|
|
3
|
+
* CommitId - 1297531a6457c0e72d9fa276eee9a49a7b3c596e
|
|
4
|
+
* Tue Sep 13 2022 20:41:55 GMT+0800 (China Standard Time)
|
|
5
5
|
* ©2020 RongCloud, Inc. All rights reserved.
|
|
6
6
|
*/
|
|
7
7
|
(function (global, factory) {
|
|
@@ -6230,22 +6230,22 @@
|
|
|
6230
6230
|
const RongRTCVideoBitrate = {
|
|
6231
6231
|
[exports.RCResolution.W176_H132]: { width: 176, height: 132, maxBitrate: 150, minBitrate: 80 },
|
|
6232
6232
|
[exports.RCResolution.W176_H144]: { width: 176, height: 144, maxBitrate: 150, minBitrate: 80 },
|
|
6233
|
-
[exports.RCResolution.W180_H180]: { width:
|
|
6234
|
-
[exports.RCResolution.W240_H180]: { width: 240, height:
|
|
6233
|
+
[exports.RCResolution.W180_H180]: { width: 180, height: 180, maxBitrate: 200, minBitrate: 100 },
|
|
6234
|
+
[exports.RCResolution.W240_H180]: { width: 240, height: 180, maxBitrate: 240, minBitrate: 120 },
|
|
6235
6235
|
[exports.RCResolution.W240_H240]: { width: 240, height: 240, maxBitrate: 280, minBitrate: 120 },
|
|
6236
6236
|
[exports.RCResolution.W256_H144]: { width: 256, height: 144, maxBitrate: 240, minBitrate: 120 },
|
|
6237
|
-
[exports.RCResolution.W320_H180]: { width: 320, height:
|
|
6237
|
+
[exports.RCResolution.W320_H180]: { width: 320, height: 180, maxBitrate: 280, minBitrate: 120 },
|
|
6238
6238
|
[exports.RCResolution.W320_H240]: { width: 320, height: 240, maxBitrate: 400, minBitrate: 120 },
|
|
6239
|
-
[exports.RCResolution.W360_H360]: { width:
|
|
6240
|
-
[exports.RCResolution.W480_H360]: { width: 480, height:
|
|
6239
|
+
[exports.RCResolution.W360_H360]: { width: 360, height: 360, maxBitrate: 520, minBitrate: 140 },
|
|
6240
|
+
[exports.RCResolution.W480_H360]: { width: 480, height: 360, maxBitrate: 650, minBitrate: 150 },
|
|
6241
6241
|
[exports.RCResolution.W480_H480]: { width: 480, height: 480, maxBitrate: 800, minBitrate: 180 },
|
|
6242
|
-
[exports.RCResolution.W640_H360]: { width: 640, height:
|
|
6242
|
+
[exports.RCResolution.W640_H360]: { width: 640, height: 360, maxBitrate: 800, minBitrate: 180 },
|
|
6243
6243
|
[exports.RCResolution.W640_H480]: { width: 640, height: 480, maxBitrate: 900, minBitrate: 200 },
|
|
6244
6244
|
[exports.RCResolution.W720_H480]: { width: 720, height: 480, maxBitrate: 1000, minBitrate: 200 },
|
|
6245
6245
|
[exports.RCResolution.W848_H480]: { width: 848, height: 480, maxBitrate: 1860, minBitrate: 200 },
|
|
6246
6246
|
[exports.RCResolution.W960_H720]: { width: 960, height: 720, maxBitrate: 2000, minBitrate: 250 },
|
|
6247
6247
|
[exports.RCResolution.W1280_H720]: { width: 1280, height: 720, maxBitrate: 2200, minBitrate: 250 },
|
|
6248
|
-
[exports.RCResolution.W1920_H1080]: { width: 1920, height:
|
|
6248
|
+
[exports.RCResolution.W1920_H1080]: { width: 1920, height: 1080, maxBitrate: 4000, minBitrate: 400 }
|
|
6249
6249
|
};
|
|
6250
6250
|
/**
|
|
6251
6251
|
* 分辨率适配
|
|
@@ -7352,8 +7352,12 @@
|
|
|
7352
7352
|
const settings = track.getSettings();
|
|
7353
7353
|
const constraints = track.getConstraints();
|
|
7354
7354
|
return {
|
|
7355
|
-
|
|
7356
|
-
|
|
7355
|
+
/**
|
|
7356
|
+
* applyConstraints 方法应用的宽高约束不一定可以立马生效
|
|
7357
|
+
* 取值优先 constraints
|
|
7358
|
+
*/
|
|
7359
|
+
width: getValue(constraints.width) || settings.width || 0,
|
|
7360
|
+
height: getValue(constraints.height) || settings.height || 0,
|
|
7357
7361
|
frameRate: settings.frameRate || getValue(constraints.frameRate)
|
|
7358
7362
|
};
|
|
7359
7363
|
};
|
|
@@ -7938,7 +7942,7 @@
|
|
|
7938
7942
|
'Content-Type': 'application/json;charset=UTF-8',
|
|
7939
7943
|
'Cache-Control': 'no-cache',
|
|
7940
7944
|
ClientType: `web|${browserInfo.browser}|${browserInfo.version}`,
|
|
7941
|
-
ClientVersion: "5.4.7-alpha.
|
|
7945
|
+
ClientVersion: "5.4.7-alpha.4",
|
|
7942
7946
|
'Client-Session-Id': getUUID(),
|
|
7943
7947
|
'Request-Id': Date.now().toString()
|
|
7944
7948
|
});
|
|
@@ -8028,11 +8032,12 @@
|
|
|
8028
8032
|
path,
|
|
8029
8033
|
headers,
|
|
8030
8034
|
body,
|
|
8031
|
-
reqId
|
|
8035
|
+
reqId,
|
|
8036
|
+
timeout: this._timeout
|
|
8032
8037
|
}, {
|
|
8033
8038
|
logSource: engine.LogSource.RTC
|
|
8034
8039
|
});
|
|
8035
|
-
logger.info(`request -> Request-Id: ${reqId}, url: ${url}, headers: ${JSON.stringify(mergeHeaders)}, body: ${jsonBody}`);
|
|
8040
|
+
logger.info(`request -> Request-Id: ${reqId}, url: ${url}, headers: ${JSON.stringify(mergeHeaders)}, body: ${jsonBody}, timeout: ${this._timeout}`);
|
|
8036
8041
|
const { status, data } = yield this._runtime.httpReq({
|
|
8037
8042
|
url,
|
|
8038
8043
|
body: jsonBody,
|
|
@@ -9266,6 +9271,13 @@
|
|
|
9266
9271
|
}
|
|
9267
9272
|
return stream;
|
|
9268
9273
|
}
|
|
9274
|
+
/**
|
|
9275
|
+
* 它将 SDP 标头中的 `a=group` 行替换为 `b=AS` 和 `b=TIAS` 行
|
|
9276
|
+
* @param {number} maxBitrate - 流的最大比特率。
|
|
9277
|
+
*/
|
|
9278
|
+
setHeaderBitrate(maxBitrate) {
|
|
9279
|
+
this.SDPHeader = this.SDPHeader.replace(/(\r\ns=[^\r\n]+)/ig, `$1\r\nc=IN IP4 0.0.0.0\r\nb=AS:${maxBitrate * ASdpBuilder.KBitrate}\r\nb=TIAS:${maxBitrate * ASdpBuilder.KBitrate * 850}`);
|
|
9280
|
+
}
|
|
9269
9281
|
/**
|
|
9270
9282
|
* 它获取音频流并将它们映射到一个新数组,其中每个项目都是调用 setAudioItemBitrate 函数的结果
|
|
9271
9283
|
* @param {IRCTrackBitrate} bitrate - 以 kbps 为单位的比特率。
|
|
@@ -9356,7 +9368,7 @@
|
|
|
9356
9368
|
*/
|
|
9357
9369
|
addAudioBlineAS(sdpAudioBlock, bitrate) {
|
|
9358
9370
|
if (!/\bb=AS:\d+\b/ig.test(sdpAudioBlock)) {
|
|
9359
|
-
return sdpAudioBlock.replace(
|
|
9371
|
+
return sdpAudioBlock.replace(/(\bc=IN[^\r\n]+)/ig, `$1\r\nb=AS:${bitrate.max * ASdpBuilder.KBitrate}\r\nb=TIAS:${bitrate.max * ASdpBuilder.KBitrate * 850}`);
|
|
9360
9372
|
}
|
|
9361
9373
|
return sdpAudioBlock;
|
|
9362
9374
|
}
|
|
@@ -9454,7 +9466,7 @@
|
|
|
9454
9466
|
addVideoBlineAS(sdpVideoBlock, bitrate) {
|
|
9455
9467
|
// b=AS: 定义本端带宽信息
|
|
9456
9468
|
if (!/\bb=AS:\d+\b/ig.test(sdpVideoBlock)) {
|
|
9457
|
-
return sdpVideoBlock.replace(
|
|
9469
|
+
return sdpVideoBlock.replace(/(\bc=IN[^\r\n]+)/ig, `$1\r\nb=AS:${bitrate.max * ASdpBuilder.KBitrate}\r\nb=TIAS:${bitrate.max * ASdpBuilder.KBitrate * 850}`);
|
|
9458
9470
|
}
|
|
9459
9471
|
return sdpVideoBlock;
|
|
9460
9472
|
}
|
|
@@ -10826,7 +10838,7 @@
|
|
|
10826
10838
|
* 加入房间
|
|
10827
10839
|
*/
|
|
10828
10840
|
sendR1() {
|
|
10829
|
-
const rtcVersion = "5.4.7-alpha.
|
|
10841
|
+
const rtcVersion = "5.4.7-alpha.4";
|
|
10830
10842
|
const imVersion = this._context.getCoreVersion();
|
|
10831
10843
|
const platform = 'web';
|
|
10832
10844
|
const pcName = navigator.platform;
|
|
@@ -12433,6 +12445,16 @@
|
|
|
12433
12445
|
const { track: localTrack } = track instanceof RCLocalTrack ? { track } : track;
|
|
12434
12446
|
localTracks.push(localTrack);
|
|
12435
12447
|
});
|
|
12448
|
+
/**
|
|
12449
|
+
* 将发布的视频流按从小到大进行排序
|
|
12450
|
+
*/
|
|
12451
|
+
tracks.sort((item, nextItem) => {
|
|
12452
|
+
const { track: localTrack } = item instanceof RCLocalTrack ? { track: item } : item;
|
|
12453
|
+
const { max: maxBitrate } = localTrack.getBitrate();
|
|
12454
|
+
const { track: nextLocalTrack } = nextItem instanceof RCLocalTrack ? { track: nextItem } : nextItem;
|
|
12455
|
+
const { max: maxNextBitrate } = nextLocalTrack.getBitrate();
|
|
12456
|
+
return maxBitrate - maxNextBitrate;
|
|
12457
|
+
});
|
|
12436
12458
|
/**
|
|
12437
12459
|
* 一个 peerConnection 上行不超过 10 个
|
|
12438
12460
|
*/
|
|
@@ -12446,10 +12468,10 @@
|
|
|
12446
12468
|
* 资源发布应先与 mediaserver 交换资源,建 PeerConnection 通道,后通知房间
|
|
12447
12469
|
* 资源取消发布则应先通知取消发布,后与 mediaServer 协商取消资源发布
|
|
12448
12470
|
*/
|
|
12449
|
-
tracks.
|
|
12471
|
+
for (let index = 0; index < tracks.length; index++) {
|
|
12472
|
+
const track = tracks[index];
|
|
12450
12473
|
// 向 RTCPeerConnection 添加轨道数据
|
|
12451
12474
|
const { track: localTrack, pubTiny } = track instanceof RCLocalTrack ? { pubTiny: false, track } : track;
|
|
12452
|
-
pc.addLocalTrack(localTrack);
|
|
12453
12475
|
// 拷贝生成小流并添加至 RTCPeerConnection
|
|
12454
12476
|
if (localTrack.isVideoTrack()) {
|
|
12455
12477
|
if (pubTiny) {
|
|
@@ -12460,17 +12482,18 @@
|
|
|
12460
12482
|
const resolution = pubTiny.resolution || exports.RCResolution.W176_H144;
|
|
12461
12483
|
const { width, height } = transResolution(resolution);
|
|
12462
12484
|
const frameRate = transFrameRate(rcFrameRate);
|
|
12463
|
-
cloneTrack.applyConstraints({ width, height, frameRate });
|
|
12485
|
+
yield cloneTrack.applyConstraints({ width, height, frameRate });
|
|
12464
12486
|
}
|
|
12465
12487
|
catch (error) {
|
|
12466
12488
|
cloneTrack === null || cloneTrack === void 0 ? void 0 : cloneTrack.stop();
|
|
12467
12489
|
logger.warn(`pubTiny failed -> id: ${localTrack.getTrackId()}, msg: ${error.message}`);
|
|
12468
|
-
|
|
12490
|
+
break;
|
|
12469
12491
|
}
|
|
12470
12492
|
pc.addLocalTrack(new RCLocalVideoTrack(localTrack.getTag(), localTrack.getUserId(), cloneTrack, true));
|
|
12471
12493
|
}
|
|
12472
12494
|
}
|
|
12473
|
-
|
|
12495
|
+
pc.addLocalTrack(localTrack);
|
|
12496
|
+
}
|
|
12474
12497
|
// 客户端主动调用 api 发请求时,清除 ice 断线重连的定时器
|
|
12475
12498
|
pc.clearReTryExchangeTimer();
|
|
12476
12499
|
// 发送 /exchange 请求
|
|
@@ -19309,9 +19332,9 @@
|
|
|
19309
19332
|
logger.error('Please use the https protocol or use `http://localhost` to open the page!');
|
|
19310
19333
|
return false;
|
|
19311
19334
|
}
|
|
19312
|
-
engine.VersionManage.add('plugin-rtc', "5.4.7-alpha.
|
|
19313
|
-
if (!engine.VersionManage.validEngine("
|
|
19314
|
-
logger.error(`The current engine version '${engine.VersionManage.getInfo().engine}' error, plugin-rtc required engine version at least '${"
|
|
19335
|
+
engine.VersionManage.add('plugin-rtc', "5.4.7-alpha.4");
|
|
19336
|
+
if (!engine.VersionManage.validEngine("5.3.4 - 5.4.5")) {
|
|
19337
|
+
logger.error(`The current engine version '${engine.VersionManage.getInfo().engine}' error, plugin-rtc required engine version at least '${"5.3.4 - 5.4.5"}'.`);
|
|
19315
19338
|
return false;
|
|
19316
19339
|
}
|
|
19317
19340
|
return true;
|
|
@@ -19320,7 +19343,7 @@
|
|
|
19320
19343
|
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
19321
19344
|
logger.setLogLevel(options.logLevel);
|
|
19322
19345
|
logger.setLogStdout(options.logStdout);
|
|
19323
|
-
logger.warn(`RCRTC Version: ${"5.4.7-alpha.
|
|
19346
|
+
logger.warn(`RCRTC Version: ${"5.4.7-alpha.4"}, Commit: ${"1297531a6457c0e72d9fa276eee9a49a7b3c596e"}`);
|
|
19324
19347
|
logger.warn(`browserInfo.browser -> ${browserInfo.browser}`);
|
|
19325
19348
|
logger.warn(`browserInfo.supportsUnifiedPlan -> ${browserInfo.supportsUnifiedPlan}`);
|
|
19326
19349
|
logger.warn(`browserInfo.version -> ${browserInfo.version}`);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rongcloud/plugin-rtc",
|
|
3
|
-
"version": "5.4.7-alpha.
|
|
3
|
+
"version": "5.4.7-alpha.4",
|
|
4
4
|
"description": "@rongcloud/plugin-rtc",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"__attrs__": {
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"node": ">=10.0.0"
|
|
32
32
|
},
|
|
33
33
|
"peerDependencies": {
|
|
34
|
-
"@rongcloud/engine": "
|
|
34
|
+
"@rongcloud/engine": "5.3.4 - 5.4.5"
|
|
35
35
|
},
|
|
36
|
-
"__commit__": "
|
|
36
|
+
"__commit__": "1297531a6457c0e72d9fa276eee9a49a7b3c596e"
|
|
37
37
|
}
|