@rongcloud/plugin-rtc 5.4.7-alpha.3 → 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 +32 -11
- package/dist/index.js +32 -11
- package/dist/index.umd.js +32 -11
- package/package.json +2 -2
|
@@ -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
|
-
*
|
|
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
|
-
*
|
|
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';
|
|
@@ -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
|
});
|
|
@@ -9264,6 +9268,13 @@ class ASdpBuilder {
|
|
|
9264
9268
|
}
|
|
9265
9269
|
return stream;
|
|
9266
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
|
+
}
|
|
9267
9278
|
/**
|
|
9268
9279
|
* 它获取音频流并将它们映射到一个新数组,其中每个项目都是调用 setAudioItemBitrate 函数的结果
|
|
9269
9280
|
* @param {IRCTrackBitrate} bitrate - 以 kbps 为单位的比特率。
|
|
@@ -9354,7 +9365,7 @@ class ASdpBuilder {
|
|
|
9354
9365
|
*/
|
|
9355
9366
|
addAudioBlineAS(sdpAudioBlock, bitrate) {
|
|
9356
9367
|
if (!/\bb=AS:\d+\b/ig.test(sdpAudioBlock)) {
|
|
9357
|
-
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}`);
|
|
9358
9369
|
}
|
|
9359
9370
|
return sdpAudioBlock;
|
|
9360
9371
|
}
|
|
@@ -9452,7 +9463,7 @@ class ASdpBuilder {
|
|
|
9452
9463
|
addVideoBlineAS(sdpVideoBlock, bitrate) {
|
|
9453
9464
|
// b=AS: 定义本端带宽信息
|
|
9454
9465
|
if (!/\bb=AS:\d+\b/ig.test(sdpVideoBlock)) {
|
|
9455
|
-
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}`);
|
|
9456
9467
|
}
|
|
9457
9468
|
return sdpVideoBlock;
|
|
9458
9469
|
}
|
|
@@ -10824,7 +10835,7 @@ class PolarisReporter {
|
|
|
10824
10835
|
* 加入房间
|
|
10825
10836
|
*/
|
|
10826
10837
|
sendR1() {
|
|
10827
|
-
const rtcVersion = "5.4.7-alpha.
|
|
10838
|
+
const rtcVersion = "5.4.7-alpha.4";
|
|
10828
10839
|
const imVersion = this._context.getCoreVersion();
|
|
10829
10840
|
const platform = 'web';
|
|
10830
10841
|
const pcName = navigator.platform;
|
|
@@ -12431,6 +12442,16 @@ class PublishCommand extends BaseCommand {
|
|
|
12431
12442
|
const { track: localTrack } = track instanceof RCLocalTrack ? { track } : track;
|
|
12432
12443
|
localTracks.push(localTrack);
|
|
12433
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
|
+
});
|
|
12434
12455
|
/**
|
|
12435
12456
|
* 一个 peerConnection 上行不超过 10 个
|
|
12436
12457
|
*/
|
|
@@ -19308,7 +19329,7 @@ const installer = {
|
|
|
19308
19329
|
logger.error('Please use the https protocol or use `http://localhost` to open the page!');
|
|
19309
19330
|
return false;
|
|
19310
19331
|
}
|
|
19311
|
-
VersionManage.add('plugin-rtc', "5.4.7-alpha.
|
|
19332
|
+
VersionManage.add('plugin-rtc', "5.4.7-alpha.4");
|
|
19312
19333
|
if (!VersionManage.validEngine("5.3.4 - 5.4.5")) {
|
|
19313
19334
|
logger.error(`The current engine version '${VersionManage.getInfo().engine}' error, plugin-rtc required engine version at least '${"5.3.4 - 5.4.5"}'.`);
|
|
19314
19335
|
return false;
|
|
@@ -19319,7 +19340,7 @@ const installer = {
|
|
|
19319
19340
|
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
19320
19341
|
logger.setLogLevel(options.logLevel);
|
|
19321
19342
|
logger.setLogStdout(options.logStdout);
|
|
19322
|
-
logger.warn(`RCRTC Version: ${"5.4.7-alpha.
|
|
19343
|
+
logger.warn(`RCRTC Version: ${"5.4.7-alpha.4"}, Commit: ${"1297531a6457c0e72d9fa276eee9a49a7b3c596e"}`);
|
|
19323
19344
|
logger.warn(`browserInfo.browser -> ${browserInfo.browser}`);
|
|
19324
19345
|
logger.warn(`browserInfo.supportsUnifiedPlan -> ${browserInfo.supportsUnifiedPlan}`);
|
|
19325
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
|
-
*
|
|
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';
|
|
@@ -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
|
});
|
|
@@ -9267,6 +9271,13 @@ class ASdpBuilder {
|
|
|
9267
9271
|
}
|
|
9268
9272
|
return stream;
|
|
9269
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
|
+
}
|
|
9270
9281
|
/**
|
|
9271
9282
|
* 它获取音频流并将它们映射到一个新数组,其中每个项目都是调用 setAudioItemBitrate 函数的结果
|
|
9272
9283
|
* @param {IRCTrackBitrate} bitrate - 以 kbps 为单位的比特率。
|
|
@@ -9357,7 +9368,7 @@ class ASdpBuilder {
|
|
|
9357
9368
|
*/
|
|
9358
9369
|
addAudioBlineAS(sdpAudioBlock, bitrate) {
|
|
9359
9370
|
if (!/\bb=AS:\d+\b/ig.test(sdpAudioBlock)) {
|
|
9360
|
-
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}`);
|
|
9361
9372
|
}
|
|
9362
9373
|
return sdpAudioBlock;
|
|
9363
9374
|
}
|
|
@@ -9455,7 +9466,7 @@ class ASdpBuilder {
|
|
|
9455
9466
|
addVideoBlineAS(sdpVideoBlock, bitrate) {
|
|
9456
9467
|
// b=AS: 定义本端带宽信息
|
|
9457
9468
|
if (!/\bb=AS:\d+\b/ig.test(sdpVideoBlock)) {
|
|
9458
|
-
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}`);
|
|
9459
9470
|
}
|
|
9460
9471
|
return sdpVideoBlock;
|
|
9461
9472
|
}
|
|
@@ -10827,7 +10838,7 @@ class PolarisReporter {
|
|
|
10827
10838
|
* 加入房间
|
|
10828
10839
|
*/
|
|
10829
10840
|
sendR1() {
|
|
10830
|
-
const rtcVersion = "5.4.7-alpha.
|
|
10841
|
+
const rtcVersion = "5.4.7-alpha.4";
|
|
10831
10842
|
const imVersion = this._context.getCoreVersion();
|
|
10832
10843
|
const platform = 'web';
|
|
10833
10844
|
const pcName = navigator.platform;
|
|
@@ -12434,6 +12445,16 @@ class PublishCommand extends BaseCommand {
|
|
|
12434
12445
|
const { track: localTrack } = track instanceof RCLocalTrack ? { track } : track;
|
|
12435
12446
|
localTracks.push(localTrack);
|
|
12436
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
|
+
});
|
|
12437
12458
|
/**
|
|
12438
12459
|
* 一个 peerConnection 上行不超过 10 个
|
|
12439
12460
|
*/
|
|
@@ -19311,7 +19332,7 @@ const installer = {
|
|
|
19311
19332
|
logger.error('Please use the https protocol or use `http://localhost` to open the page!');
|
|
19312
19333
|
return false;
|
|
19313
19334
|
}
|
|
19314
|
-
engine.VersionManage.add('plugin-rtc', "5.4.7-alpha.
|
|
19335
|
+
engine.VersionManage.add('plugin-rtc', "5.4.7-alpha.4");
|
|
19315
19336
|
if (!engine.VersionManage.validEngine("5.3.4 - 5.4.5")) {
|
|
19316
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"}'.`);
|
|
19317
19338
|
return false;
|
|
@@ -19322,7 +19343,7 @@ const installer = {
|
|
|
19322
19343
|
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
19323
19344
|
logger.setLogLevel(options.logLevel);
|
|
19324
19345
|
logger.setLogStdout(options.logStdout);
|
|
19325
|
-
logger.warn(`RCRTC Version: ${"5.4.7-alpha.
|
|
19346
|
+
logger.warn(`RCRTC Version: ${"5.4.7-alpha.4"}, Commit: ${"1297531a6457c0e72d9fa276eee9a49a7b3c596e"}`);
|
|
19326
19347
|
logger.warn(`browserInfo.browser -> ${browserInfo.browser}`);
|
|
19327
19348
|
logger.warn(`browserInfo.supportsUnifiedPlan -> ${browserInfo.supportsUnifiedPlan}`);
|
|
19328
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
|
-
*
|
|
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) {
|
|
@@ -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
|
});
|
|
@@ -9267,6 +9271,13 @@
|
|
|
9267
9271
|
}
|
|
9268
9272
|
return stream;
|
|
9269
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
|
+
}
|
|
9270
9281
|
/**
|
|
9271
9282
|
* 它获取音频流并将它们映射到一个新数组,其中每个项目都是调用 setAudioItemBitrate 函数的结果
|
|
9272
9283
|
* @param {IRCTrackBitrate} bitrate - 以 kbps 为单位的比特率。
|
|
@@ -9357,7 +9368,7 @@
|
|
|
9357
9368
|
*/
|
|
9358
9369
|
addAudioBlineAS(sdpAudioBlock, bitrate) {
|
|
9359
9370
|
if (!/\bb=AS:\d+\b/ig.test(sdpAudioBlock)) {
|
|
9360
|
-
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}`);
|
|
9361
9372
|
}
|
|
9362
9373
|
return sdpAudioBlock;
|
|
9363
9374
|
}
|
|
@@ -9455,7 +9466,7 @@
|
|
|
9455
9466
|
addVideoBlineAS(sdpVideoBlock, bitrate) {
|
|
9456
9467
|
// b=AS: 定义本端带宽信息
|
|
9457
9468
|
if (!/\bb=AS:\d+\b/ig.test(sdpVideoBlock)) {
|
|
9458
|
-
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}`);
|
|
9459
9470
|
}
|
|
9460
9471
|
return sdpVideoBlock;
|
|
9461
9472
|
}
|
|
@@ -10827,7 +10838,7 @@
|
|
|
10827
10838
|
* 加入房间
|
|
10828
10839
|
*/
|
|
10829
10840
|
sendR1() {
|
|
10830
|
-
const rtcVersion = "5.4.7-alpha.
|
|
10841
|
+
const rtcVersion = "5.4.7-alpha.4";
|
|
10831
10842
|
const imVersion = this._context.getCoreVersion();
|
|
10832
10843
|
const platform = 'web';
|
|
10833
10844
|
const pcName = navigator.platform;
|
|
@@ -12434,6 +12445,16 @@
|
|
|
12434
12445
|
const { track: localTrack } = track instanceof RCLocalTrack ? { track } : track;
|
|
12435
12446
|
localTracks.push(localTrack);
|
|
12436
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
|
+
});
|
|
12437
12458
|
/**
|
|
12438
12459
|
* 一个 peerConnection 上行不超过 10 个
|
|
12439
12460
|
*/
|
|
@@ -19311,7 +19332,7 @@
|
|
|
19311
19332
|
logger.error('Please use the https protocol or use `http://localhost` to open the page!');
|
|
19312
19333
|
return false;
|
|
19313
19334
|
}
|
|
19314
|
-
engine.VersionManage.add('plugin-rtc', "5.4.7-alpha.
|
|
19335
|
+
engine.VersionManage.add('plugin-rtc', "5.4.7-alpha.4");
|
|
19315
19336
|
if (!engine.VersionManage.validEngine("5.3.4 - 5.4.5")) {
|
|
19316
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"}'.`);
|
|
19317
19338
|
return false;
|
|
@@ -19322,7 +19343,7 @@
|
|
|
19322
19343
|
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
19323
19344
|
logger.setLogLevel(options.logLevel);
|
|
19324
19345
|
logger.setLogStdout(options.logStdout);
|
|
19325
|
-
logger.warn(`RCRTC Version: ${"5.4.7-alpha.
|
|
19346
|
+
logger.warn(`RCRTC Version: ${"5.4.7-alpha.4"}, Commit: ${"1297531a6457c0e72d9fa276eee9a49a7b3c596e"}`);
|
|
19326
19347
|
logger.warn(`browserInfo.browser -> ${browserInfo.browser}`);
|
|
19327
19348
|
logger.warn(`browserInfo.supportsUnifiedPlan -> ${browserInfo.supportsUnifiedPlan}`);
|
|
19328
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__": {
|
|
@@ -33,5 +33,5 @@
|
|
|
33
33
|
"peerDependencies": {
|
|
34
34
|
"@rongcloud/engine": "5.3.4 - 5.4.5"
|
|
35
35
|
},
|
|
36
|
-
"__commit__": "
|
|
36
|
+
"__commit__": "1297531a6457c0e72d9fa276eee9a49a7b3c596e"
|
|
37
37
|
}
|