sip-connector 6.10.0 → 6.12.0

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.
Files changed (36) hide show
  1. package/dist/SipConnector.d.ts +6 -0
  2. package/dist/SipConnector.d.ts.map +1 -1
  3. package/dist/SipConnector.js +36 -8
  4. package/dist/SipConnector.js.map +1 -1
  5. package/dist/__mocks__/BaseSession.mock.d.ts +1 -0
  6. package/dist/__mocks__/BaseSession.mock.d.ts.map +1 -1
  7. package/dist/__mocks__/BaseSession.mock.js +3 -0
  8. package/dist/__mocks__/BaseSession.mock.js.map +1 -1
  9. package/dist/index.es5.js +1 -1
  10. package/dist/index.es5.js.map +1 -1
  11. package/dist/index.umd.js +1 -1
  12. package/dist/index.umd.js.map +1 -1
  13. package/dist/videoSendingBalancer/balance.d.ts.map +1 -1
  14. package/dist/videoSendingBalancer/balance.js +5 -9
  15. package/dist/videoSendingBalancer/balance.js.map +1 -1
  16. package/dist/videoSendingBalancer/getMaxBitrateByWidthAndCodec.d.ts +5 -0
  17. package/dist/videoSendingBalancer/getMaxBitrateByWidthAndCodec.d.ts.map +1 -0
  18. package/dist/videoSendingBalancer/getMaxBitrateByWidthAndCodec.js +23 -0
  19. package/dist/videoSendingBalancer/getMaxBitrateByWidthAndCodec.js.map +1 -0
  20. package/dist/videoSendingBalancer/hasAv1Codec.d.ts +3 -0
  21. package/dist/videoSendingBalancer/hasAv1Codec.d.ts.map +1 -0
  22. package/dist/videoSendingBalancer/hasAv1Codec.js +12 -0
  23. package/dist/videoSendingBalancer/hasAv1Codec.js.map +1 -0
  24. package/dist/videoSendingBalancer/hasIncludesString.d.ts +3 -0
  25. package/dist/videoSendingBalancer/hasIncludesString.d.ts.map +1 -0
  26. package/dist/videoSendingBalancer/hasIncludesString.js +7 -0
  27. package/dist/videoSendingBalancer/hasIncludesString.js.map +1 -0
  28. package/dist/videoSendingBalancer/processSender.d.ts +2 -1
  29. package/dist/videoSendingBalancer/processSender.d.ts.map +1 -1
  30. package/dist/videoSendingBalancer/processSender.js +11 -11
  31. package/dist/videoSendingBalancer/processSender.js.map +1 -1
  32. package/dist/videoSendingBalancer/scaleBitrateByCodec.d.ts +3 -0
  33. package/dist/videoSendingBalancer/scaleBitrateByCodec.d.ts.map +1 -0
  34. package/dist/videoSendingBalancer/scaleBitrateByCodec.js +15 -0
  35. package/dist/videoSendingBalancer/scaleBitrateByCodec.js.map +1 -0
  36. package/package.json +12 -12
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.getMaximumBitrate = exports.getMinimumBitrate = void 0;
7
+ const getMaxBitrateByWidth_1 = __importDefault(require("./getMaxBitrateByWidth"));
8
+ const scaleBitrateByCodec_1 = __importDefault(require("./scaleBitrateByCodec"));
9
+ const getMaxBitrateByWidth_2 = require("./getMaxBitrateByWidth");
10
+ const getMinimumBitrate = (codec) => {
11
+ return (0, scaleBitrateByCodec_1.default)(getMaxBitrateByWidth_2.MINIMUM_BITRATE, codec);
12
+ };
13
+ exports.getMinimumBitrate = getMinimumBitrate;
14
+ const getMaximumBitrate = (codec) => {
15
+ return (0, scaleBitrateByCodec_1.default)(getMaxBitrateByWidth_2.MAXIMUM_BITRATE, codec);
16
+ };
17
+ exports.getMaximumBitrate = getMaximumBitrate;
18
+ const getMaxBitrateByWidthAndCodec = (maxWidth, codec) => {
19
+ const maxBitrate = (0, getMaxBitrateByWidth_1.default)(maxWidth);
20
+ return (0, scaleBitrateByCodec_1.default)(maxBitrate, codec);
21
+ };
22
+ exports.default = getMaxBitrateByWidthAndCodec;
23
+ //# sourceMappingURL=getMaxBitrateByWidthAndCodec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getMaxBitrateByWidthAndCodec.js","sourceRoot":"","sources":["../../src/videoSendingBalancer/getMaxBitrateByWidthAndCodec.ts"],"names":[],"mappings":";;;;;;AAAA,kFAA0D;AAC1D,gFAAwD;AACxD,iEAA0E;AAEnE,MAAM,iBAAiB,GAAG,CAAC,KAAc,EAAE,EAAE;IAClD,OAAO,IAAA,6BAAmB,EAAC,sCAAe,EAAE,KAAK,CAAC,CAAC;AACrD,CAAC,CAAC;AAFW,QAAA,iBAAiB,qBAE5B;AAEK,MAAM,iBAAiB,GAAG,CAAC,KAAc,EAAE,EAAE;IAClD,OAAO,IAAA,6BAAmB,EAAC,sCAAe,EAAE,KAAK,CAAC,CAAC;AACrD,CAAC,CAAC;AAFW,QAAA,iBAAiB,qBAE5B;AAEF,MAAM,4BAA4B,GAAG,CAAC,QAAgB,EAAE,KAAc,EAAU,EAAE;IAChF,MAAM,UAAU,GAAG,IAAA,8BAAoB,EAAC,QAAQ,CAAC,CAAC;IAElD,OAAO,IAAA,6BAAmB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;AAChD,CAAC,CAAC;AAEF,kBAAe,4BAA4B,CAAC"}
@@ -0,0 +1,3 @@
1
+ declare const hasAv1Codec: (codec?: string) => boolean;
2
+ export default hasAv1Codec;
3
+ //# sourceMappingURL=hasAv1Codec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hasAv1Codec.d.ts","sourceRoot":"","sources":["../../src/videoSendingBalancer/hasAv1Codec.ts"],"names":[],"mappings":"AAIA,QAAA,MAAM,WAAW,WAAY,MAAM,KAAG,OAErC,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const hasIncludesString_1 = __importDefault(require("./hasIncludesString"));
7
+ const CODEC_AV1 = 'av1';
8
+ const hasAv1Codec = (codec) => {
9
+ return (0, hasIncludesString_1.default)(codec, CODEC_AV1);
10
+ };
11
+ exports.default = hasAv1Codec;
12
+ //# sourceMappingURL=hasAv1Codec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hasAv1Codec.js","sourceRoot":"","sources":["../../src/videoSendingBalancer/hasAv1Codec.ts"],"names":[],"mappings":";;;;;AAAA,4EAAoD;AAEpD,MAAM,SAAS,GAAG,KAAK,CAAC;AAExB,MAAM,WAAW,GAAG,CAAC,KAAc,EAAW,EAAE;IAC9C,OAAO,IAAA,2BAAiB,EAAC,KAAK,EAAE,SAAS,CAAC,CAAC;AAC7C,CAAC,CAAC;AAEF,kBAAe,WAAW,CAAC"}
@@ -0,0 +1,3 @@
1
+ declare const hasIncludesString: (source?: string, target?: string) => boolean;
2
+ export default hasIncludesString;
3
+ //# sourceMappingURL=hasIncludesString.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hasIncludesString.d.ts","sourceRoot":"","sources":["../../src/videoSendingBalancer/hasIncludesString.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,iBAAiB,YAAa,MAAM,WAAW,MAAM,KAAG,OAE7D,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const hasIncludesString = (source, target) => {
4
+ return !!source && !!target && source.toLowerCase().includes(target.toLowerCase());
5
+ };
6
+ exports.default = hasIncludesString;
7
+ //# sourceMappingURL=hasIncludesString.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hasIncludesString.js","sourceRoot":"","sources":["../../src/videoSendingBalancer/hasIncludesString.ts"],"names":[],"mappings":";;AAAA,MAAM,iBAAiB,GAAG,CAAC,MAAe,EAAE,MAAe,EAAW,EAAE;IACtE,OAAO,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;AACrF,CAAC,CAAC;AAEF,kBAAe,iBAAiB,CAAC"}
@@ -1,10 +1,11 @@
1
1
  import { EEventsMainCAM } from '../SipConnector';
