livekit-client 0.15.0 → 0.15.1

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 (74) hide show
  1. package/.gitmodules +3 -0
  2. package/README.md +21 -4
  3. package/dist/api/SignalClient.d.ts +3 -1
  4. package/dist/api/SignalClient.js +12 -1
  5. package/dist/api/SignalClient.js.map +1 -1
  6. package/dist/connect.js +3 -0
  7. package/dist/connect.js.map +1 -1
  8. package/dist/index.d.ts +1 -0
  9. package/dist/index.js +1 -0
  10. package/dist/index.js.map +1 -1
  11. package/dist/logger.js +1 -0
  12. package/dist/logger.js.map +1 -1
  13. package/dist/options.d.ts +23 -14
  14. package/dist/proto/livekit_rtc.d.ts +65 -0
  15. package/dist/proto/livekit_rtc.js +481 -3
  16. package/dist/proto/livekit_rtc.js.map +1 -1
  17. package/dist/room/RTCEngine.d.ts +2 -0
  18. package/dist/room/RTCEngine.js +25 -31
  19. package/dist/room/RTCEngine.js.map +1 -1
  20. package/dist/room/Room.d.ts +7 -0
  21. package/dist/room/Room.js +72 -54
  22. package/dist/room/Room.js.map +1 -1
  23. package/dist/room/events.d.ts +22 -6
  24. package/dist/room/events.js +21 -5
  25. package/dist/room/events.js.map +1 -1
  26. package/dist/room/participant/LocalParticipant.d.ts +2 -0
  27. package/dist/room/participant/LocalParticipant.js +26 -5
  28. package/dist/room/participant/LocalParticipant.js.map +1 -1
  29. package/dist/room/participant/RemoteParticipant.d.ts +1 -1
  30. package/dist/room/participant/RemoteParticipant.js +5 -3
  31. package/dist/room/participant/RemoteParticipant.js.map +1 -1
  32. package/dist/room/participant/publishUtils.d.ts +1 -1
  33. package/dist/room/participant/publishUtils.js +3 -3
  34. package/dist/room/participant/publishUtils.js.map +1 -1
  35. package/dist/room/participant/publishUtils.test.js +1 -1
  36. package/dist/room/participant/publishUtils.test.js.map +1 -1
  37. package/dist/room/stats.d.ts +21 -6
  38. package/dist/room/stats.js +22 -1
  39. package/dist/room/stats.js.map +1 -1
  40. package/dist/room/track/LocalAudioTrack.d.ts +5 -1
  41. package/dist/room/track/LocalAudioTrack.js +45 -1
  42. package/dist/room/track/LocalAudioTrack.js.map +1 -1
  43. package/dist/room/track/LocalTrack.d.ts +3 -0
  44. package/dist/room/track/LocalTrack.js +5 -0
  45. package/dist/room/track/LocalTrack.js.map +1 -1
  46. package/dist/room/track/LocalVideoTrack.d.ts +7 -0
  47. package/dist/room/track/LocalVideoTrack.js +111 -47
  48. package/dist/room/track/LocalVideoTrack.js.map +1 -1
  49. package/dist/room/track/RemoteAudioTrack.d.ts +7 -0
  50. package/dist/room/track/RemoteAudioTrack.js +61 -0
  51. package/dist/room/track/RemoteAudioTrack.js.map +1 -1
  52. package/dist/room/track/RemoteTrackPublication.d.ts +1 -1
  53. package/dist/room/track/RemoteTrackPublication.js +8 -8
  54. package/dist/room/track/RemoteTrackPublication.js.map +1 -1
  55. package/dist/room/track/RemoteVideoTrack.d.ts +9 -3
  56. package/dist/room/track/RemoteVideoTrack.js +71 -6
  57. package/dist/room/track/RemoteVideoTrack.js.map +1 -1
  58. package/dist/room/track/Track.d.ts +9 -0
  59. package/dist/room/track/Track.js +28 -0
  60. package/dist/room/track/Track.js.map +1 -1
  61. package/dist/room/track/create.d.ts +23 -0
  62. package/dist/room/track/create.js +125 -0
  63. package/dist/room/track/create.js.map +1 -0
  64. package/dist/room/track/defaults.d.ts +4 -0
  65. package/dist/room/track/defaults.js +21 -0
  66. package/dist/room/track/defaults.js.map +1 -0
  67. package/dist/room/utils.d.ts +1 -1
  68. package/dist/room/utils.js +5 -6
  69. package/dist/room/utils.js.map +1 -1
  70. package/dist/version.d.ts +1 -1
  71. package/dist/version.js +1 -1
  72. package/example/index.html +14 -3
  73. package/example/sample.ts +52 -6
  74. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"LocalVideoTrack.js","sourceRoot":"","sources":["../../../src/room/track/LocalVideoTrack.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LocalVideoTrack.js","sourceRoot":"","sources":["../../../src/room/track/LocalVideoTrack.ts"],"names":[],"mappings":"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"}
