livekit-client 1.13.3 → 1.14.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.
- package/README.md +9 -4
- package/dist/livekit-client.e2ee.worker.js +1 -1
- package/dist/livekit-client.e2ee.worker.js.map +1 -1
- package/dist/livekit-client.e2ee.worker.mjs +86 -16
- package/dist/livekit-client.e2ee.worker.mjs.map +1 -1
- package/dist/livekit-client.esm.mjs +92 -12
- package/dist/livekit-client.esm.mjs.map +1 -1
- package/dist/livekit-client.umd.js +1 -1
- package/dist/livekit-client.umd.js.map +1 -1
- package/dist/src/e2ee/utils.d.ts +3 -0
- package/dist/src/e2ee/utils.d.ts.map +1 -1
- package/dist/src/e2ee/worker/FrameCryptor.d.ts.map +1 -1
- package/dist/src/room/RTCEngine.d.ts.map +1 -1
- package/dist/src/room/events.d.ts +1 -1
- package/dist/src/room/participant/LocalParticipant.d.ts.map +1 -1
- package/dist/src/room/track/LocalTrack.d.ts +7 -0
- package/dist/src/room/track/LocalTrack.d.ts.map +1 -1
- package/dist/src/room/track/RemoteTrack.d.ts +7 -0
- package/dist/src/room/track/RemoteTrack.d.ts.map +1 -1
- package/dist/src/room/track/options.d.ts +7 -3
- package/dist/src/room/track/options.d.ts.map +1 -1
- package/dist/ts4.2/src/e2ee/utils.d.ts +3 -0
- package/dist/ts4.2/src/room/events.d.ts +1 -1
- package/dist/ts4.2/src/room/track/LocalTrack.d.ts +7 -0
- package/dist/ts4.2/src/room/track/RemoteTrack.d.ts +7 -0
- package/dist/ts4.2/src/room/track/options.d.ts +7 -3
- package/package.json +1 -1
- package/src/e2ee/utils.ts +52 -0
- package/src/e2ee/worker/FrameCryptor.ts +45 -27
- package/src/room/RTCEngine.ts +3 -2
- package/src/room/Room.ts +3 -3
- package/src/room/events.ts +1 -1
- package/src/room/participant/LocalParticipant.ts +7 -6
- package/src/room/track/LocalTrack.ts +14 -0
- package/src/room/track/RemoteTrack.ts +14 -0
- package/src/room/track/options.ts +7 -3
package/dist/src/e2ee/utils.d.ts
CHANGED
@@ -22,4 +22,7 @@ export declare function mimeTypeToVideoCodecString(mimeType: string): "vp8" | "h
|
|
22
22
|
* https://tools.ietf.org/html/draft-omara-sframe-00#section-4.3.5.1
|
23
23
|
*/
|
24
24
|
export declare function ratchet(material: CryptoKey, salt: string): Promise<ArrayBuffer>;
|
25
|
+
export declare function needsRbspUnescaping(frameData: Uint8Array): boolean;
|
26
|
+
export declare function parseRbsp(stream: Uint8Array): Uint8Array;
|
27
|
+
export declare function writeRbsp(data_in: Uint8Array): Uint8Array;
|
25
28
|
//# sourceMappingURL=utils.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/e2ee/utils.ts"],"names":[],"mappings":"AAIA,wBAAgB,eAAe,YAE9B;AAED,wBAAgB,0BAA0B,YAGzC;AAED,wBAAgB,2BAA2B,YAM1C;AAED,wBAAgB,YAAY,CAC1B,KAAK,EAAE,oBAAoB,GAAG,oBAAoB,GACjD,KAAK,IAAI,oBAAoB,CAE/B;AAED,wBAAsB,SAAS,CAC7B,QAAQ,EAAE,UAAU,GAAG,WAAW,EAClC,SAAS,GAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAmC,EACrE,KAAK,GAAE,QAAQ,GAAG,SAAqB,sBAUxC;AAED,wBAAsB,2BAA2B,CAAC,QAAQ,EAAE,MAAM,sBAcjE;AAED,wBAAsB,2BAA2B,CAAC,YAAY,EAAE,WAAW,sBAO1E;AA0BD;;;GAGG;AACH,wBAAsB,UAAU,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM;;;GAiBjE;AAED,wBAAgB,aAAa,IAAI,UAAU,CAE1C;AAED,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,MAAM,kCAM1D;AAED;;;GAGG;AACH,wBAAsB,OAAO,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAKrF"}
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/e2ee/utils.ts"],"names":[],"mappings":"AAIA,wBAAgB,eAAe,YAE9B;AAED,wBAAgB,0BAA0B,YAGzC;AAED,wBAAgB,2BAA2B,YAM1C;AAED,wBAAgB,YAAY,CAC1B,KAAK,EAAE,oBAAoB,GAAG,oBAAoB,GACjD,KAAK,IAAI,oBAAoB,CAE/B;AAED,wBAAsB,SAAS,CAC7B,QAAQ,EAAE,UAAU,GAAG,WAAW,EAClC,SAAS,GAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAmC,EACrE,KAAK,GAAE,QAAQ,GAAG,SAAqB,sBAUxC;AAED,wBAAsB,2BAA2B,CAAC,QAAQ,EAAE,MAAM,sBAcjE;AAED,wBAAsB,2BAA2B,CAAC,YAAY,EAAE,WAAW,sBAO1E;AA0BD;;;GAGG;AACH,wBAAsB,UAAU,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM;;;GAiBjE;AAED,wBAAgB,aAAa,IAAI,UAAU,CAE1C;AAED,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,MAAM,kCAM1D;AAED;;;GAGG;AACH,wBAAsB,OAAO,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAKrF;AAED,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,UAAU,WAKxD;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAoBxD;AAKD,wBAAgB,SAAS,CAAC,OAAO,EAAE,UAAU,GAAG,UAAU,CAkBzD"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"FrameCryptor.d.ts","sourceRoot":"","sources":["../../../../src/e2ee/worker/FrameCryptor.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,iBAAiB,MAAM,eAAe,CAAC;AAEnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAG3D,OAAO,EAAE,gBAAgB,EAAgB,MAAM,WAAW,CAAC;AAC3D,OAAO,KAAK,EAAwB,kBAAkB,EAAU,MAAM,UAAU,CAAC;AAEjF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAGrE,eAAO,MAAM,oBAAoB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAa,CAAC;AAEpE,MAAM,WAAW,uBAAuB;IACtC,KAAK,IAAI,CAAC,EAAE,OAAO,GAAG,gBAAgB,CAAC;CACxC;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,cAAc,CAAC;IACzB,QAAQ,EAAE,cAAc,CAAC;IACzB,WAAW,EAAE,eAAe,CAAC;IAC7B,eAAe,EAAE,eAAe,CAAC;CAClC;+CAEgE,kBAAkB,gBAAgB,CAAC;AAApG,qBAAa,gBAAiB,SAAQ,qBAA+D;IACnG,SAAS,CAAC,cAAc,CACtB,YAAY,EAAE,oBAAoB,GAAG,oBAAoB,EACzD,UAAU,EAAE,gCAAgC,GAC3C,OAAO,CAAC,GAAG,CAAC;IAIf,SAAS,CAAC,cAAc,CACtB,YAAY,EAAE,oBAAoB,GAAG,oBAAoB,EACzD,UAAU,EAAE,gCAAgC,GAC3C,OAAO,CAAC,GAAG,CAAC;CAGhB;AAED;;;GAGG;AACH,qBAAa,YAAa,SAAQ,gBAAgB;IAChD,OAAO,CAAC,UAAU,CAAsB;IAExC,OAAO,CAAC,mBAAmB,CAAqB;IAEhD,OAAO,CAAC,OAAO,CAAqB;IAEpC,OAAO,CAAC,IAAI,CAAwB;IAEpC,OAAO,CAAC,UAAU,CAAC,CAAa;IAEhC,OAAO,CAAC,MAAM,CAA0B;IAExC,OAAO,CAAC,kBAAkB,CAAqB;IAE/C;;OAEG;IACH,OAAO,CAAC,UAAU,CAAa;IAE/B,OAAO,CAAC,QAAQ,CAAW;gBAEf,IAAI,EAAE;QAChB,IAAI,EAAE,qBAAqB,CAAC;QAC5B,mBAAmB,EAAE,MAAM,CAAC;QAC5B,kBAAkB,EAAE,kBAAkB,CAAC;QACvC,UAAU,CAAC,EAAE,UAAU,CAAC;KACzB;IAWD;;;;;OAKG;IACH,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,qBAAqB;IAMtD,gBAAgB;IAIhB,SAAS;IAQT,sBAAsB;IAItB,UAAU;IAIV;;;OAGG;IACH,aAAa,CAAC,KAAK,EAAE,UAAU;IAI/B;;;OAGG;IACH,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC;IAItC,cAAc,CACZ,SAAS,EAAE,QAAQ,GAAG,QAAQ,EAC9B,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,UAAU;IAsBpB,aAAa,CAAC,OAAO,EAAE,UAAU;IAIjC;;;;;;;;;;;;;;;;;;;;;OAqBG;cACa,cAAc,CAC5B,YAAY,EAAE,oBAAoB,GAAG,oBAAoB,EACzD,UAAU,EAAE,gCAAgC;
|
1
|
+
{"version":3,"file":"FrameCryptor.d.ts","sourceRoot":"","sources":["../../../../src/e2ee/worker/FrameCryptor.ts"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"RTCEngine.d.ts","sourceRoot":"","sources":["../../../src/room/RTCEngine.ts"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"RTCEngine.d.ts","sourceRoot":"","sources":["../../../src/room/RTCEngine.ts"],"names":[],"mappings":"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"}
|
@@ -212,7 +212,7 @@ export declare enum RoomEvent {
|
|
212
212
|
/**
|
213
213
|
* LiveKit will attempt to autoplay all audio tracks when you attach them to
|
214
214
|
* audio elements. However, if that fails, we'll notify you via AudioPlaybackStatusChanged.
|
215
|
-
* `Room.
|
215
|
+
* `Room.canPlaybackAudio` will indicate if audio playback is permitted.
|
216
216
|
*/
|
217
217
|
AudioPlaybackStatusChanged = "audioPlaybackChanged",
|
218
218
|
/**
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"LocalParticipant.d.ts","sourceRoot":"","sources":["../../../../src/room/participant/LocalParticipant.ts"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"LocalParticipant.d.ts","sourceRoot":"","sources":["../../../../src/room/participant/LocalParticipant.ts"],"names":[],"mappings":"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"}
|
@@ -56,6 +56,13 @@ export default abstract class LocalTrack extends Track {
|
|
56
56
|
**/
|
57
57
|
pauseUpstream(): Promise<void>;
|
58
58
|
resumeUpstream(): Promise<void>;
|
59
|
+
/**
|
60
|
+
* Gets the RTCStatsReport for the LocalTrack's underlying RTCRtpSender
|
61
|
+
* See https://developer.mozilla.org/en-US/docs/Web/API/RTCStatsReport
|
62
|
+
*
|
63
|
+
* @returns Promise<RTCStatsReport> | undefined
|
64
|
+
*/
|
65
|
+
getRTCStatsReport(): Promise<RTCStatsReport | undefined>;
|
59
66
|
/**
|
60
67
|
* Sets a processor on this track.
|
61
68
|
* See https://github.com/livekit/track-processors-js for example usage
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"LocalTrack.d.ts","sourceRoot":"","sources":["../../../../src/room/track/LocalTrack.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,EAAoC,MAAM,UAAU,CAAC;AACnE,OAAO,EAAE,KAAK,EAAgC,MAAM,SAAS,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAIxD,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,UAAW,SAAQ,KAAK;IACpD,gBAAgB;IAChB,MAAM,CAAC,EAAE,YAAY,CAAC;IAEtB,gBAAgB;IAChB,KAAK,CAAC,EAAE,UAAU,CAAC;IAEnB,IAAI,WAAW,0BAEd;IAED,SAAS,CAAC,YAAY,EAAE,qBAAqB,CAAC;IAE9C,SAAS,CAAC,cAAc,EAAE,OAAO,CAAC;IAElC,SAAS,CAAC,cAAc,EAAE,OAAO,CAAC;IAElC,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC;IAE1B,SAAS,CAAC,iBAAiB,EAAE,KAAK,CAAC;IAEnC,SAAS,CAAC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IAE9C,SAAS,CAAC,SAAS,CAAC,EAAE,cAAc,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC;IAEvD,SAAS,CAAC,aAAa,EAAE,KAAK,CAAC;IAE/B;;;;;;OAMG;IACH,SAAS,aACP,UAAU,EAAE,gBAAgB,EAC5B,IAAI,EAAE,KAAK,CAAC,IAAI,EAChB,WAAW,CAAC,EAAE,qBAAqB,EACnC,iBAAiB,UAAQ;IAiB3B,IAAI,EAAE,IAAI,MAAM,CAEf;IAED,IAAI,UAAU,IAAI,KAAK,CAAC,UAAU,GAAG,SAAS,CAa7C;IAED,OAAO,CAAC,iBAAiB,CAAkB;IAE3C,IAAI,gBAAgB,YAEnB;IAED,IAAI,cAAc,YAEjB;IAED,IAAI,gBAAgB,qBAEnB;YAEa,mBAAmB;IA2D3B,iBAAiB,CAAC,OAAO,SAA2B,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC;IAgBtF;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAW1C,IAAI,IAAI,OAAO,CAAC,UAAU,CAAC;IAK3B,MAAM,IAAI,OAAO,CAAC,UAAU,CAAC;IAK7B,YAAY,CAAC,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,UAAO,GAAG,OAAO,CAAC,UAAU,CAAC;cAiB1E,OAAO,CAAC,WAAW,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC;IAyCjF,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO;IAYtC,SAAS,KAAK,kBAAkB,IAAI,OAAO,CAO1C;cAEe,0BAA0B;IAY1C,OAAO,CAAC,oBAAoB,CAGxB;IAEJ,OAAO,CAAC,yBAAyB,CAExB;IAET,OAAO,CAAC,sBAAsB,CAG5B;IAEF,OAAO,CAAC,WAAW,CAOjB;IAEF,IAAI;IAUJ;;;;;QAKI;IACE,aAAa;IAwBb,cAAc;IAoBpB;;;;;;;;;OASG;IACG,YAAY,CAChB,SAAS,EAAE,cAAc,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,EAC3C,0BAA0B,UAAO;IAyCnC,YAAY;IAIZ;;;;;;OAMG;IACG,aAAa;IAanB,SAAS,CAAC,QAAQ,CAAC,aAAa,IAAI,IAAI;CACzC"}
|
1
|
+
{"version":3,"file":"LocalTrack.d.ts","sourceRoot":"","sources":["../../../../src/room/track/LocalTrack.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,EAAoC,MAAM,UAAU,CAAC;AACnE,OAAO,EAAE,KAAK,EAAgC,MAAM,SAAS,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAIxD,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,UAAW,SAAQ,KAAK;IACpD,gBAAgB;IAChB,MAAM,CAAC,EAAE,YAAY,CAAC;IAEtB,gBAAgB;IAChB,KAAK,CAAC,EAAE,UAAU,CAAC;IAEnB,IAAI,WAAW,0BAEd;IAED,SAAS,CAAC,YAAY,EAAE,qBAAqB,CAAC;IAE9C,SAAS,CAAC,cAAc,EAAE,OAAO,CAAC;IAElC,SAAS,CAAC,cAAc,EAAE,OAAO,CAAC;IAElC,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC;IAE1B,SAAS,CAAC,iBAAiB,EAAE,KAAK,CAAC;IAEnC,SAAS,CAAC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IAE9C,SAAS,CAAC,SAAS,CAAC,EAAE,cAAc,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC;IAEvD,SAAS,CAAC,aAAa,EAAE,KAAK,CAAC;IAE/B;;;;;;OAMG;IACH,SAAS,aACP,UAAU,EAAE,gBAAgB,EAC5B,IAAI,EAAE,KAAK,CAAC,IAAI,EAChB,WAAW,CAAC,EAAE,qBAAqB,EACnC,iBAAiB,UAAQ;IAiB3B,IAAI,EAAE,IAAI,MAAM,CAEf;IAED,IAAI,UAAU,IAAI,KAAK,CAAC,UAAU,GAAG,SAAS,CAa7C;IAED,OAAO,CAAC,iBAAiB,CAAkB;IAE3C,IAAI,gBAAgB,YAEnB;IAED,IAAI,cAAc,YAEjB;IAED,IAAI,gBAAgB,qBAEnB;YAEa,mBAAmB;IA2D3B,iBAAiB,CAAC,OAAO,SAA2B,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC;IAgBtF;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAW1C,IAAI,IAAI,OAAO,CAAC,UAAU,CAAC;IAK3B,MAAM,IAAI,OAAO,CAAC,UAAU,CAAC;IAK7B,YAAY,CAAC,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,UAAO,GAAG,OAAO,CAAC,UAAU,CAAC;cAiB1E,OAAO,CAAC,WAAW,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC;IAyCjF,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO;IAYtC,SAAS,KAAK,kBAAkB,IAAI,OAAO,CAO1C;cAEe,0BAA0B;IAY1C,OAAO,CAAC,oBAAoB,CAGxB;IAEJ,OAAO,CAAC,yBAAyB,CAExB;IAET,OAAO,CAAC,sBAAsB,CAG5B;IAEF,OAAO,CAAC,WAAW,CAOjB;IAEF,IAAI;IAUJ;;;;;QAKI;IACE,aAAa;IAwBb,cAAc;IAoBpB;;;;;OAKG;IACG,iBAAiB,IAAI,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC;IAQ9D;;;;;;;;;OASG;IACG,YAAY,CAChB,SAAS,EAAE,cAAc,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,EAC3C,0BAA0B,UAAO;IAyCnC,YAAY;IAIZ;;;;;;OAMG;IACG,aAAa;IAanB,SAAS,CAAC,QAAQ,CAAC,aAAa,IAAI,IAAI;CACzC"}
|
@@ -9,6 +9,13 @@ export default abstract class RemoteTrack extends Track {
|
|
9
9
|
setMediaStream(stream: MediaStream): void;
|
10
10
|
start(): void;
|
11
11
|
stop(): void;
|
12
|
+
/**
|
13
|
+
* Gets the RTCStatsReport for the RemoteTrack's underlying RTCRtpReceiver
|
14
|
+
* See https://developer.mozilla.org/en-US/docs/Web/API/RTCStatsReport
|
15
|
+
*
|
16
|
+
* @returns Promise<RTCStatsReport> | undefined
|
17
|
+
*/
|
18
|
+
getRTCStatsReport(): Promise<RTCStatsReport | undefined>;
|
12
19
|
startMonitor(): void;
|
13
20
|
protected abstract monitorReceiver(): void;
|
14
21
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"RemoteTrack.d.ts","sourceRoot":"","sources":["../../../../src/room/track/RemoteTrack.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,WAAY,SAAQ,KAAK;IACrD,gBAAgB;IAChB,QAAQ,CAAC,EAAE,cAAc,CAAC;gBAGxB,UAAU,EAAE,gBAAgB,EAC5B,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,KAAK,CAAC,IAAI,EAChB,QAAQ,CAAC,EAAE,cAAc;IAO3B,gBAAgB;IAChB,QAAQ,CAAC,KAAK,EAAE,OAAO;IAQvB,gBAAgB;IAChB,cAAc,CAAC,MAAM,EAAE,WAAW;IAYlC,KAAK;IAML,IAAI;
|
1
|
+
{"version":3,"file":"RemoteTrack.d.ts","sourceRoot":"","sources":["../../../../src/room/track/RemoteTrack.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,WAAY,SAAQ,KAAK;IACrD,gBAAgB;IAChB,QAAQ,CAAC,EAAE,cAAc,CAAC;gBAGxB,UAAU,EAAE,gBAAgB,EAC5B,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,KAAK,CAAC,IAAI,EAChB,QAAQ,CAAC,EAAE,cAAc;IAO3B,gBAAgB;IAChB,QAAQ,CAAC,KAAK,EAAE,OAAO;IAQvB,gBAAgB;IAChB,cAAc,CAAC,MAAM,EAAE,WAAW;IAYlC,KAAK;IAML,IAAI;IAMJ;;;;;OAKG;IACG,iBAAiB,IAAI,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC;IAS9D,YAAY;IAMZ,SAAS,CAAC,QAAQ,CAAC,eAAe,IAAI,IAAI;CAC3C"}
|
@@ -134,7 +134,11 @@ export interface ScreenShareCaptureOptions {
|
|
134
134
|
video?: true | {
|
135
135
|
displaySurface?: 'window' | 'browser' | 'monitor';
|
136
136
|
};
|
137
|
-
/**
|
137
|
+
/**
|
138
|
+
* capture resolution, defaults to screen resolution
|
139
|
+
* NOTE: In Safari 17, specifying any resolution at all would lead to a low-resolution
|
140
|
+
* capture. https://bugs.webkit.org/show_bug.cgi?id=263015
|
141
|
+
*/
|
138
142
|
resolution?: VideoResolution;
|
139
143
|
/** a CaptureController object instance containing methods that can be used to further manipulate the capture session if included. */
|
140
144
|
controller?: unknown;
|
@@ -222,9 +226,9 @@ export type BackupVideoCodec = (typeof backupCodecs)[number];
|
|
222
226
|
export declare function isBackupCodec(codec: string): codec is BackupVideoCodec;
|
223
227
|
export declare function isCodecEqual(c1: string | undefined, c2: string | undefined): boolean;
|
224
228
|
/**
|
225
|
-
* scalability modes for svc
|
229
|
+
* scalability modes for svc.
|
226
230
|
*/
|
227
|
-
export type ScalabilityMode = 'L3T3' | 'L3T3_KEY';
|
231
|
+
export type ScalabilityMode = 'L1T3' | 'L2T3' | 'L2T3_KEY' | 'L3T3' | 'L3T3_KEY';
|
228
232
|
export declare namespace AudioPresets {
|
229
233
|
const telephone: AudioPreset;
|
230
234
|
const speech: AudioPreset;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../../src/room/track/options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAErC,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAE9B;;OAEG;IACH,WAAW,CAAC,EAAE;QAAE,KAAK,EAAE,gBAAgB,CAAC;QAAC,QAAQ,EAAE,aAAa,CAAA;KAAE,GAAG,KAAK,CAAC;IAE3E;;OAEG;IACH,mBAAmB,CAAC,EAAE,aAAa,CAAC;IAEpC;;;OAGG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IAExB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;IAE1B;;OAEG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IAEd;;OAEG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IAEd;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;OAGG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC;IAElC;;;;;;;;;;;;;;OAcG;IACH,oBAAoB,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IAE1C;;;OAGG;IACH,0BAA0B,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IAEhD;;;;;;;OAOG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,oBAAoB;IAC/D;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,wBAAwB;IACvC;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,GAAG,mBAAmB,CAAC;IAEtC;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,GAAG,mBAAmB,CAAC;CACvC;AAED,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAE9B;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,aAAa,GAAG,MAAM,GAAG,OAAO,CAAC;IAEvD,UAAU,CAAC,EAAE,eAAe,CAAC;CAC9B;AAED,MAAM,WAAW,yBAAyB;IACxC;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,GAAG,mBAAmB,CAAC;IAEtC;;;OAGG;IACH,KAAK,CAAC,EAAE,IAAI,GAAG;QAAE,cAAc,CAAC,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAA;KAAE,CAAC;IAErE
|
1
|
+
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../../src/room/track/options.ts"],"names":[],"mappings":"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"}
|
@@ -22,4 +22,7 @@ export declare function mimeTypeToVideoCodecString(mimeType: string): "vp8" | "h
|
|
22
22
|
* https://tools.ietf.org/html/draft-omara-sframe-00#section-4.3.5.1
|
23
23
|
*/
|
24
24
|
export declare function ratchet(material: CryptoKey, salt: string): Promise<ArrayBuffer>;
|
25
|
+
export declare function needsRbspUnescaping(frameData: Uint8Array): boolean;
|
26
|
+
export declare function parseRbsp(stream: Uint8Array): Uint8Array;
|
27
|
+
export declare function writeRbsp(data_in: Uint8Array): Uint8Array;
|
25
28
|
//# sourceMappingURL=utils.d.ts.map
|
@@ -212,7 +212,7 @@ export declare enum RoomEvent {
|
|
212
212
|
/**
|
213
213
|
* LiveKit will attempt to autoplay all audio tracks when you attach them to
|
214
214
|
* audio elements. However, if that fails, we'll notify you via AudioPlaybackStatusChanged.
|
215
|
-
* `Room.
|
215
|
+
* `Room.canPlaybackAudio` will indicate if audio playback is permitted.
|
216
216
|
*/
|
217
217
|
AudioPlaybackStatusChanged = "audioPlaybackChanged",
|
218
218
|
/**
|
@@ -56,6 +56,13 @@ export default abstract class LocalTrack extends Track {
|
|
56
56
|
**/
|
57
57
|
pauseUpstream(): Promise<void>;
|
58
58
|
resumeUpstream(): Promise<void>;
|
59
|
+
/**
|
60
|
+
* Gets the RTCStatsReport for the LocalTrack's underlying RTCRtpSender
|
61
|
+
* See https://developer.mozilla.org/en-US/docs/Web/API/RTCStatsReport
|
62
|
+
*
|
63
|
+
* @returns Promise<RTCStatsReport> | undefined
|
64
|
+
*/
|
65
|
+
getRTCStatsReport(): Promise<RTCStatsReport | undefined>;
|
59
66
|
/**
|
60
67
|
* Sets a processor on this track.
|
61
68
|
* See https://github.com/livekit/track-processors-js for example usage
|
@@ -9,6 +9,13 @@ export default abstract class RemoteTrack extends Track {
|
|
9
9
|
setMediaStream(stream: MediaStream): void;
|
10
10
|
start(): void;
|
11
11
|
stop(): void;
|
12
|
+
/**
|
13
|
+
* Gets the RTCStatsReport for the RemoteTrack's underlying RTCRtpReceiver
|
14
|
+
* See https://developer.mozilla.org/en-US/docs/Web/API/RTCStatsReport
|
15
|
+
*
|
16
|
+
* @returns Promise<RTCStatsReport> | undefined
|
17
|
+
*/
|
18
|
+
getRTCStatsReport(): Promise<RTCStatsReport | undefined>;
|
12
19
|
startMonitor(): void;
|
13
20
|
protected abstract monitorReceiver(): void;
|
14
21
|
}
|
@@ -134,7 +134,11 @@ export interface ScreenShareCaptureOptions {
|
|
134
134
|
video?: true | {
|
135
135
|
displaySurface?: 'window' | 'browser' | 'monitor';
|
136
136
|
};
|
137
|
-
/**
|
137
|
+
/**
|
138
|
+
* capture resolution, defaults to screen resolution
|
139
|
+
* NOTE: In Safari 17, specifying any resolution at all would lead to a low-resolution
|
140
|
+
* capture. https://bugs.webkit.org/show_bug.cgi?id=263015
|
141
|
+
*/
|
138
142
|
resolution?: VideoResolution;
|
139
143
|
/** a CaptureController object instance containing methods that can be used to further manipulate the capture session if included. */
|
140
144
|
controller?: unknown;
|
@@ -230,9 +234,9 @@ export type BackupVideoCodec = (typeof backupCodecs)[number];
|
|
230
234
|
export declare function isBackupCodec(codec: string): codec is BackupVideoCodec;
|
231
235
|
export declare function isCodecEqual(c1: string | undefined, c2: string | undefined): boolean;
|
232
236
|
/**
|
233
|
-
* scalability modes for svc
|
237
|
+
* scalability modes for svc.
|
234
238
|
*/
|
235
|
-
export type ScalabilityMode = 'L3T3' | 'L3T3_KEY';
|
239
|
+
export type ScalabilityMode = 'L1T3' | 'L2T3' | 'L2T3_KEY' | 'L3T3' | 'L3T3_KEY';
|
236
240
|
export declare namespace AudioPresets {
|
237
241
|
const telephone: AudioPreset;
|
238
242
|
const speech: AudioPreset;
|
package/package.json
CHANGED
package/src/e2ee/utils.ts
CHANGED
@@ -134,3 +134,55 @@ export async function ratchet(material: CryptoKey, salt: string): Promise<ArrayB
|
|
134
134
|
// https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/deriveBits
|
135
135
|
return crypto.subtle.deriveBits(algorithmOptions, material, 256);
|
136
136
|
}
|
137
|
+
|
138
|
+
export function needsRbspUnescaping(frameData: Uint8Array) {
|
139
|
+
for (var i = 0; i < frameData.length - 3; i++) {
|
140
|
+
if (frameData[i] == 0 && frameData[i + 1] == 0 && frameData[i + 2] == 3) return true;
|
141
|
+
}
|
142
|
+
return false;
|
143
|
+
}
|
144
|
+
|
145
|
+
export function parseRbsp(stream: Uint8Array): Uint8Array {
|
146
|
+
const dataOut: number[] = [];
|
147
|
+
var length = stream.length;
|
148
|
+
for (var i = 0; i < stream.length; ) {
|
149
|
+
// Be careful about over/underflow here. byte_length_ - 3 can underflow, and
|
150
|
+
// i + 3 can overflow, but byte_length_ - i can't, because i < byte_length_
|
151
|
+
// above, and that expression will produce the number of bytes left in
|
152
|
+
// the stream including the byte at i.
|
153
|
+
if (length - i >= 3 && !stream[i] && !stream[i + 1] && stream[i + 2] == 3) {
|
154
|
+
// Two rbsp bytes.
|
155
|
+
dataOut.push(stream[i++]);
|
156
|
+
dataOut.push(stream[i++]);
|
157
|
+
// Skip the emulation byte.
|
158
|
+
i++;
|
159
|
+
} else {
|
160
|
+
// Single rbsp byte.
|
161
|
+
dataOut.push(stream[i++]);
|
162
|
+
}
|
163
|
+
}
|
164
|
+
return new Uint8Array(dataOut);
|
165
|
+
}
|
166
|
+
|
167
|
+
const kZerosInStartSequence = 2;
|
168
|
+
const kEmulationByte = 3;
|
169
|
+
|
170
|
+
export function writeRbsp(data_in: Uint8Array): Uint8Array {
|
171
|
+
const dataOut: number[] = [];
|
172
|
+
var numConsecutiveZeros = 0;
|
173
|
+
for (var i = 0; i < data_in.length; ++i) {
|
174
|
+
var byte = data_in[i];
|
175
|
+
if (byte <= kEmulationByte && numConsecutiveZeros >= kZerosInStartSequence) {
|
176
|
+
// Need to escape.
|
177
|
+
dataOut.push(kEmulationByte);
|
178
|
+
numConsecutiveZeros = 0;
|
179
|
+
}
|
180
|
+
dataOut.push(byte);
|
181
|
+
if (byte == 0) {
|
182
|
+
++numConsecutiveZeros;
|
183
|
+
} else {
|
184
|
+
numConsecutiveZeros = 0;
|
185
|
+
}
|
186
|
+
}
|
187
|
+
return new Uint8Array(dataOut);
|
188
|
+
}
|
@@ -8,7 +8,7 @@ import { ENCRYPTION_ALGORITHM, IV_LENGTH, UNENCRYPTED_BYTES } from '../constants
|
|
8
8
|
import { CryptorError, CryptorErrorReason } from '../errors';
|
9
9
|
import { CryptorCallbacks, CryptorEvent } from '../events';
|
10
10
|
import type { DecodeRatchetOptions, KeyProviderOptions, KeySet } from '../types';
|
11
|
-
import { deriveKeys, isVideoFrame } from '../utils';
|
11
|
+
import { deriveKeys, isVideoFrame, needsRbspUnescaping, parseRbsp, writeRbsp } from '../utils';
|
12
12
|
import type { ParticipantKeyHandler } from './ParticipantKeyHandler';
|
13
13
|
import { SifGuard } from './SifGuard';
|
14
14
|
|
@@ -211,13 +211,9 @@ export class FrameCryptor extends BaseFrameCryptor {
|
|
211
211
|
encodedFrame.getMetadata().synchronizationSource ?? -1,
|
212
212
|
encodedFrame.timestamp,
|
213
213
|
);
|
214
|
-
|
214
|
+
let frameInfo = this.getUnencryptedBytes(encodedFrame);
|
215
215
|
// Thіs is not encrypted and contains the VP8 payload descriptor or the Opus TOC byte.
|
216
|
-
const frameHeader = new Uint8Array(
|
217
|
-
encodedFrame.data,
|
218
|
-
0,
|
219
|
-
this.getUnencryptedBytes(encodedFrame),
|
220
|
-
);
|
216
|
+
const frameHeader = new Uint8Array(encodedFrame.data, 0, frameInfo.unencryptedBytes);
|
221
217
|
|
222
218
|
// Frame trailer contains the R|IV_LENGTH and key index
|
223
219
|
const frameTrailer = new Uint8Array(2);
|
@@ -240,20 +236,25 @@ export class FrameCryptor extends BaseFrameCryptor {
|
|
240
236
|
additionalData: new Uint8Array(encodedFrame.data, 0, frameHeader.byteLength),
|
241
237
|
},
|
242
238
|
encryptionKey,
|
243
|
-
new Uint8Array(encodedFrame.data,
|
239
|
+
new Uint8Array(encodedFrame.data, frameInfo.unencryptedBytes),
|
244
240
|
);
|
245
241
|
|
246
|
-
|
247
|
-
|
242
|
+
let newDataWithoutHeader = new Uint8Array(
|
243
|
+
cipherText.byteLength + iv.byteLength + frameTrailer.byteLength,
|
248
244
|
);
|
249
|
-
|
245
|
+
newDataWithoutHeader.set(new Uint8Array(cipherText)); // add ciphertext.
|
246
|
+
newDataWithoutHeader.set(new Uint8Array(iv), cipherText.byteLength); // append IV.
|
247
|
+
newDataWithoutHeader.set(frameTrailer, cipherText.byteLength + iv.byteLength); // append frame trailer.
|
248
|
+
|
249
|
+
if (frameInfo.isH264) {
|
250
|
+
newDataWithoutHeader = writeRbsp(newDataWithoutHeader);
|
251
|
+
}
|
250
252
|
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
newUint8.set(frameTrailer, frameHeader.byteLength + cipherText.byteLength + iv.byteLength); // append frame trailer.
|
253
|
+
var newData = new Uint8Array(frameHeader.byteLength + newDataWithoutHeader.byteLength);
|
254
|
+
newData.set(frameHeader);
|
255
|
+
newData.set(newDataWithoutHeader, frameHeader.byteLength);
|
255
256
|
|
256
|
-
encodedFrame.data = newData;
|
257
|
+
encodedFrame.data = newData.buffer;
|
257
258
|
|
258
259
|
return controller.enqueue(encodedFrame);
|
259
260
|
} catch (e: any) {
|
@@ -350,7 +351,7 @@ export class FrameCryptor extends BaseFrameCryptor {
|
|
350
351
|
if (!ratchetOpts.encryptionKey && !keySet) {
|
351
352
|
throw new TypeError(`no encryption key found for decryption of ${this.participantIdentity}`);
|
352
353
|
}
|
353
|
-
|
354
|
+
let frameInfo = this.getUnencryptedBytes(encodedFrame);
|
354
355
|
// Construct frame trailer. Similar to the frame header described in
|
355
356
|
// https://tools.ietf.org/html/draft-omara-sframe-00#section-4.2
|
356
357
|
// but we put it at the end.
|
@@ -360,11 +361,20 @@ export class FrameCryptor extends BaseFrameCryptor {
|
|
360
361
|
// ---------+-------------------------+-+---------+----
|
361
362
|
|
362
363
|
try {
|
363
|
-
const frameHeader = new Uint8Array(
|
364
|
+
const frameHeader = new Uint8Array(encodedFrame.data, 0, frameInfo.unencryptedBytes);
|
365
|
+
var encryptedData = new Uint8Array(
|
364
366
|
encodedFrame.data,
|
365
|
-
|
366
|
-
|
367
|
+
frameHeader.length,
|
368
|
+
encodedFrame.data.byteLength - frameHeader.length,
|
367
369
|
);
|
370
|
+
if (frameInfo.isH264 && needsRbspUnescaping(encryptedData)) {
|
371
|
+
encryptedData = parseRbsp(encryptedData);
|
372
|
+
const newUint8 = new Uint8Array(frameHeader.byteLength + encryptedData.byteLength);
|
373
|
+
newUint8.set(frameHeader);
|
374
|
+
newUint8.set(encryptedData, frameHeader.byteLength);
|
375
|
+
encodedFrame.data = newUint8.buffer;
|
376
|
+
}
|
377
|
+
|
368
378
|
const frameTrailer = new Uint8Array(encodedFrame.data, encodedFrame.data.byteLength - 2, 2);
|
369
379
|
|
370
380
|
const ivLength = frameTrailer[0];
|
@@ -493,7 +503,11 @@ export class FrameCryptor extends BaseFrameCryptor {
|
|
493
503
|
return iv;
|
494
504
|
}
|
495
505
|
|
496
|
-
private getUnencryptedBytes(frame: RTCEncodedVideoFrame | RTCEncodedAudioFrame):
|
506
|
+
private getUnencryptedBytes(frame: RTCEncodedVideoFrame | RTCEncodedAudioFrame): {
|
507
|
+
unencryptedBytes: number;
|
508
|
+
isH264: boolean;
|
509
|
+
} {
|
510
|
+
var frameInfo = { unencryptedBytes: 0, isH264: false };
|
497
511
|
if (isVideoFrame(frame)) {
|
498
512
|
let detectedCodec = this.getVideoCodec(frame) ?? this.videoCodec;
|
499
513
|
|
@@ -502,7 +516,8 @@ export class FrameCryptor extends BaseFrameCryptor {
|
|
502
516
|
}
|
503
517
|
|
504
518
|
if (detectedCodec === 'vp8') {
|
505
|
-
|
519
|
+
frameInfo.unencryptedBytes = UNENCRYPTED_BYTES[frame.type];
|
520
|
+
return frameInfo;
|
506
521
|
}
|
507
522
|
|
508
523
|
const data = new Uint8Array(frame.data);
|
@@ -510,19 +525,20 @@ export class FrameCryptor extends BaseFrameCryptor {
|
|
510
525
|
const naluIndices = findNALUIndices(data);
|
511
526
|
|
512
527
|
// if the detected codec is undefined we test whether it _looks_ like a h264 frame as a best guess
|
513
|
-
|
528
|
+
frameInfo.isH264 =
|
514
529
|
detectedCodec === 'h264' ||
|
515
530
|
naluIndices.some((naluIndex) =>
|
516
531
|
[NALUType.SLICE_IDR, NALUType.SLICE_NON_IDR].includes(parseNALUType(data[naluIndex])),
|
517
532
|
);
|
518
533
|
|
519
|
-
if (isH264) {
|
534
|
+
if (frameInfo.isH264) {
|
520
535
|
for (const index of naluIndices) {
|
521
536
|
let type = parseNALUType(data[index]);
|
522
537
|
switch (type) {
|
523
538
|
case NALUType.SLICE_IDR:
|
524
539
|
case NALUType.SLICE_NON_IDR:
|
525
|
-
|
540
|
+
frameInfo.unencryptedBytes = index + 2;
|
541
|
+
return frameInfo;
|
526
542
|
default:
|
527
543
|
break;
|
528
544
|
}
|
@@ -533,9 +549,11 @@ export class FrameCryptor extends BaseFrameCryptor {
|
|
533
549
|
// no op, we just continue and fallback to vp8
|
534
550
|
}
|
535
551
|
|
536
|
-
|
552
|
+
frameInfo.unencryptedBytes = UNENCRYPTED_BYTES[frame.type];
|
553
|
+
return frameInfo;
|
537
554
|
} else {
|
538
|
-
|
555
|
+
frameInfo.unencryptedBytes = UNENCRYPTED_BYTES.audio;
|
556
|
+
return frameInfo;
|
539
557
|
}
|
540
558
|
}
|
541
559
|
|
package/src/room/RTCEngine.ts
CHANGED
@@ -267,7 +267,7 @@ export default class RTCEngine extends (EventEmitter as new () => TypedEventEmit
|
|
267
267
|
this.subscriber.close();
|
268
268
|
this.subscriber = undefined;
|
269
269
|
}
|
270
|
-
|
270
|
+
this.hasPublished = false;
|
271
271
|
this.primaryPC = undefined;
|
272
272
|
|
273
273
|
const dcCleanup = (dc: RTCDataChannel | undefined) => {
|
@@ -1092,7 +1092,8 @@ export default class RTCEngine extends (EventEmitter as new () => TypedEventEmit
|
|
1092
1092
|
// this means we'd have to check its status manually and update address
|
1093
1093
|
// manually
|
1094
1094
|
now - startTime > minReconnectWait &&
|
1095
|
-
this.primaryPC?.connectionState === 'connected'
|
1095
|
+
this.primaryPC?.connectionState === 'connected' &&
|
1096
|
+
(!this.hasPublished || this.publisher?.pc.connectionState === 'connected')
|
1096
1097
|
) {
|
1097
1098
|
this.pcState = PCState.Connected;
|
1098
1099
|
}
|
package/src/room/Room.ts
CHANGED
@@ -457,9 +457,9 @@ class Room extends (EventEmitter as new () => TypedEmitter<RoomEventCallbacks>)
|
|
457
457
|
}
|
458
458
|
}
|
459
459
|
if (nextUrl) {
|
460
|
-
log.info(
|
461
|
-
nextUrl
|
462
|
-
|
460
|
+
log.info(
|
461
|
+
`Initial connection failed with ConnectionError: ${e.message}. Retrying with another region: ${nextUrl}`,
|
462
|
+
);
|
463
463
|
await connectFn(resolve, reject, nextUrl);
|
464
464
|
} else {
|
465
465
|
reject(e);
|
package/src/room/events.ts
CHANGED
@@ -241,7 +241,7 @@ export enum RoomEvent {
|
|
241
241
|
/**
|
242
242
|
* LiveKit will attempt to autoplay all audio tracks when you attach them to
|
243
243
|
* audio elements. However, if that fails, we'll notify you via AudioPlaybackStatusChanged.
|
244
|
-
* `Room.
|
244
|
+
* `Room.canPlaybackAudio` will indicate if audio playback is permitted.
|
245
245
|
*/
|
246
246
|
AudioPlaybackStatusChanged = 'audioPlaybackChanged',
|
247
247
|
|
@@ -33,7 +33,7 @@ import type {
|
|
33
33
|
TrackPublishOptions,
|
34
34
|
VideoCaptureOptions,
|
35
35
|
} from '../track/options';
|
36
|
-
import {
|
36
|
+
import { VideoPresets, isBackupCodec, isCodecEqual } from '../track/options';
|
37
37
|
import {
|
38
38
|
constraintsForOptions,
|
39
39
|
mergeDefaultOptions,
|
@@ -145,8 +145,8 @@ export default class LocalParticipant extends Participant {
|
|
145
145
|
|
146
146
|
this.engine
|
147
147
|
.on(EngineEvent.Connected, this.handleReconnected)
|
148
|
-
.on(EngineEvent.
|
149
|
-
.on(EngineEvent.
|
148
|
+
.on(EngineEvent.SignalRestarted, this.handleReconnected)
|
149
|
+
.on(EngineEvent.SignalResumed, this.handleReconnected)
|
150
150
|
.on(EngineEvent.Restarting, this.handleReconnecting)
|
151
151
|
.on(EngineEvent.Resuming, this.handleReconnecting)
|
152
152
|
.on(EngineEvent.Disconnected, this.handleDisconnected);
|
@@ -444,9 +444,6 @@ export default class LocalParticipant extends Participant {
|
|
444
444
|
if (options === undefined) {
|
445
445
|
options = {};
|
446
446
|
}
|
447
|
-
if (options.resolution === undefined) {
|
448
|
-
options.resolution = ScreenSharePresets.h1080fps15.resolution;
|
449
|
-
}
|
450
447
|
|
451
448
|
if (navigator.mediaDevices.getDisplayMedia === undefined) {
|
452
449
|
throw new DeviceUnsupportedError('getDisplayMedia not supported');
|
@@ -682,6 +679,10 @@ export default class LocalParticipant extends Participant {
|
|
682
679
|
// for svc codecs, disable simulcast and use vp8 for backup codec
|
683
680
|
if (track instanceof LocalVideoTrack) {
|
684
681
|
if (isSVCCodec(opts.videoCodec)) {
|
682
|
+
// vp9 svc with screenshare has problem to encode, always use L1T3 here
|
683
|
+
if (track.source === Track.Source.ScreenShare && opts.videoCodec === 'vp9') {
|
684
|
+
opts.scalabilityMode = 'L1T3';
|
685
|
+
}
|
685
686
|
// set scalabilityMode to 'L3T3_KEY' by default
|
686
687
|
opts.scalabilityMode = opts.scalabilityMode ?? 'L3T3_KEY';
|
687
688
|
}
|
@@ -372,6 +372,20 @@ export default abstract class LocalTrack extends Track {
|
|
372
372
|
}
|
373
373
|
}
|
374
374
|
|
375
|
+
/**
|
376
|
+
* Gets the RTCStatsReport for the LocalTrack's underlying RTCRtpSender
|
377
|
+
* See https://developer.mozilla.org/en-US/docs/Web/API/RTCStatsReport
|
378
|
+
*
|
379
|
+
* @returns Promise<RTCStatsReport> | undefined
|
380
|
+
*/
|
381
|
+
async getRTCStatsReport(): Promise<RTCStatsReport | undefined> {
|
382
|
+
if (!this.sender?.getStats) {
|
383
|
+
return;
|
384
|
+
}
|
385
|
+
const statsReport = await this.sender.getStats();
|
386
|
+
return statsReport;
|
387
|
+
}
|
388
|
+
|
375
389
|
/**
|
376
390
|
* Sets a processor on this track.
|
377
391
|
* See https://github.com/livekit/track-processors-js for example usage
|
@@ -51,6 +51,20 @@ export default abstract class RemoteTrack extends Track {
|
|
51
51
|
super.disable();
|
52
52
|
}
|
53
53
|
|
54
|
+
/**
|
55
|
+
* Gets the RTCStatsReport for the RemoteTrack's underlying RTCRtpReceiver
|
56
|
+
* See https://developer.mozilla.org/en-US/docs/Web/API/RTCStatsReport
|
57
|
+
*
|
58
|
+
* @returns Promise<RTCStatsReport> | undefined
|
59
|
+
*/
|
60
|
+
async getRTCStatsReport(): Promise<RTCStatsReport | undefined> {
|
61
|
+
if (!this.receiver?.getStats) {
|
62
|
+
return;
|
63
|
+
}
|
64
|
+
const statsReport = await this.receiver.getStats();
|
65
|
+
return statsReport;
|
66
|
+
}
|
67
|
+
|
54
68
|
/* @internal */
|
55
69
|
startMonitor() {
|
56
70
|
if (!this.monitorInterval) {
|
@@ -153,7 +153,11 @@ export interface ScreenShareCaptureOptions {
|
|
153
153
|
*/
|
154
154
|
video?: true | { displaySurface?: 'window' | 'browser' | 'monitor' };
|
155
155
|
|
156
|
-
/**
|
156
|
+
/**
|
157
|
+
* capture resolution, defaults to screen resolution
|
158
|
+
* NOTE: In Safari 17, specifying any resolution at all would lead to a low-resolution
|
159
|
+
* capture. https://bugs.webkit.org/show_bug.cgi?id=263015
|
160
|
+
*/
|
157
161
|
resolution?: VideoResolution;
|
158
162
|
|
159
163
|
/** a CaptureController object instance containing methods that can be used to further manipulate the capture session if included. */
|
@@ -298,9 +302,9 @@ export function isCodecEqual(c1: string | undefined, c2: string | undefined): bo
|
|
298
302
|
}
|
299
303
|
|
300
304
|
/**
|
301
|
-
* scalability modes for svc
|
305
|
+
* scalability modes for svc.
|
302
306
|
*/
|
303
|
-
export type ScalabilityMode = 'L3T3' | 'L3T3_KEY';
|
307
|
+
export type ScalabilityMode = 'L1T3' | 'L2T3' | 'L2T3_KEY' | 'L3T3' | 'L3T3_KEY';
|
304
308
|
|
305
309
|
export namespace AudioPresets {
|
306
310
|
export const telephone: AudioPreset = {
|