livekit-client 0.14.3 → 0.15.3

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 (119) hide show
  1. package/.github/workflows/{lint.yaml → test.yaml} +7 -4
  2. package/.gitmodules +3 -0
  3. package/README.md +46 -14
  4. package/dist/api/SignalClient.d.ts +12 -32
  5. package/dist/api/SignalClient.js +59 -8
  6. package/dist/api/SignalClient.js.map +1 -1
  7. package/dist/connect.d.ts +1 -1
  8. package/dist/connect.js +71 -73
  9. package/dist/connect.js.map +1 -1
  10. package/dist/index.d.ts +6 -4
  11. package/dist/index.js +8 -5
  12. package/dist/index.js.map +1 -1
  13. package/dist/logger.d.ts +10 -0
  14. package/dist/logger.js +15 -0
  15. package/dist/logger.js.map +1 -1
  16. package/dist/options.d.ts +83 -19
  17. package/dist/options.js +0 -10
  18. package/dist/options.js.map +1 -1
  19. package/dist/proto/livekit_models.d.ts +45 -1
  20. package/dist/proto/livekit_models.js +333 -4
  21. package/dist/proto/livekit_models.js.map +1 -1
  22. package/dist/proto/livekit_rtc.d.ts +148 -7
  23. package/dist/proto/livekit_rtc.js +1047 -30
  24. package/dist/proto/livekit_rtc.js.map +1 -1
  25. package/dist/room/PCTransport.js +4 -0
  26. package/dist/room/PCTransport.js.map +1 -1
  27. package/dist/room/RTCEngine.d.ts +4 -2
  28. package/dist/room/RTCEngine.js +36 -38
  29. package/dist/room/RTCEngine.js.map +1 -1
  30. package/dist/room/Room.d.ts +23 -17
  31. package/dist/room/Room.js +205 -71
  32. package/dist/room/Room.js.map +1 -1
  33. package/dist/room/events.d.ts +143 -14
  34. package/dist/room/events.js +142 -13
  35. package/dist/room/events.js.map +1 -1
  36. package/dist/room/participant/LocalParticipant.d.ts +53 -13
  37. package/dist/room/participant/LocalParticipant.js +244 -169
  38. package/dist/room/participant/LocalParticipant.js.map +1 -1
  39. package/dist/room/participant/Participant.d.ts +3 -1
  40. package/dist/room/participant/Participant.js +3 -1
  41. package/dist/room/participant/Participant.js.map +1 -1
  42. package/dist/room/participant/ParticipantTrackPermission.d.ts +19 -0
  43. package/dist/room/participant/ParticipantTrackPermission.js +16 -0
  44. package/dist/room/participant/ParticipantTrackPermission.js.map +1 -0
  45. package/dist/room/participant/RemoteParticipant.d.ts +2 -2
  46. package/dist/room/participant/RemoteParticipant.js +10 -15
  47. package/dist/room/participant/RemoteParticipant.js.map +1 -1
  48. package/dist/room/participant/publishUtils.d.ts +11 -0
  49. package/dist/room/participant/publishUtils.js +148 -0
  50. package/dist/room/participant/publishUtils.js.map +1 -0
  51. package/dist/room/participant/publishUtils.test.d.ts +1 -0
  52. package/dist/room/participant/publishUtils.test.js +79 -0
  53. package/dist/room/participant/publishUtils.test.js.map +1 -0
  54. package/dist/room/stats.d.ts +21 -6
  55. package/dist/room/stats.js +22 -1
  56. package/dist/room/stats.js.map +1 -1
  57. package/dist/room/track/LocalAudioTrack.d.ts +8 -3
  58. package/dist/room/track/LocalAudioTrack.js +49 -3
  59. package/dist/room/track/LocalAudioTrack.js.map +1 -1
  60. package/dist/room/track/LocalTrack.d.ts +1 -3
  61. package/dist/room/track/LocalTrack.js +3 -50
  62. package/dist/room/track/LocalTrack.js.map +1 -1
  63. package/dist/room/track/LocalTrackPublication.d.ts +3 -1
  64. package/dist/room/track/LocalTrackPublication.js +15 -5
  65. package/dist/room/track/LocalTrackPublication.js.map +1 -1
  66. package/dist/room/track/LocalVideoTrack.d.ts +14 -5
  67. package/dist/room/track/LocalVideoTrack.js +156 -62
  68. package/dist/room/track/LocalVideoTrack.js.map +1 -1
  69. package/dist/room/track/LocalVideoTrack.test.d.ts +1 -0
  70. package/dist/room/track/LocalVideoTrack.test.js +68 -0
  71. package/dist/room/track/LocalVideoTrack.test.js.map +1 -0
  72. package/dist/room/track/RemoteAudioTrack.d.ts +6 -8
  73. package/dist/room/track/RemoteAudioTrack.js +55 -19
  74. package/dist/room/track/RemoteAudioTrack.js.map +1 -1
  75. package/dist/room/track/RemoteTrack.d.ts +14 -0
  76. package/dist/room/track/RemoteTrack.js +47 -0
  77. package/dist/room/track/RemoteTrack.js.map +1 -0
  78. package/dist/room/track/RemoteTrackPublication.d.ts +10 -4
  79. package/dist/room/track/RemoteTrackPublication.js +41 -15
  80. package/dist/room/track/RemoteTrackPublication.js.map +1 -1
  81. package/dist/room/track/RemoteVideoTrack.d.ts +7 -9
  82. package/dist/room/track/RemoteVideoTrack.js +77 -41
  83. package/dist/room/track/RemoteVideoTrack.js.map +1 -1
  84. package/dist/room/track/Track.d.ts +13 -2
  85. package/dist/room/track/Track.js +34 -2
  86. package/dist/room/track/Track.js.map +1 -1
  87. package/dist/room/track/TrackPublication.d.ts +14 -1
  88. package/dist/room/track/TrackPublication.js +24 -7
  89. package/dist/room/track/TrackPublication.js.map +1 -1
  90. package/dist/room/track/create.d.ts +4 -6
  91. package/dist/room/track/create.js +10 -57
  92. package/dist/room/track/create.js.map +1 -1
  93. package/dist/room/track/defaults.d.ts +4 -0
  94. package/dist/room/track/defaults.js +21 -0
  95. package/dist/room/track/defaults.js.map +1 -0
  96. package/dist/room/track/options.d.ts +15 -65
  97. package/dist/room/track/options.js +14 -13
  98. package/dist/room/track/options.js.map +1 -1
  99. package/dist/room/track/utils.d.ts +3 -0
  100. package/dist/room/track/utils.js +68 -0
  101. package/dist/room/track/utils.js.map +1 -0
  102. package/dist/room/track/utils.test.d.ts +1 -0
  103. package/dist/room/track/utils.test.js +85 -0
  104. package/dist/room/track/utils.test.js.map +1 -0
  105. package/dist/room/utils.d.ts +1 -1
  106. package/dist/room/utils.js +5 -6
  107. package/dist/room/utils.js.map +1 -1
  108. package/dist/version.d.ts +1 -1
  109. package/dist/version.js +1 -1
  110. package/example/index.html +193 -178
  111. package/example/sample.ts +467 -327
  112. package/example/styles.css +144 -0
  113. package/example/webpack.config.js +1 -1
  114. package/jest.config.js +6 -0
  115. package/package.json +9 -6
  116. package/tsconfig.eslint.json +8 -1
  117. package/dist/room/defaults.d.ts +0 -5
  118. package/dist/room/defaults.js +0 -32
  119. package/dist/room/defaults.js.map +0 -1