@@ -2,9 +2,16 @@ import { Track } from './Track';
2
2
  export default class RemoteAudioTrack extends Track {
3
3
  /** @internal */
4
4
  receiver?: RTCRtpReceiver;
5
+ private _currentBitrate;
6
+ private prevStats?;
5
7
  constructor(mediaTrack: MediaStreamTrack, sid: string, receiver?: RTCRtpReceiver);
8
+ /** current receive bits per second */
9
+ get currentBitrate(): number;
6
10
  /** @internal */
7
11
  setMuted(muted: boolean): void;
8
12
  start(): void;
9
13
  stop(): void;
14
+ startMonitor(): void;
15
+ private monitorReceiver;
16
+ private getReceiverStats;
10
17
  }
@@ -1,13 +1,42 @@
1
1
  "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
12
  const events_1 = require("../events");
13
+ const stats_1 = require("../stats");
4
14
  const Track_1 = require("./Track");
5
15
  class RemoteAudioTrack extends Track_1.Track {
6
16
  constructor(mediaTrack, sid, receiver) {
7
17
  super(mediaTrack, Track_1.Track.Kind.Audio);
18
+ this._currentBitrate = 0;
19
+ this.monitorReceiver = () => __awaiter(this, void 0, void 0, function* () {
20
+ if (!this.receiver) {
21
+ this._currentBitrate = 0;
22
+ return;
23
+ }
24
+ const stats = yield this.getReceiverStats();
25
+ if (stats && this.prevStats) {
26
+ this._currentBitrate = stats_1.computeBitrate(stats, this.prevStats);
27
+ }
28
+ this.prevStats = stats;
29
+ setTimeout(() => {
30
+ this.monitorReceiver();
31
+ }, stats_1.monitorFrequency);
32
+ });
8
33
  this.sid = sid;
9
34
  this.receiver = receiver;
10
35
  }
36
+ /** current receive bits per second */
37
+ get currentBitrate() {
38
+ return this._currentBitrate;
39
+ }
11
40
  /** @internal */
12
41
  setMuted(muted) {
13
42
  if (this.isMuted !== muted) {
@@ -23,6 +52,38 @@ class RemoteAudioTrack extends Track_1.Track {
23
52
  // use `enabled` of track to enable re-use of transceiver
24
53
  super.disable();
25
54
  }
55
+ /* @internal */
56
+ startMonitor() {
57
+ setTimeout(() => {
58
+ this.monitorReceiver();
59
+ }, stats_1.monitorFrequency);
60
+ }
61
+ getReceiverStats() {
62
+ return __awaiter(this, void 0, void 0, function* () {
63
+ if (!this.receiver) {
64
+ return;
65
+ }
66
+ const stats = yield this.receiver.getStats();
67
+ let receiverStats;
68
+ stats.forEach((v) => {
69
+ if (v.type === 'inbound-rtp') {
70
+ receiverStats = {
71
+ type: 'audio',
72
+ timestamp: v.timestamp,
73
+ jitter: v.jitter,
74
+ bytesReceived: v.bytesReceived,
75
+ concealedSamples: v.concealedSamples,
76
+ concealmentEvents: v.concealmentEvents,
77
+ silentConcealedSamples: v.silentConcealedSamples,
78
+ silentConcealmentEvents: v.silentConcealmentEvents,
79
+ totalAudioEnergy: v.totalAudioEnergy,
80
+ totalSamplesDuration: v.totalSamplesDuration,
81
+ };
82
+ }
83
+ });
84
+ return receiverStats;
85
+ });
86
+ }
26
87
  }
27
88
  exports.default = RemoteAudioTrack;
28
89
  //# sourceMappingURL=RemoteAudioTrack.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RemoteAudioTrack.js","sourceRoot":"","sources":["../../../src/room/track/RemoteAudioTrack.ts"],"names":[],"mappings":";;AAAA,sCAAuC;AACvC,mCAAgC;AAEhC,MAAqB,gBAAiB,SAAQ,aAAK;IAIjD,YACE,UAA4B,EAC5B,GAAW,EACX,QAAyB;QAEzB,KAAK,CAAC,UAAU,EAAE,aAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,gBAAgB;IAChB,QAAQ,CAAC,KAAc;QACrB,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,EAAE;YAC1B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACrB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,mBAAU,CAAC,KAAK,CAAC,CAAC,CAAC,mBAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;SAChE;IACH,CAAC;IAED,KAAK;QACH,yDAAyD;QACzD,KAAK,CAAC,MAAM,EAAE,CAAC;IACjB,CAAC;IAED,IAAI;QACF,yDAAyD;QACzD,KAAK,CAAC,OAAO,EAAE,CAAC;IAClB,CAAC;CACF;AA/BD,mCA+BC"}
1
+ {"version":3,"file":"RemoteAudioTrack.js","sourceRoot":"","sources":["../../../src/room/track/RemoteAudioTrack.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,sCAAuC;AACvC,oCAAgF;AAChF,mCAAgC;AAEhC,MAAqB,gBAAiB,SAAQ,aAAK;IAQjD,YACE,UAA4B,EAC5B,GAAW,EACX,QAAyB;QAEzB,KAAK,CAAC,UAAU,EAAE,aAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAT9B,oBAAe,GAAW,CAAC,CAAC;QA4C5B,oBAAe,GAAG,GAAS,EAAE;YACnC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;gBAClB,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC;gBACzB,OAAO;aACR;YACD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAE5C,IAAI,KAAK,IAAI,IAAI,CAAC,SAAS,EAAE;gBAC3B,IAAI,CAAC,eAAe,GAAG,sBAAc,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;aAC9D;YAED,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,UAAU,CAAC,GAAG,EAAE;gBACd,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,CAAC,EAAE,wBAAgB,CAAC,CAAC;QACvB,CAAC,CAAA,CAAC;QAjDA,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,sCAAsC;IACtC,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED,gBAAgB;IAChB,QAAQ,CAAC,KAAc;QACrB,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,EAAE;YAC1B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACrB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,mBAAU,CAAC,KAAK,CAAC,CAAC,CAAC,mBAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;SAChE;IACH,CAAC;IAED,KAAK;QACH,yDAAyD;QACzD,KAAK,CAAC,MAAM,EAAE,CAAC;IACjB,CAAC;IAED,IAAI;QACF,yDAAyD;QACzD,KAAK,CAAC,OAAO,EAAE,CAAC;IAClB,CAAC;IAED,eAAe;IACf,YAAY;QACV,UAAU,CAAC,GAAG,EAAE;YACd,IAAI,CAAC,eAAe,EAAE,CAAC;QACzB,CAAC,EAAE,wBAAgB,CAAC,CAAC;IACvB,CAAC;IAmBa,gBAAgB;;YAC5B,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;gBAClB,OAAO;aACR;YAED,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;YAC7C,IAAI,aAA6C,CAAC;YAClD,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;gBAClB,IAAI,CAAC,CAAC,IAAI,KAAK,aAAa,EAAE;oBAC5B,aAAa,GAAG;wBACd,IAAI,EAAE,OAAO;wBACb,SAAS,EAAE,CAAC,CAAC,SAAS;wBACtB,MAAM,EAAE,CAAC,CAAC,MAAM;wBAChB,aAAa,EAAE,CAAC,CAAC,aAAa;wBAC9B,gBAAgB,EAAE,CAAC,CAAC,gBAAgB;wBACpC,iBAAiB,EAAE,CAAC,CAAC,iBAAiB;wBACtC,sBAAsB,EAAE,CAAC,CAAC,sBAAsB;wBAChD,uBAAuB,EAAE,CAAC,CAAC,uBAAuB;wBAClD,gBAAgB,EAAE,CAAC,CAAC,gBAAgB;wBACpC,oBAAoB,EAAE,CAAC,CAAC,oBAAoB;qBAC7C,CAAC;iBACH;YACH,CAAC,CAAC,CAAC;YACH,OAAO,aAAa,CAAC;QACvB,CAAC;KAAA;CACF;AA1FD,mCA0FC"}
@@ -35,7 +35,7 @@ export default class RemoteTrackPublication extends TrackPublication {
35
35
  setTrack(track?: Track): void;
36
36
  /** @internal */
37
37
  updateInfo(info: TrackInfo): void;
38
- protected get isAutoManageVideo(): boolean;
38
+ protected get isAdaptiveStream(): boolean;
39
39
  protected handleVisibilityChange: (visible: boolean) => void;
40
40
  protected handleVideoDimensionsChange: (dimensions: Track.Dimensions) => void;
41
41
  protected emitTrackUpdate(): void;
@@ -15,12 +15,12 @@ class RemoteTrackPublication extends TrackPublication_1.default {
15
15
  this.disabled = false;
16
16
  this.currentVideoQuality = livekit_models_1.VideoQuality.HIGH;
17
17
  this.handleVisibilityChange = (visible) => {
18
- logger_1.default.debug('automanage video visibility', this.trackSid, `visible=${visible}`);
18
+ logger_1.default.debug('adaptivestream video visibility', this.trackSid, `visible=${visible}`);
19
19
  this.disabled = !visible;
20
20
  this.emitTrackUpdate();
21
21
  };
22
22
  this.handleVideoDimensionsChange = (dimensions) => {
23
- logger_1.default.debug('automanage video dimensions', this.trackSid, `${dimensions.width}x${dimensions.height}`);
23
+ logger_1.default.debug('adaptivestream video dimensions', this.trackSid, `${dimensions.width}x${dimensions.height}`);
24
24
  this.videoDimensions = dimensions;
25
25
  this.emitTrackUpdate();
26
26
  };
@@ -53,10 +53,10 @@ class RemoteTrackPublication extends TrackPublication_1.default {
53
53
  * @param enabled
54
54
  */
55
55
  setEnabled(enabled) {
56
- if (this.isAutoManageVideo || !this.isSubscribed || this.disabled === !enabled) {
56
+ if (this.isAdaptiveStream || !this.isSubscribed || this.disabled === !enabled) {
57
57
  return;
58
58
  }
59
- if (this.track instanceof RemoteVideoTrack_1.default && this.track.isAutoManaged) {
59
+ if (this.track instanceof RemoteVideoTrack_1.default && this.track.isAdaptiveStream) {
60
60
  return;
61
61
  }
62
62
  this.disabled = !enabled;
@@ -70,7 +70,7 @@ class RemoteTrackPublication extends TrackPublication_1.default {
70
70
  * optimize for uninterrupted video
71
71
  */
72
72
  setVideoQuality(quality) {
73
- if (this.isAutoManageVideo || !this.isSubscribed || this.currentVideoQuality === quality) {
73
+ if (this.isAdaptiveStream || !this.isSubscribed || this.currentVideoQuality === quality) {
74
74
  return;
75
75
  }
76
76
  this.currentVideoQuality = quality;
@@ -79,7 +79,7 @@ class RemoteTrackPublication extends TrackPublication_1.default {
79
79
  }
80
80
  setVideoDimensions(dimensions) {
81
81
  var _a, _b;
82
- if (!this.isSubscribed || this.isAutoManageVideo) {
82
+ if (!this.isSubscribed || this.isAdaptiveStream) {
83
83
  return;
84
84
  }
85
85
  if (((_a = this.videoDimensions) === null || _a === void 0 ? void 0 : _a.width) === dimensions.width
@@ -113,8 +113,8 @@ class RemoteTrackPublication extends TrackPublication_1.default {
113
113
  this.metadataMuted = info.muted;
114
114
  (_a = this.track) === null || _a === void 0 ? void 0 : _a.setMuted(info.muted);
115
115
  }
116
- get isAutoManageVideo() {
117
- return this.track instanceof RemoteVideoTrack_1.default && this.track.isAutoManaged;
116
+ get isAdaptiveStream() {
117
+ return this.track instanceof RemoteVideoTrack_1.default && this.track.isAdaptiveStream;
118
118
  }
119
119
  emitTrackUpdate() {
120
120
  const settings = livekit_rtc_1.UpdateTrackSettings.fromPartial({
@@ -1 +1 @@
1
- {"version":3,"file":"RemoteTrackPublication.js","sourceRoot":"","sources":["../../../src/room/track/RemoteTrackPublication.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RemoteTrackPublication.js","sourceRoot":"","sources":["../../../src/room/track/RemoteTrackPublication.ts"],"names":[],"mappings":"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"}
@@ -4,11 +4,14 @@ export default class RemoteVideoTrack extends Track {
4
4
  receiver?: RTCRtpReceiver;
5
5
  private prevStats?;
6
6
  private elementInfos;
7
- private autoManaged?;
7
+ private adaptiveStream?;
8
8
  private lastVisible?;
9
9
  private lastDimensions?;
10
- constructor(mediaTrack: MediaStreamTrack, sid: string, receiver?: RTCRtpReceiver, autoManaged?: boolean);
11
- get isAutoManaged(): boolean;
10
+ private _currentBitrate;
11
+ constructor(mediaTrack: MediaStreamTrack, sid: string, receiver?: RTCRtpReceiver, adaptiveStream?: boolean);
12
+ get isAdaptiveStream(): boolean;
13
+ /** current receive bits per second */
14
+ get currentBitrate(): number;
12
15
  /** @internal */
13
16
  setMuted(muted: boolean): void;
14
17
  attach(): HTMLMediaElement;
@@ -17,6 +20,9 @@ export default class RemoteVideoTrack extends Track {
17
20
  detach(element: HTMLMediaElement): HTMLMediaElement;
18
21
  start(): void;
19
22
  stop(): void;
23
+ startMonitor(): void;
24
+ private monitorReceiver;
25
+ private getReceiverStats;
20
26
  private stopObservingElement;
21
27
  private handleVisibilityChanged;
22
28
  private readonly debouncedHandleResize;
@@ -1,14 +1,39 @@
1
1
  "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
12
  const ts_debounce_1 = require("ts-debounce");
4
13
  const events_1 = require("../events");
14
+ const stats_1 = require("../stats");
5
15
  const utils_1 = require("../utils");
6
16
  const Track_1 = require("./Track");
7
17
  const REACTION_DELAY = 100;
8
18
  class RemoteVideoTrack extends Track_1.Track {
9
- constructor(mediaTrack, sid, receiver, autoManaged) {
19
+ constructor(mediaTrack, sid, receiver, adaptiveStream) {
10
20
  super(mediaTrack, Track_1.Track.Kind.Video);
11
21
  this.elementInfos = [];
22
+ this._currentBitrate = 0;
23
+ this.monitorReceiver = () => __awaiter(this, void 0, void 0, function* () {
24
+ if (!this.receiver) {
25
+ this._currentBitrate = 0;
26
+ return;
27
+ }
28
+ const stats = yield this.getReceiverStats();
29
+ if (stats && this.prevStats) {
30
+ this._currentBitrate = stats_1.computeBitrate(stats, this.prevStats);
31
+ }
32
+ this.prevStats = stats;
33
+ setTimeout(() => {
34
+ this.monitorReceiver();
35
+ }, stats_1.monitorFrequency);
36
+ });
12
37
  this.handleVisibilityChanged = (entry) => {
13
38
  const { target, isIntersecting } = entry;
14
39
  const elementInfo = this.elementInfos.find((info) => info.element === target);
@@ -24,11 +49,15 @@ class RemoteVideoTrack extends Track_1.Track {
24
49
  // override id to parsed ID
25
50
  this.sid = sid;
26
51
  this.receiver = receiver;
27
- this.autoManaged = autoManaged;
52
+ this.adaptiveStream = adaptiveStream;
28
53
  }
29
- get isAutoManaged() {
54
+ get isAdaptiveStream() {
30
55
  var _a;
31
- return (_a = this.autoManaged) !== null && _a !== void 0 ? _a : false;
56
+ return (_a = this.adaptiveStream) !== null && _a !== void 0 ? _a : false;
57
+ }
58
+ /** current receive bits per second */
59
+ get currentBitrate() {
60
+ return this._currentBitrate;
32
61
  }
33
62
  /** @internal */
34
63
  setMuted(muted) {
@@ -53,7 +82,7 @@ class RemoteVideoTrack extends Track_1.Track {
53
82
  else {
54
83
  super.attach(element);
55
84
  }
56
- if (this.autoManaged) {
85
+ if (this.adaptiveStream) {
57
86
  this.elementInfos.push({
58
87
  element,
59
88
  visible: true, // default visible
@@ -70,7 +99,7 @@ class RemoteVideoTrack extends Track_1.Track {
70
99
  detach(element) {
71
100
  let detachedElements = [];
72
101
  if (element) {
73
- detachedElements.push(element);
102
+ this.stopObservingElement(element);
74
103
  return super.detach(element);
75
104
  }
76
105
  detachedElements = super.detach();
@@ -87,6 +116,42 @@ class RemoteVideoTrack extends Track_1.Track {
87
116
  // use `enabled` of track to enable re-use of transceiver
88
117
  super.disable();
89
118
  }
119
+ /* @internal */
120
+ startMonitor() {
121
+ setTimeout(() => {
122
+ this.monitorReceiver();
123
+ }, stats_1.monitorFrequency);
124
+ }
125
+ getReceiverStats() {
126
+ return __awaiter(this, void 0, void 0, function* () {
127
+ if (!this.receiver) {
128
+ return;
129
+ }
130
+ const stats = yield this.receiver.getStats();
131
+ let receiverStats;
132
+ stats.forEach((v) => {
133
+ if (v.type === 'inbound-rtp') {
134
+ receiverStats = {
135
+ type: 'video',
136
+ framesDecoded: v.framesDecoded,
137
+ framesDropped: v.framesDropped,
138
+ framesReceived: v.framesReceived,
139
+ packetsReceived: v.packetsReceived,
140
+ packetsLost: v.packetsLost,
141
+ frameWidth: v.frameWidth,
142
+ frameHeight: v.frameHeight,
143
+ pliCount: v.pliCount,
144
+ firCount: v.firCount,
145
+ nackCount: v.nackCount,
146
+ jitter: v.jitter,
147
+ timestamp: v.timestamp,
148
+ bytesReceived: v.bytesReceived,
149
+ };
150
+ }
151
+ });
152
+ return receiverStats;
153
+ });
154
+ }
90
155
  stopObservingElement(element) {
91
156
  var _a, _b;
92
157
  (_a = utils_1.getIntersectionObserver()) === null || _a === void 0 ? void 0 : _a.unobserve(element);
@@ -1 +1 @@
1
- {"version":3,"file":"RemoteVideoTrack.js","sourceRoot":"","sources":["../../../src/room/track/RemoteVideoTrack.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RemoteVideoTrack.js","sourceRoot":"","sources":["../../../src/room/track/RemoteVideoTrack.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,13 @@
1
1
  /// <reference types="node" />
2
2
  import { EventEmitter } from 'events';
3
3
  import { TrackSource, TrackType } from '../../proto/livekit_models';
4
+ import { StreamState as ProtoStreamState } from '../../proto/livekit_rtc';
4
5
  export declare class Track extends EventEmitter {
5
6
  kind: Track.Kind;
6
7
  mediaStreamTrack: MediaStreamTrack;
7
8
  attachedElements: HTMLMediaElement[];
8
9
  isMuted: boolean;
10
+ streamState: Track.StreamState;
9
11
  source: Track.Source;
10
12
  /**
11
13
  * sid is set after track is published to server, or if it's a remote track
@@ -52,6 +54,11 @@ export declare namespace Track {
52
54
  ScreenShareAudio = "screen_share_audio",
53
55
  Unknown = "unknown"
54
56
  }
57
+ enum StreamState {
58
+ Active = "active",
59
+ Paused = "paused",
60
+ Unknown = "unknown"
61
+ }
55
62
  interface Dimensions {
56
63
  width: number;
57
64
  height: number;
@@ -64,4 +71,6 @@ export declare namespace Track {
64
71
  function sourceToProto(s: Source): TrackSource;
65
72
  /** @internal */
66
73
  function sourceFromProto(s: TrackSource): Source;
74
+ /** @internal */
75
+ function streamStateFromProto(s: ProtoStreamState): StreamState;
67
76
  }
@@ -3,7 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.detachTrack = exports.attachToElement = exports.Track = void 0;
4
4
  const events_1 = require("events");
5
5
  const livekit_models_1 = require("../../proto/livekit_models");
6
+ const livekit_rtc_1 = require("../../proto/livekit_rtc");
6
7
  const events_2 = require("../events");
8
+ const utils_1 = require("../utils");
7
9
  // keep old audio elements when detached, we would re-use them since on iOS
8
10
  // Safari tracks which audio elements have been "blessed" by the user.
9
11
  const recycledElements = [];
@@ -12,6 +14,7 @@ class Track extends events_1.EventEmitter {
12
14
  super();
13
15
  this.attachedElements = [];
14
16
  this.isMuted = false;
17
+ this.streamState = Track.StreamState.Active;
15
18
  this.kind = kind;
16
19
  this.mediaStreamTrack = mediaTrack;
17
20
  this.source = Track.Source.Unknown;
@@ -128,6 +131,13 @@ function attachToElement(track, element) {
128
131
  mediaStream.removeTrack(et);
129
132
  });
130
133
  mediaStream.addTrack(track);
134
+ if (utils_1.isFireFox()) {
135
+ // sometimes firefox doesn't render local video on the first try.
136
+ // It needs to be re-attached after a timeout.
137
+ setTimeout(() => {
138
+ element.srcObject = mediaStream;
139
+ }, 1);
140
+ }
131
141
  }
132
142
  exports.attachToElement = attachToElement;
133
143
  /** @internal */
@@ -154,6 +164,12 @@ exports.detachTrack = detachTrack;
154
164
  Source["ScreenShareAudio"] = "screen_share_audio";
155
165
  Source["Unknown"] = "unknown";
156
166
  })(Source = Track.Source || (Track.Source = {}));
167
+ let StreamState;
168
+ (function (StreamState) {
169
+ StreamState["Active"] = "active";
170
+ StreamState["Paused"] = "paused";
171
+ StreamState["Unknown"] = "unknown";
172
+ })(StreamState = Track.StreamState || (Track.StreamState = {}));
157
173
  /** @internal */
158
174
  function kindToProto(k) {
159
175
  switch (k) {
@@ -210,5 +226,17 @@ exports.detachTrack = detachTrack;
210
226
  }
211
227
  }
212
228
  Track.sourceFromProto = sourceFromProto;
229
+ /** @internal */
230
+ function streamStateFromProto(s) {
231
+ switch (s) {
232
+ case livekit_rtc_1.StreamState.ACTIVE:
233
+ return StreamState.Active;
234
+ case livekit_rtc_1.StreamState.PAUSED:
235
+ return StreamState.Paused;
236
+ default:
237
+ return StreamState.Unknown;
238
+ }
239
+ }
240
+ Track.streamStateFromProto = streamStateFromProto;
213
241
  })(Track = exports.Track || (exports.Track = {}));
214
242
  //# sourceMappingURL=Track.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Track.js","sourceRoot":"","sources":["../../../src/room/track/Track.ts"],"names":[],"mappings":";;;AAAA,mCAAsC;AACtC,+DAAoE;AACpE,sCAAuC;AAEvC,2EAA2E;AAC3E,sEAAsE;AACtE,MAAM,gBAAgB,GAA4B,EAAE,CAAC;AAErD,MAAa,KAAM,SAAQ,qBAAY;IAgBrC,YAAsB,UAA4B,EAAE,IAAgB;QAClE,KAAK,EAAE,CAAC;QAZV,qBAAgB,GAAuB,EAAE,CAAC;QAE1C,YAAO,GAAY,KAAK,CAAC;QAWvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,gBAAgB,GAAG,UAAU,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;IACrC,CAAC;IAWD,MAAM,CAAC,OAA0B;QAC/B,IAAI,WAAW,GAAG,OAAO,CAAC;QAC1B,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE;YAClC,WAAW,GAAG,OAAO,CAAC;SACvB;QACD,IAAI,CAAC,OAAO,EAAE;YACZ,IAAI,WAAW,KAAK,OAAO,EAAE;gBAC3B,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;oBAC7B,IAAI,CAAC,CAAC,aAAa,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE;wBACxC,OAAO,GAAG,CAAC,CAAC;qBACb;gBACH,CAAC,CAAC,CAAC;gBACH,IAAI,OAAO,EAAE;oBACX,sBAAsB;oBACtB,gBAAgB,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;iBAC/D;aACF;YACD,IAAI,CAAC,OAAO,EAAE;gBACZ,OAAO,GAAqB,QAAQ,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;aACjE;SACF;QAED,IAAI,OAAO,YAAY,gBAAgB,EAAE;YACvC,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;YAC3B,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;SACzB;QAED,mBAAmB;QACnB,IAAI,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;YAC3C,OAAO,OAAO,CAAC;SAChB;QAED,eAAe,CAAC,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;QAChD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEpC,IAAI,OAAO,YAAY,gBAAgB,EAAE;YACvC,sDAAsD;YACtD,OAAO,CAAC,IAAI,EAAE;iBACX,IAAI,CAAC,GAAG,EAAE;gBACT,IAAI,CAAC,IAAI,CAAC,mBAAU,CAAC,oBAAoB,CAAC,CAAC;YAC7C,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;gBACX,IAAI,CAAC,IAAI,CAAC,mBAAU,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC;YAC/C,CAAC,CAAC,CAAC;SACN;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAYD,MAAM,CAAC,OAA0B;QAC/B,+BAA+B;QAC/B,IAAI,OAAO,EAAE;YACX,WAAW,CAAC,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;YAC5C,MAAM,GAAG,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACnD,IAAI,GAAG,IAAI,CAAC,EAAE;gBACZ,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;gBACrC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;aAC9B;YACD,OAAO,OAAO,CAAC;SAChB;QAED,MAAM,QAAQ,GAAuB,EAAE,CAAC;QACxC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACpC,WAAW,CAAC,IAAI,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;YACxC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACnB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEH,oBAAoB;QACpB,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;QAC3B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,IAAI;QACF,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;IAC/B,CAAC;IAES,MAAM;QACd,IAAI,CAAC,gBAAgB,CAAC,OAAO,GAAG,IAAI,CAAC;IACvC,CAAC;IAES,OAAO;QACf,IAAI,CAAC,gBAAgB,CAAC,OAAO,GAAG,KAAK,CAAC;IACxC,CAAC;IAEO,cAAc,CAAC,OAAyB;QAC9C,IAAI,OAAO,YAAY,gBAAgB,EAAE;YACzC,0CAA0C;YACxC,IAAI,WAAW,GAAG,IAAI,CAAC;YACvB,OAAO,CAAC,KAAK,EAAE,CAAC;YAChB,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC7B,IAAI,CAAC,CAAC,CAAC,aAAa,EAAE;oBACpB,WAAW,GAAG,KAAK,CAAC;iBACrB;YACH,CAAC,CAAC,CAAC;YACH,IAAI,WAAW,EAAE;gBACf,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aAChC;SACF;IACH,CAAC;CACF;AA9ID,sBA8IC;AAED,gBAAgB;AAChB,SAAgB,eAAe,CAAC,KAAuB,EAAE,OAAyB;IAChF,IAAI,WAAwB,CAAC;IAC7B,IAAI,OAAO,CAAC,SAAS,YAAY,WAAW,EAAE;QAC5C,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC;KACjC;SAAM;QACL,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;QAChC,OAAO,CAAC,SAAS,GAAG,WAAW,CAAC;KACjC;IAED,kDAAkD;IAClD,IAAI,cAAkC,CAAC;IACvC,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE;QAC1B,cAAc,GAAG,WAAW,CAAC,cAAc,EAAE,CAAC;KAC/C;SAAM;QACL,cAAc,GAAG,WAAW,CAAC,cAAc,EAAE,CAAC;KAC/C;IAED,cAAc,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;QAC5B,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC9B,CAAC;AAtBD,0CAsBC;AAED,gBAAgB;AAChB,SAAgB,WAAW,CACzB,KAAuB,EACvB,OAAyB;IAEzB,IAAI,OAAO,CAAC,SAAS,YAAY,WAAW,EAAE;QAC5C,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC;QACtC,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC/B,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;KAC1B;AACH,CAAC;AATD,kCASC;AAED,WAAiB,KAAK;IACpB,IAAY,IAIX;IAJD,WAAY,IAAI;QACd,uBAAe,CAAA;QACf,uBAAe,CAAA;QACf,2BAAmB,CAAA;IACrB,CAAC,EAJW,IAAI,GAAJ,UAAI,KAAJ,UAAI,QAIf;IAED,IAAY,MAMX;IAND,WAAY,MAAM;QAChB,2BAAiB,CAAA;QACjB,mCAAyB,CAAA;QACzB,sCAA4B,CAAA;QAC5B,iDAAuC,CAAA;QACvC,6BAAmB,CAAA;IACrB,CAAC,EANW,MAAM,GAAN,YAAM,KAAN,YAAM,QAMjB;IAOD,gBAAgB;IAChB,SAAgB,WAAW,CAAC,CAAO;QACjC,QAAQ,CAAC,EAAE;YACT,KAAK,IAAI,CAAC,KAAK;gBACb,OAAO,0BAAS,CAAC,KAAK,CAAC;YACzB,KAAK,IAAI,CAAC,KAAK;gBACb,OAAO,0BAAS,CAAC,KAAK,CAAC;YACzB;gBACE,OAAO,0BAAS,CAAC,YAAY,CAAC;SACjC;IACH,CAAC;IATe,iBAAW,cAS1B,CAAA;IAED,gBAAgB;IAChB,SAAgB,aAAa,CAAC,CAAY;QACxC,QAAQ,CAAC,EAAE;YACT,KAAK,0BAAS,CAAC,KAAK;gBAClB,OAAO,IAAI,CAAC,KAAK,CAAC;YACpB,KAAK,0BAAS,CAAC,KAAK;gBAClB,OAAO,IAAI,CAAC,KAAK,CAAC;YACpB;gBACE,OAAO,IAAI,CAAC,OAAO,CAAC;SACvB;IACH,CAAC;IATe,mBAAa,gBAS5B,CAAA;IAED,gBAAgB;IAChB,SAAgB,aAAa,CAAC,CAAS;QACrC,QAAQ,CAAC,EAAE;YACT,KAAK,MAAM,CAAC,MAAM;gBAChB,OAAO,4BAAW,CAAC,MAAM,CAAC;YAC5B,KAAK,MAAM,CAAC,UAAU;gBACpB,OAAO,4BAAW,CAAC,UAAU,CAAC;YAChC,KAAK,MAAM,CAAC,WAAW;gBACrB,OAAO,4BAAW,CAAC,YAAY,CAAC;YAClC,KAAK,MAAM,CAAC,gBAAgB;gBAC1B,OAAO,4BAAW,CAAC,kBAAkB,CAAC;YACxC;gBACE,OAAO,4BAAW,CAAC,YAAY,CAAC;SACnC;IACH,CAAC;IAbe,mBAAa,gBAa5B,CAAA;IAED,gBAAgB;IAChB,SAAgB,eAAe,CAAC,CAAc;QAC5C,QAAQ,CAAC,EAAE;YACT,KAAK,4BAAW,CAAC,MAAM;gBACrB,OAAO,MAAM,CAAC,MAAM,CAAC;YACvB,KAAK,4BAAW,CAAC,UAAU;gBACzB,OAAO,MAAM,CAAC,UAAU,CAAC;YAC3B,KAAK,4BAAW,CAAC,YAAY;gBAC3B,OAAO,MAAM,CAAC,WAAW,CAAC;YAC5B,KAAK,4BAAW,CAAC,kBAAkB;gBACjC,OAAO,MAAM,CAAC,gBAAgB,CAAC;YACjC;gBACE,OAAO,MAAM,CAAC,OAAO,CAAC;SACzB;IACH,CAAC;IAbe,qBAAe,kBAa9B,CAAA;AACH,CAAC,EA3EgB,KAAK,GAAL,aAAK,KAAL,aAAK,QA2ErB"}
1
+ {"version":3,"file":"Track.js","sourceRoot":"","sources":["../../../src/room/track/Track.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import LocalAudioTrack from './LocalAudioTrack';
2
+ import LocalTrack from './LocalTrack';
3
+ import LocalVideoTrack from './LocalVideoTrack';
4
+ import { AudioCaptureOptions, CreateLocalTracksOptions, ScreenShareCaptureOptions, VideoCaptureOptions } from './options';
5
+ /**
6
+ * Creates a local video and audio track at the same time. When acquiring both
7
+ * audio and video tracks together, it'll display a single permission prompt to
8
+ * the user instead of two separate ones.
9
+ * @param options
10
+ */
11
+ export declare function createLocalTracks(options?: CreateLocalTracksOptions): Promise<Array<LocalTrack>>;
12
+ /**
13
+ * Creates a [[LocalVideoTrack]] with getUserMedia()
14
+ * @param options
15
+ */
16
+ export declare function createLocalVideoTrack(options?: VideoCaptureOptions): Promise<LocalVideoTrack>;
17
+ export declare function createLocalAudioTrack(options?: AudioCaptureOptions): Promise<LocalAudioTrack>;
18
+ /**
19
+ * Creates a screen capture tracks with getDisplayMedia().
20
+ * A LocalVideoTrack is always created and returned.
21
+ * If { audio: true }, and the browser supports audio capture, a LocalAudioTrack is also created.
22
+ */
23
+ export declare function createLocalScreenTracks(options?: ScreenShareCaptureOptions): Promise<Array<LocalTrack>>;