livekit-client 2.13.5 → 2.13.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/livekit-client.e2ee.worker.js +1 -1
- package/dist/livekit-client.e2ee.worker.js.map +1 -1
- package/dist/livekit-client.e2ee.worker.mjs +11 -3
- package/dist/livekit-client.e2ee.worker.mjs.map +1 -1
- package/dist/livekit-client.esm.mjs +86 -76
- 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/api/SignalClient.d.ts +5 -5
- package/dist/src/api/SignalClient.d.ts.map +1 -1
- package/dist/src/connectionHelper/checks/publishVideo.d.ts.map +1 -1
- package/dist/src/e2ee/E2eeManager.d.ts.map +1 -1
- package/dist/src/e2ee/types.d.ts +1 -0
- package/dist/src/e2ee/types.d.ts.map +1 -1
- package/dist/src/e2ee/worker/FrameCryptor.d.ts +2 -1
- package/dist/src/e2ee/worker/FrameCryptor.d.ts.map +1 -1
- package/dist/src/room/PCTransport.d.ts +3 -2
- package/dist/src/room/PCTransport.d.ts.map +1 -1
- package/dist/src/room/PCTransportManager.d.ts +3 -3
- package/dist/src/room/PCTransportManager.d.ts.map +1 -1
- package/dist/src/room/RTCEngine.d.ts +4 -0
- package/dist/src/room/RTCEngine.d.ts.map +1 -1
- package/dist/src/room/track/LocalVideoTrack.d.ts.map +1 -1
- package/dist/ts4.2/src/api/SignalClient.d.ts +5 -5
- package/dist/ts4.2/src/e2ee/types.d.ts +1 -0
- package/dist/ts4.2/src/e2ee/worker/FrameCryptor.d.ts +2 -1
- package/dist/ts4.2/src/room/PCTransport.d.ts +3 -2
- package/dist/ts4.2/src/room/PCTransportManager.d.ts +3 -3
- package/dist/ts4.2/src/room/RTCEngine.d.ts +4 -0
- package/package.json +8 -8
- package/src/api/SignalClient.ts +13 -14
- package/src/connectionHelper/checks/publishVideo.ts +1 -0
- package/src/e2ee/E2eeManager.ts +3 -0
- package/src/e2ee/types.ts +1 -0
- package/src/e2ee/worker/FrameCryptor.ts +15 -0
- package/src/e2ee/worker/e2ee.worker.ts +2 -0
- package/src/room/PCTransport.ts +30 -4
- package/src/room/PCTransportManager.ts +10 -7
- package/src/room/RTCEngine.ts +15 -7
- package/src/room/Room.ts +9 -9
- package/src/room/track/LocalVideoTrack.ts +14 -15
@@ -34,8 +34,8 @@ export declare class SignalClient {
|
|
34
34
|
/** simulate signaling latency by delaying messages */
|
35
35
|
signalLatency?: number;
|
36
36
|
onClose?: (reason: string) => void;
|
37
|
-
onAnswer?: (sd: RTCSessionDescriptionInit) => void;
|
38
|
-
onOffer?: (sd: RTCSessionDescriptionInit) => void;
|
37
|
+
onAnswer?: (sd: RTCSessionDescriptionInit, offerId: number) => void;
|
38
|
+
onOffer?: (sd: RTCSessionDescriptionInit, offerId: number) => void;
|
39
39
|
onTrickle?: (sd: RTCIceCandidateInit, target: SignalTarget) => void;
|
40
40
|
onParticipantUpdate?: (updates: ParticipantInfo[]) => void;
|
41
41
|
onLocalTrackPublished?: (res: TrackPublishedResponse) => void;
|
@@ -79,8 +79,8 @@ export declare class SignalClient {
|
|
79
79
|
/** @internal */
|
80
80
|
resetCallbacks: () => void;
|
81
81
|
close(updateState?: boolean): Promise<void>;
|
82
|
-
sendOffer(offer: RTCSessionDescriptionInit): void;
|
83
|
-
sendAnswer(answer: RTCSessionDescriptionInit): Promise<void>;
|
82
|
+
sendOffer(offer: RTCSessionDescriptionInit, offerId: number): void;
|
83
|
+
sendAnswer(answer: RTCSessionDescriptionInit, offerId: number): Promise<void>;
|
84
84
|
sendIceCandidate(candidate: RTCIceCandidateInit, target: SignalTarget): Promise<void>;
|
85
85
|
sendMuteTrack(trackSid: string, muted: boolean): Promise<void>;
|
86
86
|
sendAddTrack(req: AddTrackRequest): Promise<void>;
|
@@ -111,6 +111,6 @@ export declare class SignalClient {
|
|
111
111
|
private startPingInterval;
|
112
112
|
private clearPingInterval;
|
113
113
|
}
|
114
|
-
export declare function toProtoSessionDescription(rsd: RTCSessionDescription | RTCSessionDescriptionInit): SessionDescription;
|
114
|
+
export declare function toProtoSessionDescription(rsd: RTCSessionDescription | RTCSessionDescriptionInit, id?: number): SessionDescription;
|
115
115
|
export {};
|
116
116
|
//# sourceMappingURL=SignalClient.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"SignalClient.d.ts","sourceRoot":"","sources":["../../../src/api/SignalClient.ts"],"names":[],"mappings":"AACA,OAAO,EACL,eAAe,EACf,iBAAiB,EAEjB,uBAAuB,EAEvB,YAAY,EACZ,YAAY,EAGZ,eAAe,EAEf,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,IAAI,EACJ,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EAEb,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,iBAAiB,EACjB,uBAAuB,EAEvB,4BAA4B,EAC5B,oBAAoB,EACpB,SAAS,EACT,eAAe,EACf,sBAAsB,EACtB,wBAAwB,EAIxB,kBAAkB,EAClB,mBAAmB,EAEnB,UAAU,EAEX,MAAM,mBAAmB,CAAC;AAI3B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAIjD,UAAU,WAAY,SAAQ,aAAa;IACzC,eAAe;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,eAAe;IACf,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAGD,MAAM,WAAW,aAAa;IAC5B,aAAa,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,KAAK,aAAa,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;AAmB9C,oBAAY,qBAAqB;IAC/B,UAAU,IAAA;IACV,SAAS,IAAA;IACT,YAAY,IAAA;IACZ,aAAa,IAAA;IACb,YAAY,IAAA;CACb;AAED,gBAAgB;AAChB,qBAAa,YAAY;IACvB,YAAY,EAAE,UAAU,CAAC;IAEzB,cAAc,EAAE,KAAK,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAE3C,OAAO,EAAE,OAAO,CAAC;IAEjB,iCAAiC;IACjC,GAAG,EAAE,MAAM,CAAK;IAEhB,sDAAsD;IACtD,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAEnC,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,yBAAyB,KAAK,IAAI,CAAC;
|
1
|
+
{"version":3,"file":"SignalClient.d.ts","sourceRoot":"","sources":["../../../src/api/SignalClient.ts"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"publishVideo.d.ts","sourceRoot":"","sources":["../../../../src/connectionHelper/checks/publishVideo.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,qBAAa,iBAAkB,SAAQ,OAAO;IAC5C,IAAI,WAAW,IAAI,MAAM,CAExB;IAEK,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAgCxB,aAAa,CAAC,KAAK,EAAE,gBAAgB;
|
1
|
+
{"version":3,"file":"publishVideo.d.ts","sourceRoot":"","sources":["../../../../src/connectionHelper/checks/publishVideo.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,qBAAa,iBAAkB,SAAQ,OAAO;IAC5C,IAAI,WAAW,IAAI,MAAM,CAExB;IAEK,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAgCxB,aAAa,CAAC,KAAK,EAAE,gBAAgB;CAgD5C"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"E2eeManager.d.ts","sourceRoot":"","sources":["../../../src/e2ee/E2eeManager.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,iBAAiB,MAAM,eAAe,CAAC;AAEnD,OAAO,KAAK,SAAS,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,IAAI,MAAM,cAAc,CAAC;AAWrC,OAAO,EAAE,KAAK,oBAAoB,EAAqC,MAAM,UAAU,CAAC;AACxF,OAAO,KAAK,EACV,kBAAkB,EAYnB,MAAM,SAAS,CAAC;AAGjB,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IACxB,WAAW,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAAC;IACrC,4BAA4B,CAAC,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClF,aAAa,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC;IACzC,EAAE,CAAC,CAAC,SAAS,MAAM,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;CAC7F;gCAM0B,UAAU,iBAAiB,CAAC,oBAAoB,CAAC;AAJ5E;;GAEG;AACH,qBAAa,WACX,SAAQ,gBACR,YAAW,eAAe;IAE1B,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IAEzB,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;IAEtB,OAAO,CAAC,iBAAiB,CAAU;IAEnC,OAAO,CAAC,WAAW,CAAkB;gBAEzB,OAAO,EAAE,kBAAkB;IAOvC;;OAEG;IACH,KAAK,CAAC,IAAI,EAAE,IAAI;IA2BhB;;OAEG;IACH,4BAA4B,CAAC,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM;IAK1E;;OAEG;IACH,aAAa,CAAC,OAAO,EAAE,UAAU;IAQjC,OAAO,CAAC,eAAe,CAoDrB;IAEF,OAAO,CAAC,aAAa,CAGnB;IAEK,WAAW,CAAC,MAAM,EAAE,SAAS;IAMpC,OAAO,CAAC,mBAAmB;IAwD3B,OAAO,CAAC,kBAAkB;IAc1B,OAAO,CAAC,OAAO;IAgBf,OAAO,CAAC,UAAU;IAelB,OAAO,CAAC,UAAU;IAiBlB,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,eAAe;IAQvB;;;;OAIG;YACW,cAAc;
|
1
|
+
{"version":3,"file":"E2eeManager.d.ts","sourceRoot":"","sources":["../../../src/e2ee/E2eeManager.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,iBAAiB,MAAM,eAAe,CAAC;AAEnD,OAAO,KAAK,SAAS,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,IAAI,MAAM,cAAc,CAAC;AAWrC,OAAO,EAAE,KAAK,oBAAoB,EAAqC,MAAM,UAAU,CAAC;AACxF,OAAO,KAAK,EACV,kBAAkB,EAYnB,MAAM,SAAS,CAAC;AAGjB,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IACxB,WAAW,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAAC;IACrC,4BAA4B,CAAC,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClF,aAAa,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC;IACzC,EAAE,CAAC,CAAC,SAAS,MAAM,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;CAC7F;gCAM0B,UAAU,iBAAiB,CAAC,oBAAoB,CAAC;AAJ5E;;GAEG;AACH,qBAAa,WACX,SAAQ,gBACR,YAAW,eAAe;IAE1B,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IAEzB,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;IAEtB,OAAO,CAAC,iBAAiB,CAAU;IAEnC,OAAO,CAAC,WAAW,CAAkB;gBAEzB,OAAO,EAAE,kBAAkB;IAOvC;;OAEG;IACH,KAAK,CAAC,IAAI,EAAE,IAAI;IA2BhB;;OAEG;IACH,4BAA4B,CAAC,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM;IAK1E;;OAEG;IACH,aAAa,CAAC,OAAO,EAAE,UAAU;IAQjC,OAAO,CAAC,eAAe,CAoDrB;IAEF,OAAO,CAAC,aAAa,CAGnB;IAEK,WAAW,CAAC,MAAM,EAAE,SAAS;IAMpC,OAAO,CAAC,mBAAmB;IAwD3B,OAAO,CAAC,kBAAkB;IAc1B,OAAO,CAAC,OAAO;IAgBf,OAAO,CAAC,UAAU;IAelB,OAAO,CAAC,UAAU;IAiBlB,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,eAAe;IAQvB;;;;OAIG;YACW,cAAc;IAmE5B;;;;OAIG;IACH,OAAO,CAAC,YAAY;CAwCrB"}
|
package/dist/src/e2ee/types.d.ts
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/e2ee/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAErD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,WAAY,SAAQ,WAAW;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE;QACJ,kBAAkB,EAAE,kBAAkB,CAAC;QACvC,QAAQ,EAAE,QAAQ,CAAC;KACpB,CAAC;CACH;AAED,MAAM,WAAW,aAAc,SAAQ,WAAW;IAChD,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE;QACJ,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,WAAW,EAAE,OAAO,CAAC;QACrB,GAAG,EAAE,SAAS,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED,MAAM,WAAW,kBAAmB,SAAQ,WAAW;IACrD,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,EAAE;QACJ,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC7B,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC;CACH;AAED,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACpD,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,EAAE;QACJ,OAAO,EAAE,UAAU,CAAC;KACrB,CAAC;CACH;AAED,MAAM,WAAW,aAAc,SAAQ,WAAW;IAChD,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC1B,IAAI,EAAE;QACJ,mBAAmB,EAAE,MAAM,CAAC;QAC5B,cAAc,EAAE,cAAc,CAAC;QAC/B,cAAc,EAAE,cAAc,CAAC;QAC/B,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,UAAU,CAAC;
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/e2ee/types.ts"],"names":[],"mappings":"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"}
|
@@ -36,6 +36,7 @@ export declare class FrameCryptor extends BaseFrameCryptor {
|
|
36
36
|
private sifTrailer;
|
37
37
|
private sifGuard;
|
38
38
|
private detectedCodec?;
|
39
|
+
private isTransformActive;
|
39
40
|
constructor(opts: {
|
40
41
|
keys: ParticipantKeyHandler;
|
41
42
|
participantIdentity: string;
|
@@ -64,7 +65,7 @@ export declare class FrameCryptor extends BaseFrameCryptor {
|
|
64
65
|
* @param map
|
65
66
|
*/
|
66
67
|
setRtpMap(map: Map<number, VideoCodec>): void;
|
67
|
-
setupTransform(operation: 'encode' | 'decode', readable: ReadableStream<RTCEncodedVideoFrame | RTCEncodedAudioFrame>, writable: WritableStream<RTCEncodedVideoFrame | RTCEncodedAudioFrame>, trackId: string, codec?: VideoCodec): void;
|
68
|
+
setupTransform(operation: 'encode' | 'decode', readable: ReadableStream<RTCEncodedVideoFrame | RTCEncodedAudioFrame>, writable: WritableStream<RTCEncodedVideoFrame | RTCEncodedAudioFrame>, trackId: string, isReuse: boolean, codec?: VideoCodec): void;
|
68
69
|
setSifTrailer(trailer: Uint8Array): void;
|
69
70
|
/**
|
70
71
|
* Function that will be injected in a stream and will encrypt the given encoded frames.
|
@@ -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,KAAK,gBAAgB,EAAgB,MAAM,WAAW,CAAC;AAChE,OAAO,KAAK,EAAwB,kBAAkB,EAAyB,MAAM,UAAU,CAAC;AAEhG,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;qCAEsD,UAAU,iBAAiB,CAAC,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;IAE3B,OAAO,CAAC,aAAa,CAAC,CAAa;
|
1
|
+
{"version":3,"file":"FrameCryptor.d.ts","sourceRoot":"","sources":["../../../../src/e2ee/worker/FrameCryptor.ts"],"names":[],"mappings":"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"}
|
@@ -20,13 +20,14 @@ export default class PCTransport extends EventEmitter {
|
|
20
20
|
private log;
|
21
21
|
private loggerOptions;
|
22
22
|
private ddExtID;
|
23
|
+
private latestOfferId;
|
23
24
|
pendingCandidates: RTCIceCandidateInit[];
|
24
25
|
restartingIce: boolean;
|
25
26
|
renegotiate: boolean;
|
26
27
|
trackBitrates: TrackBitrateInfo[];
|
27
28
|
remoteStereoMids: string[];
|
28
29
|
remoteNackMids: string[];
|
29
|
-
onOffer?: (offer: RTCSessionDescriptionInit) => void;
|
30
|
+
onOffer?: (offer: RTCSessionDescriptionInit, offerId: number) => void;
|
30
31
|
onIceCandidate?: (candidate: RTCIceCandidate) => void;
|
31
32
|
onIceCandidateError?: (ev: Event) => void;
|
32
33
|
onConnectionStateChange?: (state: RTCPeerConnectionState) => void;
|
@@ -39,7 +40,7 @@ export default class PCTransport extends EventEmitter {
|
|
39
40
|
private get logContext();
|
40
41
|
get isICEConnected(): boolean;
|
41
42
|
addIceCandidate(candidate: RTCIceCandidateInit): Promise<void>;
|
42
|
-
setRemoteDescription(sd: RTCSessionDescriptionInit): Promise<
|
43
|
+
setRemoteDescription(sd: RTCSessionDescriptionInit, offerId: number): Promise<boolean>;
|
43
44
|
negotiate: {
|
44
45
|
(this: unknown, ...args: [onError?: ((e: Error) => void) | undefined] & any[]): Promise<Promise<void>>;
|
45
46
|
cancel: (reason?: any) => void;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"PCTransport.d.ts","sourceRoot":"","sources":["../../../src/room/PCTransport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAMtC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAG7C,gBAAgB;AAChB,UAAU,gBAAgB;IACxB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAYD,eAAO,MAAM,QAAQ;;;;CAIX,CAAC;AAEX,gBAAgB;AAChB,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,YAAY;IACnD,OAAO,CAAC,GAAG,CAA2B;IAEtC,OAAO,KAAK,EAAE,GAKb;IAED,OAAO,CAAC,MAAM,CAAC,CAAmB;IAElC,OAAO,CAAC,GAAG,CAAO;IAElB,OAAO,CAAC,aAAa,CAAgB;IAErC,OAAO,CAAC,OAAO,CAAK;IAEpB,iBAAiB,EAAE,mBAAmB,EAAE,CAAM;IAE9C,aAAa,EAAE,OAAO,CAAS;IAE/B,WAAW,EAAE,OAAO,CAAS;IAE7B,aAAa,EAAE,gBAAgB,EAAE,CAAM;IAEvC,gBAAgB,EAAE,MAAM,EAAE,CAAM;IAEhC,cAAc,EAAE,MAAM,EAAE,CAAM;IAE9B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,IAAI,CAAC;
|
1
|
+
{"version":3,"file":"PCTransport.d.ts","sourceRoot":"","sources":["../../../src/room/PCTransport.ts"],"names":[],"mappings":"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"}
|
@@ -20,7 +20,7 @@ export declare class PCTransportManager {
|
|
20
20
|
onIceCandidate?: (ev: RTCIceCandidate, target: SignalTarget) => void;
|
21
21
|
onDataChannel?: (ev: RTCDataChannelEvent) => void;
|
22
22
|
onTrack?: (ev: RTCTrackEvent) => void;
|
23
|
-
onPublisherOffer?: (offer: RTCSessionDescriptionInit) => void;
|
23
|
+
onPublisherOffer?: (offer: RTCSessionDescriptionInit, offerId: number) => void;
|
24
24
|
private isPublisherConnectionRequired;
|
25
25
|
private isSubscriberConnectionRequired;
|
26
26
|
private state;
|
@@ -33,12 +33,12 @@ export declare class PCTransportManager {
|
|
33
33
|
requirePublisher(require?: boolean): void;
|
34
34
|
requireSubscriber(require?: boolean): void;
|
35
35
|
createAndSendPublisherOffer(options?: RTCOfferOptions): Promise<void>;
|
36
|
-
setPublisherAnswer(sd: RTCSessionDescriptionInit): Promise<
|
36
|
+
setPublisherAnswer(sd: RTCSessionDescriptionInit, offerId: number): Promise<boolean>;
|
37
37
|
removeTrack(sender: RTCRtpSender): void | undefined;
|
38
38
|
close(): Promise<void>;
|
39
39
|
triggerIceRestart(): Promise<void>;
|
40
40
|
addIceCandidate(candidate: RTCIceCandidateInit, target: SignalTarget): Promise<void>;
|
41
|
-
createSubscriberAnswerFromOffer(sd: RTCSessionDescriptionInit): Promise<RTCSessionDescriptionInit>;
|
41
|
+
createSubscriberAnswerFromOffer(sd: RTCSessionDescriptionInit, offerId: number): Promise<RTCSessionDescriptionInit | undefined>;
|
42
42
|
updateConfiguration(config: RTCConfiguration, iceRestart?: boolean): void;
|
43
43
|
ensurePCTransportConnection(abortController?: AbortController, timeout?: number): Promise<void>;
|
44
44
|
negotiate(abortController: AbortController): Promise<void>;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"PCTransportManager.d.ts","sourceRoot":"","sources":["../../../src/room/PCTransportManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,WAAyB,MAAM,eAAe,CAAC;AAItD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAG7C,oBAAY,gBAAgB;IAC1B,GAAG,IAAA;IACH,UAAU,IAAA;IACV,SAAS,IAAA;IACT,MAAM,IAAA;IACN,OAAO,IAAA;IACP,MAAM,IAAA;CACP;AAED,qBAAa,kBAAkB;IACtB,SAAS,EAAE,WAAW,CAAC;IAEvB,UAAU,EAAE,WAAW,CAAC;IAExB,qBAAqB,EAAE,MAAM,CAAmD;IAEvF,IAAW,cAAc,YAExB;IAED,IAAW,eAAe,YAEzB;IAED,IAAW,YAAY,qBAEtB;IAEM,aAAa,CAAC,EAAE,CACrB,KAAK,EAAE,gBAAgB,EACvB,QAAQ,EAAE,sBAAsB,EAChC,QAAQ,EAAE,sBAAsB,KAC7B,IAAI,CAAC;IAEH,cAAc,CAAC,EAAE,CAAC,EAAE,EAAE,eAAe,EAAE,MAAM,EAAE,YAAY,KAAK,IAAI,CAAC;IAErE,aAAa,CAAC,EAAE,CAAC,EAAE,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAElD,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,aAAa,KAAK,IAAI,CAAC;IAEtC,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,IAAI,CAAC;
|
1
|
+
{"version":3,"file":"PCTransportManager.d.ts","sourceRoot":"","sources":["../../../src/room/PCTransportManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,WAAyB,MAAM,eAAe,CAAC;AAItD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAG7C,oBAAY,gBAAgB;IAC1B,GAAG,IAAA;IACH,UAAU,IAAA;IACV,SAAS,IAAA;IACT,MAAM,IAAA;IACN,OAAO,IAAA;IACP,MAAM,IAAA;CACP;AAED,qBAAa,kBAAkB;IACtB,SAAS,EAAE,WAAW,CAAC;IAEvB,UAAU,EAAE,WAAW,CAAC;IAExB,qBAAqB,EAAE,MAAM,CAAmD;IAEvF,IAAW,cAAc,YAExB;IAED,IAAW,eAAe,YAEzB;IAED,IAAW,YAAY,qBAEtB;IAEM,aAAa,CAAC,EAAE,CACrB,KAAK,EAAE,gBAAgB,EACvB,QAAQ,EAAE,sBAAsB,EAChC,QAAQ,EAAE,sBAAsB,KAC7B,IAAI,CAAC;IAEH,cAAc,CAAC,EAAE,CAAC,EAAE,EAAE,eAAe,EAAE,MAAM,EAAE,YAAY,KAAK,IAAI,CAAC;IAErE,aAAa,CAAC,EAAE,CAAC,EAAE,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAElD,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,aAAa,KAAK,IAAI,CAAC;IAEtC,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,yBAAyB,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAEtF,OAAO,CAAC,6BAA6B,CAAU;IAE/C,OAAO,CAAC,8BAA8B,CAAU;IAEhD,OAAO,CAAC,KAAK,CAAmB;IAEhC,OAAO,CAAC,cAAc,CAAQ;IAE9B,OAAO,CAAC,eAAe,CAAQ;IAE/B,OAAO,CAAC,GAAG,CAAO;IAElB,OAAO,CAAC,aAAa,CAAgB;gBAGnC,SAAS,EAAE,gBAAgB,EAC3B,iBAAiB,EAAE,OAAO,EAC1B,aAAa,EAAE,aAAa;IAuC9B,OAAO,KAAK,UAAU,GAIrB;IAED,gBAAgB,CAAC,OAAO,UAAO;IAK/B,iBAAiB,CAAC,OAAO,UAAO;IAKhC,2BAA2B,CAAC,OAAO,CAAC,EAAE,eAAe;IAIrD,kBAAkB,CAAC,EAAE,EAAE,yBAAyB,EAAE,OAAO,EAAE,MAAM;IAIjE,WAAW,CAAC,MAAM,EAAE,YAAY;IAI1B,KAAK;IAkBL,iBAAiB;IAQjB,eAAe,CAAC,SAAS,EAAE,mBAAmB,EAAE,MAAM,EAAE,YAAY;IAQpE,+BAA+B,CAAC,EAAE,EAAE,yBAAyB,EAAE,OAAO,EAAE,MAAM;IAsBpF,mBAAmB,CAAC,MAAM,EAAE,gBAAgB,EAAE,UAAU,CAAC,EAAE,OAAO;IAQ5D,2BAA2B,CAAC,eAAe,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,MAAM;IAqB/E,SAAS,CAAC,eAAe,EAAE,eAAe;IA6BhD,uBAAuB,CAAC,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,qBAAqB;IAIvF,iBAAiB,CAAC,KAAK,EAAE,gBAAgB;IAIzC,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,kBAAkB;IAI7E;;OAEG;IACH,mBAAmB,CAAC,MAAM,CAAC,EAAE,YAAY;IASzC,OAAO,KAAK,kBAAkB,GAS7B;IAED,OAAO,CAAC,WAAW,CA+BjB;YAEY,wBAAwB;CAsDvC"}
|
@@ -27,6 +27,10 @@ export default class RTCEngine extends RTCEngine_base {
|
|
27
27
|
* @internal
|
28
28
|
*/
|
29
29
|
latestJoinResponse?: JoinResponse;
|
30
|
+
/**
|
31
|
+
* @internal
|
32
|
+
*/
|
33
|
+
latestRemoteOfferId: number;
|
30
34
|
get isClosed(): boolean;
|
31
35
|
get pendingReconnect(): boolean;
|
32
36
|
private lossyDC?;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"RTCEngine.d.ts","sourceRoot":"","sources":["../../../src/room/RTCEngine.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,eAAe,EAGpB,KAAK,uBAAuB,EAG5B,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,KAAK,YAAY,EAGjB,eAAe,EAGf,eAAe,EACf,IAAI,IAAI,SAAS,EACjB,iBAAiB,EAIjB,WAAW,EACX,KAAK,iBAAiB,EACtB,uBAAuB,EACvB,KAAK,4BAA4B,EACjC,KAAK,oBAAoB,EAEzB,SAAS,EAET,wBAAwB,EACxB,aAAa,EAGd,MAAM,mBAAmB,CAAC;AAG3B,OAAO,KAAK,iBAAiB,MAAM,eAAe,CAAC;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EACL,YAAY,EAGb,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAGtD,OAAO,WAAyB,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAoB,MAAM,sBAAsB,CAAC;AAE5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAU7D,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjC,OAAO,KAAK,UAAU,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,qBAAqB,MAAM,+BAA+B,CAAC;AACvE,OAAO,eAAe,MAAM,yBAAyB,CAAC;AACtD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,sBAAsB,MAAM,gCAAgC,CAAC;AACzE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;8BA2Bf,UAAU,iBAAiB,CAAC,oBAAoB,CAAC;AADzG,gBAAgB;AAChB,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,cAAmE;
|
1
|
+
{"version":3,"file":"RTCEngine.d.ts","sourceRoot":"","sources":["../../../src/room/RTCEngine.ts"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"LocalVideoTrack.d.ts","sourceRoot":"","sources":["../../../../src/room/track/LocalVideoTrack.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,eAAe,EACf,iBAAiB,EACjB,UAAU,EACX,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;
|
1
|
+
{"version":3,"file":"LocalVideoTrack.d.ts","sourceRoot":"","sources":["../../../../src/room/track/LocalVideoTrack.ts"],"names":[],"mappings":"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"}
|
@@ -34,8 +34,8 @@ export declare class SignalClient {
|
|
34
34
|
/** simulate signaling latency by delaying messages */
|
35
35
|
signalLatency?: number;
|
36
36
|
onClose?: (reason: string) => void;
|
37
|
-
onAnswer?: (sd: RTCSessionDescriptionInit) => void;
|
38
|
-
onOffer?: (sd: RTCSessionDescriptionInit) => void;
|
37
|
+
onAnswer?: (sd: RTCSessionDescriptionInit, offerId: number) => void;
|
38
|
+
onOffer?: (sd: RTCSessionDescriptionInit, offerId: number) => void;
|
39
39
|
onTrickle?: (sd: RTCIceCandidateInit, target: SignalTarget) => void;
|
40
40
|
onParticipantUpdate?: (updates: ParticipantInfo[]) => void;
|
41
41
|
onLocalTrackPublished?: (res: TrackPublishedResponse) => void;
|
@@ -79,8 +79,8 @@ export declare class SignalClient {
|
|
79
79
|
/** @internal */
|
80
80
|
resetCallbacks: () => void;
|
81
81
|
close(updateState?: boolean): Promise<void>;
|
82
|
-
sendOffer(offer: RTCSessionDescriptionInit): void;
|
83
|
-
sendAnswer(answer: RTCSessionDescriptionInit): Promise<void>;
|
82
|
+
sendOffer(offer: RTCSessionDescriptionInit, offerId: number): void;
|
83
|
+
sendAnswer(answer: RTCSessionDescriptionInit, offerId: number): Promise<void>;
|
84
84
|
sendIceCandidate(candidate: RTCIceCandidateInit, target: SignalTarget): Promise<void>;
|
85
85
|
sendMuteTrack(trackSid: string, muted: boolean): Promise<void>;
|
86
86
|
sendAddTrack(req: AddTrackRequest): Promise<void>;
|
@@ -114,6 +114,6 @@ export declare class SignalClient {
|
|
114
114
|
private startPingInterval;
|
115
115
|
private clearPingInterval;
|
116
116
|
}
|
117
|
-
export declare function toProtoSessionDescription(rsd: RTCSessionDescription | RTCSessionDescriptionInit): SessionDescription;
|
117
|
+
export declare function toProtoSessionDescription(rsd: RTCSessionDescription | RTCSessionDescriptionInit, id?: number): SessionDescription;
|
118
118
|
export {};
|
119
119
|
//# sourceMappingURL=SignalClient.d.ts.map
|
@@ -36,6 +36,7 @@ export declare class FrameCryptor extends BaseFrameCryptor {
|
|
36
36
|
private sifTrailer;
|
37
37
|
private sifGuard;
|
38
38
|
private detectedCodec?;
|
39
|
+
private isTransformActive;
|
39
40
|
constructor(opts: {
|
40
41
|
keys: ParticipantKeyHandler;
|
41
42
|
participantIdentity: string;
|
@@ -64,7 +65,7 @@ export declare class FrameCryptor extends BaseFrameCryptor {
|
|
64
65
|
* @param map
|
65
66
|
*/
|
66
67
|
setRtpMap(map: Map<number, VideoCodec>): void;
|
67
|
-
setupTransform(operation: 'encode' | 'decode', readable: ReadableStream<RTCEncodedVideoFrame | RTCEncodedAudioFrame>, writable: WritableStream<RTCEncodedVideoFrame | RTCEncodedAudioFrame>, trackId: string, codec?: VideoCodec): void;
|
68
|
+
setupTransform(operation: 'encode' | 'decode', readable: ReadableStream<RTCEncodedVideoFrame | RTCEncodedAudioFrame>, writable: WritableStream<RTCEncodedVideoFrame | RTCEncodedAudioFrame>, trackId: string, isReuse: boolean, codec?: VideoCodec): void;
|
68
69
|
setSifTrailer(trailer: Uint8Array): void;
|
69
70
|
/**
|
70
71
|
* Function that will be injected in a stream and will encrypt the given encoded frames.
|
@@ -20,13 +20,14 @@ export default class PCTransport extends EventEmitter {
|
|
20
20
|
private log;
|
21
21
|
private loggerOptions;
|
22
22
|
private ddExtID;
|
23
|
+
private latestOfferId;
|
23
24
|
pendingCandidates: RTCIceCandidateInit[];
|
24
25
|
restartingIce: boolean;
|
25
26
|
renegotiate: boolean;
|
26
27
|
trackBitrates: TrackBitrateInfo[];
|
27
28
|
remoteStereoMids: string[];
|
28
29
|
remoteNackMids: string[];
|
29
|
-
onOffer?: (offer: RTCSessionDescriptionInit) => void;
|
30
|
+
onOffer?: (offer: RTCSessionDescriptionInit, offerId: number) => void;
|
30
31
|
onIceCandidate?: (candidate: RTCIceCandidate) => void;
|
31
32
|
onIceCandidateError?: (ev: Event) => void;
|
32
33
|
onConnectionStateChange?: (state: RTCPeerConnectionState) => void;
|
@@ -39,7 +40,7 @@ export default class PCTransport extends EventEmitter {
|
|
39
40
|
private get logContext();
|
40
41
|
get isICEConnected(): boolean;
|
41
42
|
addIceCandidate(candidate: RTCIceCandidateInit): Promise<void>;
|
42
|
-
setRemoteDescription(sd: RTCSessionDescriptionInit): Promise<
|
43
|
+
setRemoteDescription(sd: RTCSessionDescriptionInit, offerId: number): Promise<boolean>;
|
43
44
|
negotiate: {
|
44
45
|
(this: unknown, ...args: [
|
45
46
|
onError?: ((e: Error) => void) | undefined
|
@@ -20,7 +20,7 @@ export declare class PCTransportManager {
|
|
20
20
|
onIceCandidate?: (ev: RTCIceCandidate, target: SignalTarget) => void;
|
21
21
|
onDataChannel?: (ev: RTCDataChannelEvent) => void;
|
22
22
|
onTrack?: (ev: RTCTrackEvent) => void;
|
23
|
-
onPublisherOffer?: (offer: RTCSessionDescriptionInit) => void;
|
23
|
+
onPublisherOffer?: (offer: RTCSessionDescriptionInit, offerId: number) => void;
|
24
24
|
private isPublisherConnectionRequired;
|
25
25
|
private isSubscriberConnectionRequired;
|
26
26
|
private state;
|
@@ -33,12 +33,12 @@ export declare class PCTransportManager {
|
|
33
33
|
requirePublisher(require?: boolean): void;
|
34
34
|
requireSubscriber(require?: boolean): void;
|
35
35
|
createAndSendPublisherOffer(options?: RTCOfferOptions): Promise<void>;
|
36
|
-
setPublisherAnswer(sd: RTCSessionDescriptionInit): Promise<
|
36
|
+
setPublisherAnswer(sd: RTCSessionDescriptionInit, offerId: number): Promise<boolean>;
|
37
37
|
removeTrack(sender: RTCRtpSender): void | undefined;
|
38
38
|
close(): Promise<void>;
|
39
39
|
triggerIceRestart(): Promise<void>;
|
40
40
|
addIceCandidate(candidate: RTCIceCandidateInit, target: SignalTarget): Promise<void>;
|
41
|
-
createSubscriberAnswerFromOffer(sd: RTCSessionDescriptionInit): Promise<RTCSessionDescriptionInit>;
|
41
|
+
createSubscriberAnswerFromOffer(sd: RTCSessionDescriptionInit, offerId: number): Promise<RTCSessionDescriptionInit | undefined>;
|
42
42
|
updateConfiguration(config: RTCConfiguration, iceRestart?: boolean): void;
|
43
43
|
ensurePCTransportConnection(abortController?: AbortController, timeout?: number): Promise<void>;
|
44
44
|
negotiate(abortController: AbortController): Promise<void>;
|
@@ -28,6 +28,10 @@ export default class RTCEngine extends RTCEngine_base {
|
|
28
28
|
* @internal
|
29
29
|
*/
|
30
30
|
latestJoinResponse?: JoinResponse;
|
31
|
+
/**
|
32
|
+
* @internal
|
33
|
+
*/
|
34
|
+
latestRemoteOfferId: number;
|
31
35
|
get isClosed(): boolean;
|
32
36
|
get pendingReconnect(): boolean;
|
33
37
|
private lossyDC?;
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "livekit-client",
|
3
|
-
"version": "2.13.
|
3
|
+
"version": "2.13.6",
|
4
4
|
"description": "JavaScript/TypeScript client SDK for LiveKit",
|
5
5
|
"main": "./dist/livekit-client.umd.js",
|
6
6
|
"unpkg": "./dist/livekit-client.umd.js",
|
@@ -37,7 +37,7 @@
|
|
37
37
|
"license": "Apache-2.0",
|
38
38
|
"dependencies": {
|
39
39
|
"@livekit/mutex": "1.1.1",
|
40
|
-
"@livekit/protocol": "1.39.
|
40
|
+
"@livekit/protocol": "1.39.2",
|
41
41
|
"events": "^3.3.0",
|
42
42
|
"loglevel": "^1.9.2",
|
43
43
|
"sdp-transform": "^2.15.0",
|
@@ -50,13 +50,13 @@
|
|
50
50
|
"@types/dom-mediacapture-record": "^1"
|
51
51
|
},
|
52
52
|
"devDependencies": {
|
53
|
-
"@babel/core": "7.27.
|
53
|
+
"@babel/core": "7.27.4",
|
54
54
|
"@babel/preset-env": "7.27.2",
|
55
55
|
"@bufbuild/protoc-gen-es": "^1.10.0",
|
56
56
|
"@changesets/cli": "2.29.4",
|
57
57
|
"@livekit/changesets-changelog-github": "^0.0.4",
|
58
58
|
"@rollup/plugin-babel": "6.0.4",
|
59
|
-
"@rollup/plugin-commonjs": "28.0.
|
59
|
+
"@rollup/plugin-commonjs": "28.0.5",
|
60
60
|
"@rollup/plugin-json": "6.1.0",
|
61
61
|
"@rollup/plugin-node-resolve": "16.0.1",
|
62
62
|
"@rollup/plugin-terser": "^0.4.4",
|
@@ -64,25 +64,25 @@
|
|
64
64
|
"@size-limit/webpack": "^11.2.0",
|
65
65
|
"@trivago/prettier-plugin-sort-imports": "^5.0.0",
|
66
66
|
"@types/events": "^3.0.3",
|
67
|
-
"@types/sdp-transform": "2.4.
|
67
|
+
"@types/sdp-transform": "2.4.10",
|
68
68
|
"@types/ua-parser-js": "0.7.39",
|
69
69
|
"@typescript-eslint/eslint-plugin": "7.18.0",
|
70
70
|
"@typescript-eslint/parser": "7.18.0",
|
71
71
|
"downlevel-dts": "^0.11.0",
|
72
72
|
"eslint": "8.57.1",
|
73
73
|
"eslint-config-airbnb-typescript": "18.0.0",
|
74
|
-
"eslint-config-prettier": "
|
74
|
+
"eslint-config-prettier": "10.1.5",
|
75
75
|
"eslint-plugin-ecmascript-compat": "^3.2.1",
|
76
76
|
"eslint-plugin-import": "2.31.0",
|
77
77
|
"gh-pages": "6.3.0",
|
78
78
|
"happy-dom": "^17.2.0",
|
79
79
|
"jsdom": "^26.1.0",
|
80
80
|
"prettier": "^3.4.2",
|
81
|
-
"rollup": "4.
|
81
|
+
"rollup": "4.43.0",
|
82
82
|
"rollup-plugin-delete": "^2.1.0",
|
83
83
|
"rollup-plugin-typescript2": "0.36.0",
|
84
84
|
"size-limit": "^11.2.0",
|
85
|
-
"typedoc": "0.28.
|
85
|
+
"typedoc": "0.28.5",
|
86
86
|
"typedoc-plugin-no-inherit": "1.6.1",
|
87
87
|
"typescript": "5.8.3",
|
88
88
|
"vite": "5.4.19",
|
package/src/api/SignalClient.ts
CHANGED
@@ -110,9 +110,9 @@ export class SignalClient {
|
|
110
110
|
|
111
111
|
onClose?: (reason: string) => void;
|
112
112
|
|
113
|
-
onAnswer?: (sd: RTCSessionDescriptionInit) => void;
|
113
|
+
onAnswer?: (sd: RTCSessionDescriptionInit, offerId: number) => void;
|
114
114
|
|
115
|
-
onOffer?: (sd: RTCSessionDescriptionInit) => void;
|
115
|
+
onOffer?: (sd: RTCSessionDescriptionInit, offerId: number) => void;
|
116
116
|
|
117
117
|
// when a new ICE candidate is made available
|
118
118
|
onTrickle?: (sd: RTCIceCandidateInit, target: SignalTarget) => void;
|
@@ -246,16 +246,13 @@ export class SignalClient {
|
|
246
246
|
// clear ping interval and restart it once reconnected
|
247
247
|
this.clearPingInterval();
|
248
248
|
|
249
|
-
const res = await this.connect(url, token, {
|
249
|
+
const res = (await this.connect(url, token, {
|
250
250
|
...this.options,
|
251
251
|
reconnect: true,
|
252
252
|
sid,
|
253
253
|
reconnectReason: reason,
|
254
|
-
});
|
255
|
-
|
256
|
-
return res;
|
257
|
-
}
|
258
|
-
return;
|
254
|
+
})) as ReconnectResponse;
|
255
|
+
return res;
|
259
256
|
}
|
260
257
|
|
261
258
|
private connect(
|
@@ -509,20 +506,20 @@ export class SignalClient {
|
|
509
506
|
}
|
510
507
|
|
511
508
|
// initial offer after joining
|
512
|
-
sendOffer(offer: RTCSessionDescriptionInit) {
|
509
|
+
sendOffer(offer: RTCSessionDescriptionInit, offerId: number) {
|
513
510
|
this.log.debug('sending offer', { ...this.logContext, offerSdp: offer.sdp });
|
514
511
|
this.sendRequest({
|
515
512
|
case: 'offer',
|
516
|
-
value: toProtoSessionDescription(offer),
|
513
|
+
value: toProtoSessionDescription(offer, offerId),
|
517
514
|
});
|
518
515
|
}
|
519
516
|
|
520
517
|
// answer a server-initiated offer
|
521
|
-
sendAnswer(answer: RTCSessionDescriptionInit) {
|
518
|
+
sendAnswer(answer: RTCSessionDescriptionInit, offerId: number) {
|
522
519
|
this.log.debug('sending answer', { ...this.logContext, answerSdp: answer.sdp });
|
523
520
|
return this.sendRequest({
|
524
521
|
case: 'answer',
|
525
|
-
value: toProtoSessionDescription(answer),
|
522
|
+
value: toProtoSessionDescription(answer, offerId),
|
526
523
|
});
|
527
524
|
}
|
528
525
|
|
@@ -703,12 +700,12 @@ export class SignalClient {
|
|
703
700
|
if (msg.case === 'answer') {
|
704
701
|
const sd = fromProtoSessionDescription(msg.value);
|
705
702
|
if (this.onAnswer) {
|
706
|
-
this.onAnswer(sd);
|
703
|
+
this.onAnswer(sd, msg.value.id);
|
707
704
|
}
|
708
705
|
} else if (msg.case === 'offer') {
|
709
706
|
const sd = fromProtoSessionDescription(msg.value);
|
710
707
|
if (this.onOffer) {
|
711
|
-
this.onOffer(sd);
|
708
|
+
this.onOffer(sd, msg.value.id);
|
712
709
|
}
|
713
710
|
} else if (msg.case === 'trickle') {
|
714
711
|
const candidate: RTCIceCandidateInit = JSON.parse(msg.value.candidateInit!);
|
@@ -891,10 +888,12 @@ function fromProtoSessionDescription(sd: SessionDescription): RTCSessionDescript
|
|
891
888
|
|
892
889
|
export function toProtoSessionDescription(
|
893
890
|
rsd: RTCSessionDescription | RTCSessionDescriptionInit,
|
891
|
+
id?: number,
|
894
892
|
): SessionDescription {
|
895
893
|
const sd = new SessionDescription({
|
896
894
|
sdp: rsd.sdp!,
|
897
895
|
type: rsd.type!,
|
896
|
+
id,
|
898
897
|
});
|
899
898
|
return sd;
|
900
899
|
}
|
package/src/e2ee/E2eeManager.ts
CHANGED
@@ -371,6 +371,7 @@ export class E2EEManager
|
|
371
371
|
let writable: WritableStream = receiver.writableStream;
|
372
372
|
// @ts-ignore
|
373
373
|
let readable: ReadableStream = receiver.readableStream;
|
374
|
+
|
374
375
|
if (!writable || !readable) {
|
375
376
|
// @ts-ignore
|
376
377
|
const receiverStreams = receiver.createEncodedStreams();
|
@@ -390,6 +391,7 @@ export class E2EEManager
|
|
390
391
|
trackId: trackId,
|
391
392
|
codec,
|
392
393
|
participantIdentity: participantIdentity,
|
394
|
+
isReuse: E2EE_FLAG in receiver,
|
393
395
|
},
|
394
396
|
};
|
395
397
|
this.worker.postMessage(msg, [readable, writable]);
|
@@ -435,6 +437,7 @@ export class E2EEManager
|
|
435
437
|
codec,
|
436
438
|
trackId,
|
437
439
|
participantIdentity: this.room.localParticipant.identity,
|
440
|
+
isReuse: false,
|
438
441
|
},
|
439
442
|
};
|
440
443
|
this.worker.postMessage(msg, [senderStreams.readable, senderStreams.writable]);
|
package/src/e2ee/types.ts
CHANGED
@@ -69,6 +69,8 @@ export class FrameCryptor extends BaseFrameCryptor {
|
|
69
69
|
|
70
70
|
private detectedCodec?: VideoCodec;
|
71
71
|
|
72
|
+
private isTransformActive: boolean = false;
|
73
|
+
|
72
74
|
constructor(opts: {
|
73
75
|
keys: ParticipantKeyHandler;
|
74
76
|
participantIdentity: string;
|
@@ -159,6 +161,7 @@ export class FrameCryptor extends BaseFrameCryptor {
|
|
159
161
|
readable: ReadableStream<RTCEncodedVideoFrame | RTCEncodedAudioFrame>,
|
160
162
|
writable: WritableStream<RTCEncodedVideoFrame | RTCEncodedAudioFrame>,
|
161
163
|
trackId: string,
|
164
|
+
isReuse: boolean,
|
162
165
|
codec?: VideoCodec,
|
163
166
|
) {
|
164
167
|
if (codec) {
|
@@ -173,11 +176,20 @@ export class FrameCryptor extends BaseFrameCryptor {
|
|
173
176
|
...this.logContext,
|
174
177
|
});
|
175
178
|
|
179
|
+
if (isReuse && this.isTransformActive) {
|
180
|
+
workerLogger.debug('reuse transform', {
|
181
|
+
...this.logContext,
|
182
|
+
});
|
183
|
+
return;
|
184
|
+
}
|
185
|
+
|
176
186
|
const transformFn = operation === 'encode' ? this.encodeFunction : this.decodeFunction;
|
177
187
|
const transformStream = new TransformStream({
|
178
188
|
transform: transformFn.bind(this),
|
179
189
|
});
|
180
190
|
|
191
|
+
this.isTransformActive = true;
|
192
|
+
|
181
193
|
readable
|
182
194
|
.pipeThrough(transformStream)
|
183
195
|
.pipeTo(writable)
|
@@ -189,6 +201,9 @@ export class FrameCryptor extends BaseFrameCryptor {
|
|
189
201
|
? e
|
190
202
|
: new CryptorError(e.message, undefined, this.participantIdentity),
|
191
203
|
);
|
204
|
+
})
|
205
|
+
.finally(() => {
|
206
|
+
this.isTransformActive = false;
|
192
207
|
});
|
193
208
|
this.trackId = trackId;
|
194
209
|
}
|