package/dist/index.js CHANGED
@@ -25,11 +25,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
25
25
  return (mod && mod.__esModule) ? mod : { "default": mod };
26
26
  };
27
27
  Object.defineProperty(exports, "__esModule", { value: true });
28
- exports.VideoQuality = exports.TrackPublication = exports.RemoteTrackPublication = exports.RemoteVideoTrack = exports.RemoteAudioTrack = exports.LocalTrackPublication = exports.LocalTrack = exports.LocalVideoTrack = exports.LocalAudioTrack = exports.LocalParticipant = exports.RemoteParticipant = exports.Participant = exports.ConnectionQuality = exports.DataPacket_Kind = exports.RoomState = exports.Room = void 0;
28
+ exports.VideoQuality = exports.TrackPublication = exports.RemoteTrackPublication = exports.RemoteVideoTrack = exports.RemoteAudioTrack = exports.RemoteTrack = exports.LocalTrackPublication = exports.LocalTrack = exports.LocalVideoTrack = exports.LocalAudioTrack = exports.LocalParticipant = exports.RemoteParticipant = exports.Participant = exports.ConnectionQuality = exports.DataPacket_Kind = exports.RoomState = exports.Room = exports.setLogLevel = void 0;
29
+ const logger_1 = require("./logger");
30
+ Object.defineProperty(exports, "setLogLevel", { enumerable: true, get: function () { return logger_1.setLogLevel; } });
29
31
  const livekit_models_1 = require("./proto/livekit_models");