2
2
  import type { TOnSetParameters, TResult } from './setEncodingsToSender';
3
- declare const processSender: ({ mainCam, resolutionMainCam, sender, track, }: {
3
+ declare const processSender: ({ mainCam, resolutionMainCam, sender, track, codec, }: {
4
4
  mainCam: EEventsMainCAM;
5
5
  resolutionMainCam?: string | undefined;
6
6
  sender: RTCRtpSender;
7
7
  track: MediaStreamTrack;
8
+ codec?: string | undefined;
8
9
  }, onSetParameters?: TOnSetParameters) => Promise<TResult>;
9
10
  export default processSender;
10
11
  //# sourceMappingURL=processSender.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"processSender.d.ts","sourceRoot":"","sources":["../../src/videoSendingBalancer/processSender.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAgGxE,QAAA,MAAM,aAAa;aAON,cAAc;;YAEf,YAAY;WACb,gBAAgB;qBAEP,gBAAgB,KACjC,QAAQ,OAAO,CAoBjB,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"processSender.d.ts","sourceRoot":"","sources":["../../src/videoSendingBalancer/processSender.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAMjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAmGxE,QAAA,MAAM,aAAa;aAQN,cAAc;;YAEf,YAAY;WACb,gBAAgB;;qBAGP,gBAAgB,KACjC,QAAQ,OAAO,CAmBjB,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -28,7 +28,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
29
  const stack_promises_1 = __importDefault(require("stack-promises"));
30
30
  const SipConnector_1 = require("../SipConnector");
31
- const getMaxBitrateByWidth_1 = __importStar(require("./getMaxBitrateByWidth"));
31
+ const getMaxBitrateByWidthAndCodec_1 = __importStar(require("./getMaxBitrateByWidthAndCodec"));
32
32
  const setEncodingsToSender_1 = __importDefault(require("./setEncodingsToSender"));
33
33
  const stackPromises = (0, stack_promises_1.default)();
34
34
  const runStackPromises = () => {
@@ -47,9 +47,9 @@ const addToStackScaleResolutionDownBySender = ({ sender, scaleResolutionDownBy,
47
47
  return (0, setEncodingsToSender_1.default)(sender, { scaleResolutionDownBy, maxBitrate }, onSetParameters);
48
48
  });
49
49
  };
50
- const downgradeResolutionSender = (sender, onSetParameters) => {
50
+ const downgradeResolutionSender = ({ sender, codec }, onSetParameters) => {
51
51
  const scaleResolutionDownByTarget = 200;
52
- const maxBitrate = getMaxBitrateByWidth_1.MINIMUM_BITRATE;
52
+ const maxBitrate = (0, getMaxBitrateByWidthAndCodec_1.getMinimumBitrate)(codec);
53
53
  return addToStackScaleResolutionDownBySender({
54
54
  sender,
55
55
  maxBitrate,
@@ -57,9 +57,9 @@ const downgradeResolutionSender = (sender, onSetParameters) => {
57
57
  scaleResolutionDownBy: scaleResolutionDownByTarget,
58
58
  });
59
59
  };
60
- const resetScaleResolutionSender = (sender, onSetParameters) => {
60
+ const resetScaleResolutionSender = ({ sender, codec }, onSetParameters) => {
61
61
  const scaleResolutionDownByTarget = 1;
62
- const maxBitrate = getMaxBitrateByWidth_1.MAXIMUM_BITRATE;
62
+ const maxBitrate = (0, getMaxBitrateByWidthAndCodec_1.getMaximumBitrate)(codec);
63
63
  return addToStackScaleResolutionDownBySender({
64
64
  sender,
65
65
  maxBitrate,
@@ -67,7 +67,7 @@ const resetScaleResolutionSender = (sender, onSetParameters) => {
67
67
  scaleResolutionDownBy: scaleResolutionDownByTarget,
68
68
  });
69
69
  };
70
- const setResolutionSender = (sender, { track, resolution, }, onSetParameters) => {
70
+ const setResolutionSender = ({ sender, track, resolution, codec, }, onSetParameters) => {
71
71
  const settings = track.getSettings();
72
72
  const widthCurrent = settings.width;
73
73
  const heightCurrent = settings.height;
@@ -76,7 +76,7 @@ const setResolutionSender = (sender, { track, resolution, }, onSetParameters) =>
76
76
  const scaleByHeight = heightCurrent / +heightTarget;
77
77
  const SCALE_MIN = 1;
78
78
  const scaleResolutionDownByTarget = Math.max(scaleByWidth, scaleByHeight, SCALE_MIN);
79
- const maxBitrate = (0, getMaxBitrateByWidth_1.default)(+widthTarget);
79
+ const maxBitrate = (0, getMaxBitrateByWidthAndCodec_1.default)(+widthTarget, codec);
80
80
  return addToStackScaleResolutionDownBySender({
81
81
  sender,
82
82
  maxBitrate,
@@ -84,15 +84,15 @@ const setResolutionSender = (sender, { track, resolution, }, onSetParameters) =>
84
84
  scaleResolutionDownBy: scaleResolutionDownByTarget,
85
85
  });
86
86
  };
87
- const processSender = ({ mainCam, resolutionMainCam, sender, track, }, onSetParameters) => {
87
+ const processSender = ({ mainCam, resolutionMainCam, sender, track, codec, }, onSetParameters) => {
88
88
  switch (mainCam) {
89
89
  case SipConnector_1.EEventsMainCAM.PAUSE_MAIN_CAM:
90
- return downgradeResolutionSender(sender, onSetParameters);
90
+ return downgradeResolutionSender({ sender, codec }, onSetParameters);
91
91
  case SipConnector_1.EEventsMainCAM.RESUME_MAIN_CAM:
92
- return resetScaleResolutionSender(sender, onSetParameters);
92
+ return resetScaleResolutionSender({ sender, codec }, onSetParameters);
93
93
  case SipConnector_1.EEventsMainCAM.MAX_MAIN_CAM_RESOLUTION:
94
94
  if (resolutionMainCam) {
95
- return setResolutionSender(sender, { track, resolution: resolutionMainCam }, onSetParameters);
95
+ return setResolutionSender({ sender, track, codec, resolution: resolutionMainCam }, onSetParameters);
96
96
  }
97
97
  }
98
98
  return Promise.resolve({
@@ -1 +1 @@
1
- {"version":3,"file":"processSender.js","sourceRoot":"","sources":["../../src/videoSendingBalancer/processSender.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"processSender.js","sourceRoot":"","sources":["../../src/videoSendingBalancer/processSender.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ declare const scaleBitrateByCodec: (bitrate: number, codec?: string) => number;
2
+ export default scaleBitrateByCodec;
3
+ //# sourceMappingURL=scaleBitrateByCodec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scaleBitrateByCodec.d.ts","sourceRoot":"","sources":["../../src/videoSendingBalancer/scaleBitrateByCodec.ts"],"names":[],"mappings":"AAIA,QAAA,MAAM,mBAAmB,YAAa,MAAM,UAAU,MAAM,KAAG,MAM9D,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const hasAv1Codec_1 = __importDefault(require("./hasAv1Codec"));
7
+ const FACTOR_CODEC_AV1 = 0.6;
8
+ const scaleBitrateByCodec = (bitrate, codec) => {
9
+ if ((0, hasAv1Codec_1.default)(codec)) {
10
+ return bitrate * FACTOR_CODEC_AV1;
11
+ }
12
+ return bitrate;
13
+ };
14
+ exports.default = scaleBitrateByCodec;
15
+ //# sourceMappingURL=scaleBitrateByCodec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scaleBitrateByCodec.js","sourceRoot":"","sources":["../../src/videoSendingBalancer/scaleBitrateByCodec.ts"],"names":[],"mappings":";;;;;AAAA,gEAAwC;AAExC,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAE7B,MAAM,mBAAmB,GAAG,CAAC,OAAe,EAAE,KAAc,EAAU,EAAE;IACtE,IAAI,IAAA,qBAAW,EAAC,KAAK,CAAC,EAAE;QACtB,OAAO,OAAO,GAAG,gBAAgB,CAAC;KACnC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF,kBAAe,mBAAmB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sip-connector",
3
- "version": "6.10.0",
3
+ "version": "6.12.0",
4
4
  "description": "Module for connect to Vinteo server",
5
5
  "keywords": [
6
6
  "webrtc",
@@ -47,23 +47,23 @@
47
47
  "webrtc-mock": "^0.0.14"
48
48
  },
49
49
  "devDependencies": {
50
- "@commitlint/cli": "^17.6.6",
51
- "@commitlint/config-conventional": "^17.6.6",
50
+ "@commitlint/cli": "^17.6.7",
51
+ "@commitlint/config-conventional": "^17.6.7",
52
52
  "@rollup/plugin-commonjs": "^22.0.2",
53
53
  "@rollup/plugin-node-resolve": "^14.1.0",
54
- "@types/jest": "^29.5.2",
55
- "@types/node": "^20.3.3",
56
- "@typescript-eslint/eslint-plugin": "^5.60.1",
57
- "@typescript-eslint/parser": "^5.60.1",
58
- "eslint": "^8.44.0",
54
+ "@types/jest": "^29.5.3",
55
+ "@types/node": "^20.4.5",
56
+ "@typescript-eslint/eslint-plugin": "^6.2.0",
57
+ "@typescript-eslint/parser": "^6.2.0",
58
+ "eslint": "^8.45.0",
59
59
  "eslint-config-prettier": "^8.8.0",
60
60
  "eslint-plugin-import": "^2.27.5",
61
- "eslint-plugin-jest": "^27.2.2",
62
- "eslint-plugin-prettier": "^4.2.1",
61
+ "eslint-plugin-jest": "^27.2.3",
62
+ "eslint-plugin-prettier": "^5.0.0",
63
63
  "husky": "^8.0.3",
64
- "jest": "29.5.0",
64
+ "jest": "29.6.1",
65
65
  "lint-staged": "^13.2.3",
66
- "prettier": "^2.8.8",
66
+ "prettier": "^3.0.0",
67
67
  "promise-delay": "^2.1.0",
68
68
  "rollup": "^2.79.1",
69
69
  "rollup-plugin-terser": "^7.0.2",