30
32
  Object.defineProperty(exports, "DataPacket_Kind", { enumerable: true, get: function () { return livekit_models_1.DataPacket_Kind; } });
31
- const livekit_rtc_1 = require("./proto/livekit_rtc");
32
- Object.defineProperty(exports, "VideoQuality", { enumerable: true, get: function () { return livekit_rtc_1.VideoQuality; } });
33
+ Object.defineProperty(exports, "VideoQuality", { enumerable: true, get: function () { return livekit_models_1.VideoQuality; } });
33
34
  const LocalParticipant_1 = __importDefault(require("./room/participant/LocalParticipant"));
34
35
  exports.LocalParticipant = LocalParticipant_1.default;
35
36
  const Participant_1 = __importStar(require("./room/participant/Participant"));
@@ -50,12 +51,14 @@ const LocalVideoTrack_1 = __importDefault(require("./room/track/LocalVideoTrack"
50
51
  exports.LocalVideoTrack = LocalVideoTrack_1.default;
51
52
  const RemoteAudioTrack_1 = __importDefault(require("./room/track/RemoteAudioTrack"));
52
53
  exports.RemoteAudioTrack = RemoteAudioTrack_1.default;
54
+ const RemoteTrack_1 = __importDefault(require("./room/track/RemoteTrack"));
55
+ exports.RemoteTrack = RemoteTrack_1.default;
53
56
  const RemoteTrackPublication_1 = __importDefault(require("./room/track/RemoteTrackPublication"));
54
57
  exports.RemoteTrackPublication = RemoteTrackPublication_1.default;
55
58
  const RemoteVideoTrack_1 = __importDefault(require("./room/track/RemoteVideoTrack"));
56
59
  exports.RemoteVideoTrack = RemoteVideoTrack_1.default;
57
- const TrackPublication_1 = __importDefault(require("./room/track/TrackPublication"));
58
- exports.TrackPublication = TrackPublication_1.default;
60
+ const TrackPublication_1 = require("./room/track/TrackPublication");
61
+ Object.defineProperty(exports, "TrackPublication", { enumerable: true, get: function () { return TrackPublication_1.TrackPublication; } });
59
62
  __exportStar(require("./connect"), exports);
60
63
  __exportStar(require("./options"), exports);
61
64
  __exportStar(require("./room/errors"), exports);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2DAAyD;AA2BvD,gGA3BO,gCAAe,OA2BP;AA1BjB,qDAAmD;AAuCjD,6FAvCO,0BAAY,OAuCP;AAtCd,2FAAmE;AA6BjE,2BA7BK,0BAAgB,CA6BL;AA5BlB,8EAAgF;AA0B9E,sBA1BK,qBAAW,CA0BL;AADX,kGAzBoB,+BAAiB,OAyBpB;AAxBnB,6FAAqE;AA0BnE,4BA1BK,2BAAiB,CA0BL;AAzBnB,oDAA8C;AAoB5C,eApBK,cAAI,CAoBL;AACJ,0FArBa,gBAAS,OAqBb;AApBX,mFAA2D;AA0BzD,0BA1BK,yBAAe,CA0BL;AAzBjB,yEAAiD;AA2B/C,qBA3BK,oBAAU,CA2BL;AA1BZ,+FAAuE;AA2BrE,gCA3BK,+BAAqB,CA2BL;AA1BvB,mFAA2D;AAwBzD,0BAxBK,yBAAe,CAwBL;AAvBjB,qFAA6D;AA0B3D,2BA1BK,0BAAgB,CA0BL;AAzBlB,iGAAyE;AA2BvE,iCA3BK,gCAAsB,CA2BL;AA1BxB,qFAA6D;AAyB3D,2BAzBK,0BAAgB,CAyBL;AAxBlB,qFAA6D;AA0B3D,2BA1BK,0BAAgB,CA0BL;AAxBlB,4CAA0B;AAC1B,4CAA0B;AAC1B,gDAA8B;AAC9B,gDAA8B;AAC9B,sDAAoC;AACpC,uDAAqC;AACrC,qDAAmC;AACnC,qDAAmC;AACnC,4CAA0B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAuC;AA2BrC,4FA3BO,oBAAW,OA2BP;AA1Bb,2DAAuE;AA6BrE,gGA7BO,gCAAe,OA6BP;AAef,6FA5CwB,6BAAY,OA4CxB;AA3Cd,2FAAmE;AAgCjE,2BAhCK,0BAAgB,CAgCL;AA/BlB,8EAAgF;AA6B9E,sBA7BK,qBAAW,CA6BL;AADX,kGA5BoB,+BAAiB,OA4BpB;AA1BnB,6FAAqE;AA4BnE,4BA5BK,2BAAiB,CA4BL;AA3BnB,oDAA8C;AAsB5C,eAtBK,cAAI,CAsBL;AACJ,0FAvBa,gBAAS,OAuBb;AAtBX,mFAA2D;AA4BzD,0BA5BK,yBAAe,CA4BL;AA3BjB,yEAAiD;AA6B/C,qBA7BK,oBAAU,CA6BL;AA5BZ,+FAAuE;AA6BrE,gCA7BK,+BAAqB,CA6BL;AA5BvB,mFAA2D;AA0BzD,0BA1BK,yBAAe,CA0BL;AAzBjB,qFAA6D;AA6B3D,2BA7BK,0BAAgB,CA6BL;AA5BlB,2EAAmD;AA2BjD,sBA3BK,qBAAW,CA2BL;AA1Bb,iGAAyE;AA6BvE,iCA7BK,gCAAsB,CA6BL;AA5BxB,qFAA6D;AA2B3D,2BA3BK,0BAAgB,CA2BL;AA1BlB,oEAAiE;AA6B/D,iGA7BO,mCAAgB,OA6BP;AA3BlB,4CAA0B;AAC1B,4CAA0B;AAC1B,gDAA8B;AAC9B,gDAA8B;AAC9B,sDAAoC;AACpC,uDAAqC;AACrC,qDAAmC;AACnC,qDAAmC;AACnC,4CAA0B"}
package/dist/logger.d.ts CHANGED
@@ -1,3 +1,13 @@
1
1
  import log from 'loglevel';
2
+ export declare type LogLevelDesc = 'trace' | 'debug' | 'info' | 'warn' | 'error' | 'silent';
3
+ export declare enum LogLevel {
4
+ trace = "trace",
5
+ debug = "debug",
6
+ info = "info",
7
+ warn = "warn",
8
+ error = "error",
9
+ silent = "silent"
10
+ }
2
11
  declare const livekitLogger: log.Logger;
3
12
  export default livekitLogger;
13
+ export declare function setLogLevel(level: LogLevel | LogLevelDesc): void;
package/dist/logger.js CHANGED
@@ -3,7 +3,22 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.setLogLevel = exports.LogLevel = void 0;
6
7
  const loglevel_1 = __importDefault(require("loglevel"));
8
+ var LogLevel;
9
+ (function (LogLevel) {
10
+ LogLevel["trace"] = "trace";
11
+ LogLevel["debug"] = "debug";
12
+ LogLevel["info"] = "info";
13
+ LogLevel["warn"] = "warn";
14
+ LogLevel["error"] = "error";
15
+ LogLevel["silent"] = "silent";
16
+ })(LogLevel = exports.LogLevel || (exports.LogLevel = {}));
7
17
  const livekitLogger = loglevel_1.default.getLogger('livekit');
18
+ livekitLogger.setLevel(LogLevel.info);
8
19
  exports.default = livekitLogger;
20
+ function setLogLevel(level) {
21
+ livekitLogger.setLevel(level);
22
+ }
23
+ exports.setLogLevel = setLogLevel;
9
24
  //# sourceMappingURL=logger.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":";;;;;AAAA,wDAA2B;AAE3B,MAAM,aAAa,GAAG,kBAAG,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;AAE/C,kBAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":";;;;;;AAAA,wDAA2B;AAI3B,IAAY,QAOX;AAPD,WAAY,QAAQ;IAClB,2BAAe,CAAA;IACf,2BAAe,CAAA;IACf,yBAAa,CAAA;IACb,yBAAa,CAAA;IACb,2BAAe,CAAA;IACf,6BAAiB,CAAA;AACnB,CAAC,EAPW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAOnB;AAED,MAAM,aAAa,GAAG,kBAAG,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;AAE/C,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAEtC,kBAAe,aAAa,CAAC;AAE7B,SAAgB,WAAW,CAAC,KAA8B;IACxD,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC;AAFD,kCAEC"}
package/dist/options.d.ts CHANGED
@@ -1,4 +1,59 @@
1
- import { CreateLocalTracksOptions, TrackCaptureDefaults, TrackPublishDefaults } from './room/track/options';
1
+ import { LogLevel, LogLevelDesc } from './logger';
2
+ import { AudioCaptureOptions, CreateLocalTracksOptions, TrackPublishDefaults, VideoCaptureOptions } from './room/track/options';
3
+ /**
4
+ * Options for when creating a new room
5
+ */
6
+ export interface RoomOptions {
7
+ /**
8
+ * AdaptiveStream lets LiveKit automatically manage quality of subscribed
9
+ * video tracks to optimize for bandwidth and CPU.
10
+ * When attached video elements are visible, it'll choose an appropriate
11
+ * resolution based on the size of largest video element it's attached to.
12
+ *
13
+ * When none of the video elements are visible, it'll temporarily pause
14
+ * the data flow until they are visible again.
15
+ */
16
+ adaptiveStream?: boolean;
17
+ /**
18
+ * enable Dynacast, off by default. With Dynacast dynamically pauses
19
+ * video layers that are not being consumed by any subscribers, significantly
20
+ * reducing publishing CPU and bandwidth usage.
21
+ */
22
+ dynacast?: boolean;
23
+ /**
24
+ * default options to use when capturing user's audio
25
+ */
26
+ audioCaptureDefaults?: AudioCaptureOptions;
27
+ /**
28
+ * default options to use when capturing user's video
29
+ */
30
+ videoCaptureDefaults?: VideoCaptureOptions;
31
+ /**
32
+ * default options to use when publishing tracks
33
+ */
34
+ publishDefaults?: TrackPublishDefaults;
35
+ /**
36
+ * should local tracks be stopped when they are unpublished. defaults to true
37
+ * set this to false if you would prefer to clean up unpublished local tracks manually.
38
+ */
39
+ stopLocalTrackOnUnpublish?: boolean;
40
+ /**
41
+ * @internal
42
+ * experimental flag, disable client managed layer pause when publishing capability is limited
43
+ */
44
+ expDisableLayerPause?: boolean;
45
+ }
46
+ /**
47
+ * Options for Room.connect()
48
+ */
49
+ export interface RoomConnectOptions {
50
+ /** autosubscribe to room tracks after joining, defaults to true */
51
+ autoSubscribe?: boolean;
52
+ /**
53
+ * use to override any RTCConfiguration options.
54
+ */
55
+ rtcConfig?: RTCConfiguration;
56
+ }
2
57
  /**
3
58
  * if video or audio tracks are created as part of [[connect]], it'll automatically
4
59
  * publish those tracks to the room.
@@ -7,17 +62,20 @@ export interface ConnectOptions extends CreateLocalTracksOptions {
7
62
  /** autosubscribe to room tracks upon connect, defaults to true */
8
63
  autoSubscribe?: boolean;
9
64
  /**
10
- * automatically manage quality of subscribed video tracks, subscribe to the
11
- * an appropriate resolution based on the size of the video elements that tracks
12
- * are attached to.
13
- *
14
- * also observes the visibility of attached tracks and pauses receiving data
15
- * if they are not visible.
16
- *
65
+ * see [[RoomOptions.adaptiveStream]]
66
+ */
67
+ adaptiveStream?: boolean;
68
+ /**
69
+ * alias for adaptiveStream
70
+ * @deprecated
17
71
  */
18
72
  autoManageVideo?: boolean;
73
+ /**
74
+ * see [[RoomOptions.dynacast]]
75
+ */
76
+ dynacast?: boolean;
19
77
  /** configures LiveKit internal log level */
20
- logLevel?: LogLevel;
78
+ logLevel?: LogLevel | LogLevelDesc;
21
79
  /**
22
80
  * set ICE servers. When deployed correctly, LiveKit automatically uses the built-in TURN servers
23
81
  */
@@ -39,19 +97,25 @@ export interface ConnectOptions extends CreateLocalTracksOptions {
39
97
  */
40
98
  video?: boolean;
41
99
  /**
42
- * default options to use when capturing user media
100
+ * default options to use when capturing user's audio
101
+ */
102
+ audioCaptureDefaults?: AudioCaptureOptions;
103
+ /**
104
+ * default options to use when capturing user's video
43
105
  */
44
- captureDefaults?: TrackCaptureDefaults;
106
+ videoCaptureDefaults?: VideoCaptureOptions;
45
107
  /**
46
108
  * default options to use when publishing tracks
47
109
  */
48
110
  publishDefaults?: TrackPublishDefaults;
49
- }
50
- export declare enum LogLevel {
51
- trace = "trace",
52
- debug = "debug",
53
- info = "info",
54
- warn = "warn",
55
- error = "error",
56
- silent = "silent"
111
+ /**
112
+ * should local tracks be stopped when they are unpublished. defaults to true
113
+ * set this to false if you would prefer to clean up unpublished local tracks manually.
114
+ */
115
+ stopLocalTrackOnUnpublish?: boolean;
116
+ /**
117
+ * @internal
118
+ * experimental flag, disable client managed layer pause when publishing capability is limited
119
+ */
120
+ expDisableLayerPause?: boolean;
57
121
  }
package/dist/options.js CHANGED
@@ -1,13 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LogLevel = void 0;
4
- var LogLevel;
5
- (function (LogLevel) {
6
- LogLevel["trace"] = "trace";
7
- LogLevel["debug"] = "debug";
8
- LogLevel["info"] = "info";
9
- LogLevel["warn"] = "warn";
10
- LogLevel["error"] = "error";
11
- LogLevel["silent"] = "silent";
12
- })(LogLevel = exports.LogLevel || (exports.LogLevel = {}));
13
3
  //# sourceMappingURL=options.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":";;;AA6DA,IAAY,QAOX;AAPD,WAAY,QAAQ;IAClB,2BAAe,CAAA;IACf,2BAAe,CAAA;IACf,yBAAa,CAAA;IACb,yBAAa,CAAA;IACb,2BAAe,CAAA;IACf,6BAAiB,CAAA;AACnB,CAAC,EAPW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAOnB"}
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":""}
@@ -18,6 +18,15 @@ export declare enum TrackSource {
18
18
  }
19
19
  export declare function trackSourceFromJSON(object: any): TrackSource;
20
20
  export declare function trackSourceToJSON(object: TrackSource): string;
21
+ export declare enum VideoQuality {
22
+ LOW = 0,
23
+ MEDIUM = 1,
24
+ HIGH = 2,
25
+ OFF = 3,
26
+ UNRECOGNIZED = -1
27
+ }
28
+ export declare function videoQualityFromJSON(object: any): VideoQuality;
29
+ export declare function videoQualityToJSON(object: VideoQuality): string;
21
30
  export declare enum ConnectionQuality {
22
31
  POOR = 0,
23
32
  GOOD = 1,
@@ -36,6 +45,7 @@ export interface Room {
36
45
  enabledCodecs: Codec[];
37
46
  metadata: string;
38
47
  numParticipants: number;
48
+ activeRecording: boolean;
39
49
  }
40
50
  export interface Codec {
41
51
  mime: string;
@@ -49,8 +59,9 @@ export interface ParticipantInfo {
49
59
  metadata: string;
50
60
  /** timestamp when participant joined room, in seconds */
51
61
  joinedAt: number;
52
- /** hidden participant (used for recording) */
53
62
  hidden: boolean;
63
+ recorder: boolean;
64
+ name: string;
54
65
  }
55
66
  export declare enum ParticipantInfo_State {
56
67
  /** JOINING - websocket' connected, but not offered yet */
@@ -83,6 +94,20 @@ export interface TrackInfo {
83
94
  disableDtx: boolean;
84
95
  /** source of media */
85
96
  source: TrackSource;
97
+ layers: VideoLayer[];
98
+ /** mime type of codec */
99
+ mimeType: string;
100
+ mid: string;
101
+ }
102
+ /** provide information about available spatial layers */
103
+ export interface VideoLayer {
104
+ /** for tracks with a single layer, this should be HIGH */
105
+ quality: VideoQuality;
106
+ width: number;
107
+ height: number;
108
+ /** target bitrate, server will measure actual */
109
+ bitrate: number;
110
+ ssrc: number;
86
111
  }
87
112
  /** new DataPacket API */
88
113
  export interface DataPacket {
@@ -115,6 +140,11 @@ export interface UserPacket {
115
140
  /** the ID of the participants who will receive the message (the message will be sent to all the people in the room if this variable is empty) */
116
141
  destinationSids: string[];
117
142
  }
143
+ export interface ParticipantTracks {
144
+ /** participant ID of participant to whom the tracks belong */
145
+ participantSid: string;
146
+ trackSids: string[];
147
+ }
118
148
  export declare const Room: {
119
149
  encode(message: Room, writer?: _m0.Writer): _m0.Writer;
120
150
  decode(input: _m0.Reader | Uint8Array, length?: number | undefined): Room;
@@ -143,6 +173,13 @@ export declare const TrackInfo: {
143
173
  toJSON(message: TrackInfo): unknown;
144
174
  fromPartial(object: DeepPartial<TrackInfo>): TrackInfo;
145
175
  };
176
+ export declare const VideoLayer: {
177
+ encode(message: VideoLayer, writer?: _m0.Writer): _m0.Writer;
178
+ decode(input: _m0.Reader | Uint8Array, length?: number | undefined): VideoLayer;
179
+ fromJSON(object: any): VideoLayer;
180
+ toJSON(message: VideoLayer): unknown;
181
+ fromPartial(object: DeepPartial<VideoLayer>): VideoLayer;
182
+ };
146
183
  export declare const DataPacket: {
147
184
  encode(message: DataPacket, writer?: _m0.Writer): _m0.Writer;
148
185
  decode(input: _m0.Reader | Uint8Array, length?: number | undefined): DataPacket;
@@ -171,6 +208,13 @@ export declare const UserPacket: {
171
208
  toJSON(message: UserPacket): unknown;
172
209
  fromPartial(object: DeepPartial<UserPacket>): UserPacket;
173
210
  };
211
+ export declare const ParticipantTracks: {
212
+ encode(message: ParticipantTracks, writer?: _m0.Writer): _m0.Writer;
213
+ decode(input: _m0.Reader | Uint8Array, length?: number | undefined): ParticipantTracks;
214
+ fromJSON(object: any): ParticipantTracks;
215
+ toJSON(message: ParticipantTracks): unknown;
216
+ fromPartial(object: DeepPartial<ParticipantTracks>): ParticipantTracks;
217
+ };
174
218
  declare type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
175
219
  export declare type DeepPartial<T> = T extends Builtin ? T : T extends Array<infer U> ? Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? {
176
220
  [K in keyof T]?: DeepPartial<T[K]>;