livekit-client 2.5.1 → 2.5.2
Sign up to get free protection for your applications and to get access to all the features.
- 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 +4 -2
- package/dist/livekit-client.e2ee.worker.mjs.map +1 -1
- package/dist/livekit-client.esm.mjs +250 -199
- 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/worker/FrameCryptor.d.ts.map +1 -1
- package/dist/src/room/PCTransportManager.d.ts +1 -0
- package/dist/src/room/PCTransportManager.d.ts.map +1 -1
- package/dist/src/room/Room.d.ts +3 -3
- package/dist/src/room/Room.d.ts.map +1 -1
- package/dist/src/room/participant/LocalParticipant.d.ts.map +1 -1
- package/dist/src/room/track/LocalTrack.d.ts +1 -1
- package/dist/src/room/track/LocalTrack.d.ts.map +1 -1
- package/dist/src/room/track/create.d.ts +7 -0
- package/dist/src/room/track/create.d.ts.map +1 -1
- package/dist/ts4.2/src/room/PCTransportManager.d.ts +1 -0
- package/dist/ts4.2/src/room/Room.d.ts +3 -3
- package/dist/ts4.2/src/room/track/LocalTrack.d.ts +1 -1
- package/dist/ts4.2/src/room/track/create.d.ts +7 -0
- package/package.json +8 -8
- package/src/connectionHelper/checks/Checker.ts +1 -1
- package/src/e2ee/worker/FrameCryptor.ts +3 -1
- package/src/room/PCTransportManager.ts +12 -4
- package/src/room/Room.ts +41 -6
- package/src/room/participant/LocalParticipant.ts +14 -8
- package/src/room/track/LocalTrack.ts +4 -2
- package/src/room/track/create.ts +27 -8
@@ -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,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;gBAEvB,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,OAAO,KAAK,UAAU,GAMrB;IAED;;;;;OAKG;IACH,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,qBAAqB;IAkBtD,gBAAgB;IAKhB,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;IAkCpB,aAAa,CAAC,OAAO,EAAE,UAAU;IAKjC;;;;;;;;;;;;;;;;;;;;;OAqBG;cACa,cAAc,CAC5B,YAAY,EAAE,oBAAoB,GAAG,oBAAoB,EACzD,UAAU,EAAE,gCAAgC;IAyF9C;;;;;OAKG;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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"}
|
@@ -25,6 +25,7 @@ export declare class PCTransportManager {
|
|
25
25
|
private isSubscriberConnectionRequired;
|
26
26
|
private state;
|
27
27
|
private connectionLock;
|
28
|
+
private remoteOfferLock;
|
28
29
|
private log;
|
29
30
|
private loggerOptions;
|
30
31
|
constructor(rtcConfig: RTCConfiguration, subscriberPrimary: boolean, loggerOptions: LoggerOptions);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"PCTransportManager.d.ts","sourceRoot":"","sources":["../../../src/room/PCTransportManager.ts"],"names":[],"mappings":"AAAA,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;IAErE,OAAO,CAAC,6BAA6B,CAAU;IAE/C,OAAO,CAAC,8BAA8B,CAAU;IAEhD,OAAO,CAAC,KAAK,CAAmB;IAEhC,OAAO,CAAC,cAAc,CAAQ;IAE9B,OAAO,CAAC,GAAG,CAAO;IAElB,OAAO,CAAC,aAAa,CAAgB;gBAGnC,SAAS,EAAE,gBAAgB,EAC3B,iBAAiB,EAAE,OAAO,EAC1B,aAAa,EAAE,aAAa;
|
1
|
+
{"version":3,"file":"PCTransportManager.d.ts","sourceRoot":"","sources":["../../../src/room/PCTransportManager.ts"],"names":[],"mappings":"AAAA,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;IAErE,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;IAIhD,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;IAmBnE,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;CAiDvC"}
|
package/dist/src/room/Room.d.ts
CHANGED
@@ -100,9 +100,8 @@ declare class Room extends Room_base {
|
|
100
100
|
private maybeCreateEngine;
|
101
101
|
/**
|
102
102
|
* getLocalDevices abstracts navigator.mediaDevices.enumerateDevices.
|
103
|
-
* In particular, it
|
104
|
-
*
|
105
|
-
* The actual default device will be placed at top.
|
103
|
+
* In particular, it requests device permissions by default if needed
|
104
|
+
* and makes sure the returned device does not consist of dummy devices
|
106
105
|
* @param kind
|
107
106
|
* @returns a list of available local devices
|
108
107
|
*/
|
@@ -214,6 +213,7 @@ declare class Room extends Room_base {
|
|
214
213
|
private onTrackProcessorUpdate;
|
215
214
|
private onLocalTrackPublished;
|
216
215
|
private onLocalTrackUnpublished;
|
216
|
+
private onLocalTrackRestarted;
|
217
217
|
private onLocalConnectionQualityChanged;
|
218
218
|
private onMediaDevicesError;
|
219
219
|
private onLocalParticipantPermissionsChanged;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Room.d.ts","sourceRoot":"","sources":["../../../src/room/Room.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,eAAe,EACf,gBAAgB,EAMhB,qBAAqB,EAIrB,OAAO,EAGP,iBAAiB,EAOjB,oBAAoB,IAAI,yBAAyB,EAGlD,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,YAAY,MAAM,eAAe,CAAC;AAC9C,OAAO,gBAAgB,CAAC;AAIxB,OAAO,KAAK,EAEV,mBAAmB,EACnB,kBAAkB,EAClB,WAAW,EACZ,MAAM,YAAY,CAAC;AAGpB,OAAO,SAAS,MAAM,aAAa,CAAC;AAWpC,OAAO,gBAAgB,MAAM,gCAAgC,CAAC;AAC9D,OAAO,KAAK,WAAW,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,iBAAiB,MAAM,iCAAiC,CAAC;
|
1
|
+
{"version":3,"file":"Room.d.ts","sourceRoot":"","sources":["../../../src/room/Room.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,eAAe,EACf,gBAAgB,EAMhB,qBAAqB,EAIrB,OAAO,EAGP,iBAAiB,EAOjB,oBAAoB,IAAI,yBAAyB,EAGlD,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,YAAY,MAAM,eAAe,CAAC;AAC9C,OAAO,gBAAgB,CAAC;AAIxB,OAAO,KAAK,EAEV,mBAAmB,EACnB,kBAAkB,EAClB,WAAW,EACZ,MAAM,YAAY,CAAC;AAGpB,OAAO,SAAS,MAAM,aAAa,CAAC;AAWpC,OAAO,gBAAgB,MAAM,gCAAgC,CAAC;AAC9D,OAAO,KAAK,WAAW,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,iBAAiB,MAAM,iCAAiC,CAAC;AAIhE,OAAO,qBAAqB,MAAM,+BAA+B,CAAC;AAElE,OAAO,KAAK,WAAW,MAAM,qBAAqB,CAAC;AACnD,OAAO,sBAAsB,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAIjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAiB3F,oBAAY,eAAe;IACzB,YAAY,iBAAiB;IAC7B,UAAU,eAAe;IACzB,SAAS,cAAc;IACvB,YAAY,iBAAiB;IAC7B,kBAAkB,uBAAuB;CAC1C;mCAY6C,YAAY,CAAC,kBAAkB,CAAC;AAR9E;;;;;;;GAOG;AACH,cAAM,IAAK,SAAQ,SAA4D;IAC7E,KAAK,EAAE,eAAe,CAAgC;IAEtD;;OAEG;IACH,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAEnD;;;OAGG;IACH,cAAc,EAAE,WAAW,EAAE,CAAM;IAEnC,gBAAgB;IAChB,MAAM,EAAG,SAAS,CAAC;IAEnB,8BAA8B;IAC9B,gBAAgB,EAAE,gBAAgB,CAAC;IAEnC,sBAAsB;IACtB,OAAO,EAAE,mBAAmB,CAAC;IAE7B,qEAAqE;IACrE,aAAa,EAAE,OAAO,CAAS;IAE/B,OAAO,CAAC,QAAQ,CAAC,CAAY;IAE7B,OAAO,CAAC,aAAa,CAAsB;IAE3C,8BAA8B;IAC9B,OAAO,CAAC,WAAW,CAAC,CAA6B;IAEjD,OAAO,CAAC,YAAY,CAAQ;IAE5B,OAAO,CAAC,YAAY,CAAC,CAAe;IAEpC,gEAAgE;IAChE,OAAO,CAAC,eAAe,CAAC,CAAkB;IAE1C,yDAAyD;IACzD,OAAO,CAAC,aAAa,CAAC,CAAe;IAErC,OAAO,CAAC,cAAc,CAAQ;IAE9B,OAAO,CAAC,WAAW,CAA0B;IAE7C,OAAO,CAAC,2BAA2B,CAAC,CAAiC;IAErE,OAAO,CAAC,iBAAiB,CAAC,CAAoB;IAE9C,OAAO,CAAC,SAAS,CAAC,CAAS;IAE3B,OAAO,CAAC,sBAAsB,CAAkB;IAEhD,OAAO,CAAC,GAAG,CAAO;IAElB,OAAO,CAAC,cAAc,CAAkB;IAExC,OAAO,CAAC,UAAU,CAAkB;IAEpC;;OAEG;IACH,OAAO,CAAC,0BAA0B,CAAsB;IAExD;;;OAGG;gBACS,OAAO,CAAC,EAAE,WAAW;IAqDjC;;OAEG;IACG,cAAc,CAAC,OAAO,EAAE,OAAO;IAWrC,OAAO,CAAC,SAAS;IAmBjB,OAAO,KAAK,UAAU,GAOrB;IAED;;QAEI;IACJ,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED;;;OAGG;IACG,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;IAsB/B,iDAAiD;IACjD,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,oBAAoB;IACpB,IAAI,QAAQ,IAAI,MAAM,GAAG,SAAS,CAEjC;IAED,IAAI,eAAe,IAAI,MAAM,CAE5B;IAED,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED,OAAO,CAAC,iBAAiB;IAuFzB;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CACpB,IAAI,CAAC,EAAE,eAAe,EACtB,kBAAkB,GAAE,OAAc,GACjC,OAAO,CAAC,eAAe,EAAE,CAAC;IAI7B;;;;;;;;OAQG;IACG,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM;IAwBnD,OAAO,QAAe,MAAM,SAAS,MAAM,SAAS,kBAAkB,KAAG,OAAO,CAAC,IAAI,CAAC,CA0HpF;IAEF,OAAO,CAAC,aAAa,CAiDnB;IAEF,OAAO,CAAC,iBAAiB,CAwBvB;IAEF,OAAO,CAAC,iBAAiB,CA+FvB;IAEF;;OAEG;IACH,UAAU,0CAoCR;IAEF;;;;OAIG;IACH,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAOnE,OAAO,CAAC,sBAAsB;IAI9B;;OAEG;IACG,gBAAgB,CAAC,QAAQ,EAAE,kBAAkB,EAAE,GAAG,CAAC,EAAE,GAAG;IAwH9D,OAAO,CAAC,WAAW,CAGjB;IAEF;;;;;;OAMG;IACH,UAAU,sBAqER;IAEF,UAAU,sBAyBR;IAEF;;OAEG;IACH,IAAI,gBAAgB,IAAI,OAAO,CAE9B;IAED;;OAEG;IACH,IAAI,gBAAgB,IAAI,OAAO,CAE9B;IAED,eAAe,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS;IAI1D;;;;;;;;;OASG;IACG,kBAAkB,CAAC,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,GAAE,OAAe;IA4ExF,OAAO,CAAC,2BAA2B;IAkBnC,OAAO,CAAC,cAAc;IActB,OAAO,CAAC,YAAY;IAuEpB,OAAO,CAAC,gBAAgB,CAatB;IAEF,OAAO,CAAC,qBAAqB,CAiC3B;IAEF,OAAO,CAAC,gBAAgB;IAmExB,OAAO,CAAC,wBAAwB,CAwB9B;IAEF,OAAO,CAAC,6BAA6B;IAcrC,OAAO,CAAC,0BAA0B,CAgChC;IAGF,OAAO,CAAC,qBAAqB,CA8B3B;IAEF,OAAO,CAAC,uBAAuB,CAmB7B;IAEF,OAAO,CAAC,kCAAkC,CAWxC;IAEF,OAAO,CAAC,uBAAuB,CAa7B;IAEF,OAAO,CAAC,gBAAgB,CAUtB;IAEF,OAAO,CAAC,gBAAgB,CAStB;IAEF,OAAO,CAAC,aAAa,CAKnB;IAEF,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAa;IAErE,OAAO,CAAC,mBAAmB,CAgBzB;IAEF,OAAO,CAAC,0BAA0B,CAMhC;IAEF,OAAO,CAAC,yBAAyB,CAO/B;IAEF,OAAO,CAAC,0BAA0B,CAKhC;IAEF,OAAO,CAAC,yBAAyB,CAK/B;IAEF,OAAO,CAAC,kBAAkB,CAgBxB;IAEF,OAAO,CAAC,gBAAgB,CAStB;IAEF,OAAO,CAAC,6BAA6B,CAWnC;YAEY,mBAAmB;IAmCjC,OAAO,CAAC,iBAAiB;IAwBzB,OAAO,CAAC,sBAAsB;IA0G9B,OAAO,CAAC,aAAa;IASrB;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAU3B,OAAO,CAAC,yBAAyB;IAOjC,OAAO,CAAC,2BAA2B;IAkCnC,OAAO,CAAC,wBAAwB;IAMhC,OAAO,CAAC,yBAAyB;IAUjC,OAAO,CAAC,kBAAkB;IAO1B,OAAO,CAAC,iBAAiB;IAkBzB,OAAO,CAAC,iCAAiC,CAEvC;IAEF,OAAO,CAAC,6BAA6B,CAEnC;IAEF,OAAO,CAAC,wBAAwB,CAE9B;IAEF,OAAO,CAAC,iBAAiB,CAEvB;IAEF,OAAO,CAAC,mBAAmB,CAEzB;IAEF,OAAO,CAAC,sBAAsB,CAE5B;IAEF,OAAO,CAAC,qBAAqB,CAuB3B;IAEF,OAAO,CAAC,uBAAuB,CAI7B;IAEF,OAAO,CAAC,qBAAqB,CAe3B;IAEF,OAAO,CAAC,+BAA+B,CAErC;IAEF,OAAO,CAAC,mBAAmB,CAEzB;IAEF,OAAO,CAAC,oCAAoC,CAE1C;IAEF;;;;OAIG;IACG,oBAAoB,CAAC,OAAO,EAAE,iBAAiB;IA+IrD,IAAI,CAAC,CAAC,SAAS,MAAM,kBAAkB,EACrC,KAAK,EAAE,CAAC,EACR,GAAG,IAAI,EAAE,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,GACzC,OAAO;CASX;AAiBD,eAAe,IAAI,CAAC;AAEpB,MAAM,MAAM,kBAAkB,GAAG;IAC/B,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,kBAAkB,EAAE,MAAM,IAAI,CAAC;IAC/B,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,YAAY,EAAE,CAAC,MAAM,CAAC,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAClD,sBAAsB,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;IACzD,mBAAmB,EAAE,MAAM,IAAI,CAAC;IAChC,oBAAoB,EAAE,CAAC,WAAW,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC/D,uBAAuB,EAAE,CAAC,WAAW,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAClE,cAAc,EAAE,CAAC,WAAW,EAAE,sBAAsB,EAAE,WAAW,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC9F,eAAe,EAAE,CACf,KAAK,EAAE,WAAW,EAClB,WAAW,EAAE,sBAAsB,EACnC,WAAW,EAAE,iBAAiB,KAC3B,IAAI,CAAC;IACV,uBAAuB,EAAE,CACvB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,iBAAiB,EAC9B,MAAM,CAAC,EAAE,iBAAiB,KACvB,IAAI,CAAC;IACV,gBAAgB,EAAE,CAAC,WAAW,EAAE,sBAAsB,EAAE,WAAW,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAChG,iBAAiB,EAAE,CACjB,KAAK,EAAE,WAAW,EAClB,WAAW,EAAE,sBAAsB,EACnC,WAAW,EAAE,iBAAiB,KAC3B,IAAI,CAAC;IACV,UAAU,EAAE,CAAC,WAAW,EAAE,gBAAgB,EAAE,WAAW,EAAE,WAAW,KAAK,IAAI,CAAC;IAC9E,YAAY,EAAE,CAAC,WAAW,EAAE,gBAAgB,EAAE,WAAW,EAAE,WAAW,KAAK,IAAI,CAAC;IAChF,mBAAmB,EAAE,CAAC,WAAW,EAAE,qBAAqB,EAAE,WAAW,EAAE,gBAAgB,KAAK,IAAI,CAAC;IACjG,qBAAqB,EAAE,CACrB,WAAW,EAAE,qBAAqB,EAClC,WAAW,EAAE,gBAAgB,KAC1B,IAAI,CAAC;IACV,yBAAyB,EAAE,CAAC,WAAW,EAAE,qBAAqB,KAAK,IAAI,CAAC;IACxE,0BAA0B,EAAE,CAC1B,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,WAAW,EAAE,iBAAiB,GAAG,gBAAgB,KAC9C,IAAI,CAAC;IACV,sBAAsB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,iBAAiB,GAAG,gBAAgB,KAAK,IAAI,CAAC;IAClG,6BAA6B,EAAE,CAC7B,eAAe,EAAE,qBAAqB,GAAG,SAAS,EAClD,WAAW,EAAE,iBAAiB,GAAG,gBAAgB,KAC9C,IAAI,CAAC;IACV,4BAA4B,EAAE,CAC5B,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACzC,WAAW,EAAE,iBAAiB,GAAG,gBAAgB,KAC9C,IAAI,CAAC;IACV,qBAAqB,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAC9D,mBAAmB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAChD,YAAY,EAAE,CACZ,OAAO,EAAE,UAAU,EACnB,WAAW,CAAC,EAAE,iBAAiB,EAC/B,IAAI,CAAC,EAAE,eAAe,EACtB,KAAK,CAAC,EAAE,MAAM,KACX,IAAI,CAAC;IACV,eAAe,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC1E,qBAAqB,EAAE,CACrB,aAAa,EAAE,oBAAoB,EAAE,EACrC,WAAW,CAAC,EAAE,WAAW,EACzB,WAAW,CAAC,EAAE,gBAAgB,KAC3B,IAAI,CAAC;IACV,wBAAwB,EAAE,CAAC,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,WAAW,KAAK,IAAI,CAAC;IACzF,iBAAiB,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAC1C,uBAAuB,EAAE,CACvB,WAAW,EAAE,sBAAsB,EACnC,WAAW,EAAE,KAAK,CAAC,WAAW,EAC9B,WAAW,EAAE,iBAAiB,KAC3B,IAAI,CAAC;IACV,kCAAkC,EAAE,CAClC,WAAW,EAAE,sBAAsB,EACnC,MAAM,EAAE,gBAAgB,CAAC,gBAAgB,EACzC,WAAW,EAAE,iBAAiB,KAC3B,IAAI,CAAC;IACV,8BAA8B,EAAE,CAC9B,WAAW,EAAE,sBAAsB,EACnC,MAAM,EAAE,gBAAgB,CAAC,kBAAkB,EAC3C,WAAW,EAAE,iBAAiB,KAC3B,IAAI,CAAC;IACV,oBAAoB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACjD,oBAAoB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACjD,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,sBAAsB,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IACrD,kCAAkC,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,WAAW,KAAK,IAAI,CAAC;IAC5F,eAAe,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACxC,qBAAqB,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC;IACvE,mBAAmB,EAAE,CAAC,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACvE,oBAAoB,EAAE,CAAC,WAAW,EAAE,qBAAqB,EAAE,WAAW,EAAE,gBAAgB,KAAK,IAAI,CAAC;CACnG,CAAC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"LocalParticipant.d.ts","sourceRoot":"","sources":["../../../../src/room/participant/LocalParticipant.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,EAIL,eAAe,EACf,qBAAqB,EAQtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEzD,OAAO,KAAK,SAAS,MAAM,cAAc,CAAC;AAW1C,OAAO,UAAU,MAAM,qBAAqB,CAAC;AAC7C,OAAO,qBAAqB,MAAM,gCAAgC,CAAC;AAEnE,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;
|
1
|
+
{"version":3,"file":"LocalParticipant.d.ts","sourceRoot":"","sources":["../../../../src/room/participant/LocalParticipant.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,EAIL,eAAe,EACf,qBAAqB,EAQtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEzD,OAAO,KAAK,SAAS,MAAM,cAAc,CAAC;AAW1C,OAAO,UAAU,MAAM,qBAAqB,CAAC;AAC7C,OAAO,qBAAqB,MAAM,gCAAgC,CAAC;AAEnE,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,OAAO,KAAK,EACV,mBAAmB,EACnB,gBAAgB,EAChB,wBAAwB,EACxB,yBAAyB,EACzB,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,kBAAkB,CAAC;AAS1B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAYnD,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAS/E,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,WAAW;IACvD,sBAAsB,EAAE,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAE3D,sBAAsB,EAAE,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAE3D,+CAA+C;IAC/C,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAEtD,gBAAgB;IAChB,MAAM,EAAE,SAAS,CAAC;IAElB,gBAAgB;IAChB,eAAe,EAAE,GAAG,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;IAE9C,OAAO,CAAC,iBAAiB,CAA2B;IAEpD,OAAO,CAAC,sBAAsB,CAAyD;IAEvF,OAAO,CAAC,WAAW,CAAoB;IAEvC,OAAO,CAAC,eAAe,CAAoB;IAE3C,OAAO,CAAC,2BAA2B,CAAyC;IAE5E,OAAO,CAAC,iCAAiC,CAAiB;IAG1D,OAAO,CAAC,WAAW,CAAsB;IAEzC,OAAO,CAAC,cAAc,CAAyC;IAE/D,OAAO,CAAC,eAAe,CAAC,CAAe;IAEvC,OAAO,CAAC,qBAAqB,CAO3B;IAEF,OAAO,CAAC,yBAAyB,CAAe;IAEhD,gBAAgB;gBACJ,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,mBAAmB;IAe1F,IAAI,eAAe,IAAI,KAAK,GAAG,SAAS,CAEvC;IAED,IAAI,mBAAmB,IAAI,KAAK,GAAG,SAAS,CAE3C;IAED,IAAI,aAAa,IAAI,OAAO,CAE3B;IAED,mBAAmB,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,qBAAqB,GAAG,SAAS;IAO5E,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,qBAAqB,GAAG,SAAS;IAO1E;;OAEG;IACH,WAAW,CAAC,MAAM,EAAE,SAAS;IA0B7B,OAAO,CAAC,kBAAkB,CAIxB;IAEF,OAAO,CAAC,iBAAiB,CAIvB;IAEF,OAAO,CAAC,kBAAkB,CAMxB;IAEF,OAAO,CAAC,2BAA2B,CASjC;IAEF;;;;;OAKG;IACG,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlD;;;;;OAKG;IACG,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1C;;;;;OAKG;IACG,aAAa,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;YAIxC,qBAAqB;IAgDnC;;;;;OAKG;IACH,gBAAgB,CACd,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,mBAAmB,EAC7B,cAAc,CAAC,EAAE,mBAAmB,GACnC,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC;IAI7C;;;;;OAKG;IACH,oBAAoB,CAClB,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,mBAAmB,EAC7B,cAAc,CAAC,EAAE,mBAAmB,GACnC,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC;IAI7C;;;OAGG;IACH,qBAAqB,CACnB,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,yBAAyB,EACnC,cAAc,CAAC,EAAE,mBAAmB,GACnC,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC;IAI7C,gBAAgB;IAChB,cAAc,CAAC,WAAW,EAAE,qBAAqB,GAAG,OAAO;IAS3D,gBAAgB;IACV,cAAc,CAAC,OAAO,EAAE,OAAO;IAKrC;;;;OAIG;YACW,eAAe;IAiG7B;;;OAGG;IACG,yBAAyB;IAwB/B;;;;OAIG;IACG,YAAY,CAAC,OAAO,CAAC,EAAE,wBAAwB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAoE7E;;;;OAIG;IACG,kBAAkB,CAAC,OAAO,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAgDzF;;;;OAIG;IACG,YAAY,CAChB,KAAK,EAAE,UAAU,GAAG,gBAAgB,EACpC,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,qBAAqB,CAAC;YAwInB,OAAO;IA2RrB,IAAa,OAAO,IAAI,OAAO,CAE9B;IAED;;OAEG;IACG,8BAA8B,CAClC,KAAK,EAAE,UAAU,GAAG,gBAAgB,EACpC,UAAU,EAAE,gBAAgB,EAC5B,OAAO,CAAC,EAAE,mBAAmB;IAoFzB,cAAc,CAClB,KAAK,EAAE,UAAU,GAAG,gBAAgB,EACpC,eAAe,CAAC,EAAE,OAAO,GACxB,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC;IA4GvC,eAAe,CACnB,MAAM,EAAE,UAAU,EAAE,GAAG,gBAAgB,EAAE,GACxC,OAAO,CAAC,qBAAqB,EAAE,CAAC;IAO7B,kBAAkB,CAAC,OAAO,CAAC,EAAE,mBAAmB,EAAE,aAAa,GAAE,OAAc;IAoCrF;;;;;;OAMG;IACG,WAAW,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBpF;;;;;;;;;;;;;;;;OAgBG;IACH,+BAA+B,CAC7B,sBAAsB,EAAE,OAAO,EAC/B,2BAA2B,GAAE,0BAA0B,EAAO;IAShE,gBAAgB;IAChB,uBAAuB,CAAC,MAAM,EAAE,KAAK,EAAE;IAMvC,gBAAgB;IAChB,UAAU,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO;IA+B1C,OAAO,CAAC,kCAAkC,CAUxC;IAEF,gBAAgB;IAChB,OAAO,CAAC,cAAc,CAEpB;IAGF,gBAAgB;IAChB,OAAO,CAAC,YAAY,CAclB;IAEF,OAAO,CAAC,qBAAqB,CAM3B;IAEF,OAAO,CAAC,sBAAsB,CAM5B;IAEF,OAAO,CAAC,oBAAoB,CAU1B;IAEF,OAAO,CAAC,6BAA6B,CA6BnC;IAEF,OAAO,CAAC,2BAA2B,CAUjC;IAEF,OAAO,CAAC,gBAAgB,CA8DtB;IAEF,OAAO,CAAC,sBAAsB;CAuB/B"}
|
@@ -43,7 +43,7 @@ export default abstract class LocalTrack<TrackKind extends Track.Kind = Track.Ki
|
|
43
43
|
/**
|
44
44
|
* @returns DeviceID of the device that is currently being used for this track
|
45
45
|
*/
|
46
|
-
getDeviceId(): Promise<string | undefined>;
|
46
|
+
getDeviceId(normalize?: boolean): Promise<string | undefined>;
|
47
47
|
mute(): Promise<this>;
|
48
48
|
unmute(): Promise<this>;
|
49
49
|
replaceTrack(track: MediaStreamTrack, options?: ReplaceTrackOptions): Promise<typeof this>;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"LocalTrack.d.ts","sourceRoot":"","sources":["../../../../src/room/track/LocalTrack.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9C,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;AACxD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAInD,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,UAAU,CACtC,SAAS,SAAS,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CACzC,SAAQ,KAAK,CAAC,SAAS,CAAC;IACxB,SAAS,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC;IAEjC,gBAAgB;IAChB,IAAI,MAAM,IAAI,YAAY,GAAG,SAAS,CAErC;IAED,gBAAgB;IAChB,IAAI,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,SAAS,EAE1C;IAED,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,SAAS,EAAE,GAAG,CAAC,CAAC;IAErD,SAAS,CAAC,aAAa,EAAE,KAAK,CAAC;IAE/B,SAAS,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;IAEtC,SAAS,CAAC,eAAe,EAAE,OAAO,CAAS;IAE3C,OAAO,CAAC,WAAW,CAAQ;IAE3B;;;;;;OAMG;IACH,SAAS,aACP,UAAU,EAAE,gBAAgB,EAC5B,IAAI,EAAE,SAAS,EACf,WAAW,CAAC,EAAE,qBAAqB,EACnC,iBAAiB,UAAQ,EACzB,aAAa,CAAC,EAAE,aAAa;IAkB/B,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;IAuE3B,iBAAiB,CAAC,OAAO,SAA2B,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC;IAsBtF;;OAEG;IACG,WAAW,
|
1
|
+
{"version":3,"file":"LocalTrack.d.ts","sourceRoot":"","sources":["../../../../src/room/track/LocalTrack.ts"],"names":[],"mappings":"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"}
|
@@ -1,7 +1,14 @@
|
|
1
1
|
import LocalAudioTrack from './LocalAudioTrack';
|
2
2
|
import type LocalTrack from './LocalTrack';
|
3
3
|
import LocalVideoTrack from './LocalVideoTrack';
|
4
|
+
import { Track } from './Track';
|
4
5
|
import type { AudioCaptureOptions, CreateLocalTracksOptions, ScreenShareCaptureOptions, VideoCaptureOptions } from './options';
|
6
|
+
import type { AudioProcessorOptions, TrackProcessor, VideoProcessorOptions } from './processor/types';
|
7
|
+
/** @internal */
|
8
|
+
export declare function extractProcessorsFromOptions(options: CreateLocalTracksOptions): {
|
9
|
+
audioProcessor: TrackProcessor<Track.Kind.Audio, AudioProcessorOptions> | undefined;
|
10
|
+
videoProcessor: TrackProcessor<Track.Kind.Video, VideoProcessorOptions> | undefined;
|
11
|
+
};
|
5
12
|
/**
|
6
13
|
* Creates a local video and audio track at the same time. When acquiring both
|
7
14
|
* audio and video tracks together, it'll display a single permission prompt to
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../../src/room/track/create.ts"],"names":[],"mappings":"AAKA,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,eAAe,MAAM,mBAAmB,CAAC;
|
1
|
+
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../../src/room/track/create.ts"],"names":[],"mappings":"AAKA,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,KAAK,EACV,mBAAmB,EACnB,wBAAwB,EACxB,yBAAyB,EACzB,mBAAmB,EACpB,MAAM,WAAW,CAAC;AAEnB,OAAO,KAAK,EACV,qBAAqB,EACrB,cAAc,EACd,qBAAqB,EACtB,MAAM,mBAAmB,CAAC;AAO3B,gBAAgB;AAChB,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,wBAAwB;;;EAY7E;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CA6D5B;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,eAAe,CAAC,CAM1B;AAED,wBAAsB,qBAAqB,CACzC,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,eAAe,CAAC,CAM1B;AAED;;;;GAIG;AACH,wBAAsB,uBAAuB,CAC3C,OAAO,CAAC,EAAE,yBAAyB,GAClC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CA4B5B"}
|
@@ -25,6 +25,7 @@ export declare class PCTransportManager {
|
|
25
25
|
private isSubscriberConnectionRequired;
|
26
26
|
private state;
|
27
27
|
private connectionLock;
|
28
|
+
private remoteOfferLock;
|
28
29
|
private log;
|
29
30
|
private loggerOptions;
|
30
31
|
constructor(rtcConfig: RTCConfiguration, subscriberPrimary: boolean, loggerOptions: LoggerOptions);
|
@@ -100,9 +100,8 @@ declare class Room extends Room_base {
|
|
100
100
|
private maybeCreateEngine;
|
101
101
|
/**
|
102
102
|
* getLocalDevices abstracts navigator.mediaDevices.enumerateDevices.
|
103
|
-
* In particular, it
|
104
|
-
*
|
105
|
-
* The actual default device will be placed at top.
|
103
|
+
* In particular, it requests device permissions by default if needed
|
104
|
+
* and makes sure the returned device does not consist of dummy devices
|
106
105
|
* @param kind
|
107
106
|
* @returns a list of available local devices
|
108
107
|
*/
|
@@ -214,6 +213,7 @@ declare class Room extends Room_base {
|
|
214
213
|
private onTrackProcessorUpdate;
|
215
214
|
private onLocalTrackPublished;
|
216
215
|
private onLocalTrackUnpublished;
|
216
|
+
private onLocalTrackRestarted;
|
217
217
|
private onLocalConnectionQualityChanged;
|
218
218
|
private onMediaDevicesError;
|
219
219
|
private onLocalParticipantPermissionsChanged;
|
@@ -43,7 +43,7 @@ export default abstract class LocalTrack<TrackKind extends Track.Kind = Track.Ki
|
|
43
43
|
/**
|
44
44
|
* @returns DeviceID of the device that is currently being used for this track
|
45
45
|
*/
|
46
|
-
getDeviceId(): Promise<string | undefined>;
|
46
|
+
getDeviceId(normalize?: boolean): Promise<string | undefined>;
|
47
47
|
mute(): Promise<this>;
|
48
48
|
unmute(): Promise<this>;
|
49
49
|
replaceTrack(track: MediaStreamTrack, options?: ReplaceTrackOptions): Promise<typeof this>;
|
@@ -1,7 +1,14 @@
|
|
1
1
|
import LocalAudioTrack from './LocalAudioTrack';
|
2
2
|
import type LocalTrack from './LocalTrack';
|
3
3
|
import LocalVideoTrack from './LocalVideoTrack';
|
4
|
+
import { Track } from './Track';
|
4
5
|
import type { AudioCaptureOptions, CreateLocalTracksOptions, ScreenShareCaptureOptions, VideoCaptureOptions } from './options';
|
6
|
+
import type { AudioProcessorOptions, TrackProcessor, VideoProcessorOptions } from './processor/types';
|
7
|
+
/** @internal */
|
8
|
+
export declare function extractProcessorsFromOptions(options: CreateLocalTracksOptions): {
|
9
|
+
audioProcessor: TrackProcessor<Track.Kind.Audio, AudioProcessorOptions> | undefined;
|
10
|
+
videoProcessor: TrackProcessor<Track.Kind.Video, VideoProcessorOptions> | undefined;
|
11
|
+
};
|
5
12
|
/**
|
6
13
|
* Creates a local video and audio track at the same time. When acquiring both
|
7
14
|
* audio and video tracks together, it'll display a single permission prompt to
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "livekit-client",
|
3
|
-
"version": "2.5.
|
3
|
+
"version": "2.5.2",
|
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",
|
@@ -41,18 +41,18 @@
|
|
41
41
|
"loglevel": "^1.8.0",
|
42
42
|
"sdp-transform": "^2.14.1",
|
43
43
|
"ts-debounce": "^4.0.0",
|
44
|
-
"tslib": "2.
|
44
|
+
"tslib": "2.7.0",
|
45
45
|
"typed-emitter": "^2.1.0",
|
46
46
|
"webrtc-adapter": "^9.0.0"
|
47
47
|
},
|
48
48
|
"devDependencies": {
|
49
49
|
"@babel/core": "7.25.2",
|
50
|
-
"@babel/preset-env": "7.25.
|
50
|
+
"@babel/preset-env": "7.25.4",
|
51
51
|
"@bufbuild/protoc-gen-es": "^1.3.0",
|
52
52
|
"@changesets/cli": "2.27.7",
|
53
53
|
"@livekit/changesets-changelog-github": "^0.0.4",
|
54
54
|
"@rollup/plugin-babel": "6.0.4",
|
55
|
-
"@rollup/plugin-commonjs": "
|
55
|
+
"@rollup/plugin-commonjs": "26.0.1",
|
56
56
|
"@rollup/plugin-json": "6.1.0",
|
57
57
|
"@rollup/plugin-node-resolve": "15.2.3",
|
58
58
|
"@rollup/plugin-terser": "^0.4.0",
|
@@ -69,19 +69,19 @@
|
|
69
69
|
"eslint-config-airbnb-typescript": "18.0.0",
|
70
70
|
"eslint-config-prettier": "9.1.0",
|
71
71
|
"eslint-plugin-ecmascript-compat": "^3.0.0",
|
72
|
-
"eslint-plugin-import": "2.
|
72
|
+
"eslint-plugin-import": "2.30.0",
|
73
73
|
"gh-pages": "6.1.1",
|
74
74
|
"jsdom": "^24.0.0",
|
75
75
|
"prettier": "^3.0.0",
|
76
|
-
"rollup": "4.
|
76
|
+
"rollup": "4.21.2",
|
77
77
|
"rollup-plugin-delete": "^2.0.0",
|
78
78
|
"rollup-plugin-re": "1.0.7",
|
79
79
|
"rollup-plugin-typescript2": "0.36.0",
|
80
80
|
"size-limit": "^8.2.4",
|
81
|
-
"typedoc": "0.26.
|
81
|
+
"typedoc": "0.26.6",
|
82
82
|
"typedoc-plugin-no-inherit": "1.4.0",
|
83
83
|
"typescript": "5.5.4",
|
84
|
-
"vite": "5.
|
84
|
+
"vite": "5.4.2",
|
85
85
|
"vitest": "^1.0.0"
|
86
86
|
},
|
87
87
|
"scripts": {
|
@@ -105,7 +105,7 @@ export abstract class Checker extends (EventEmitter as new () => TypedEmitter<Ch
|
|
105
105
|
if (this.room.state === ConnectionState.Connected) {
|
106
106
|
return this.room;
|
107
107
|
}
|
108
|
-
await this.room.connect(this.url, this.token);
|
108
|
+
await this.room.connect(this.url, this.token, this.connectOptions);
|
109
109
|
return this.room;
|
110
110
|
}
|
111
111
|
|
@@ -360,6 +360,7 @@ export class FrameCryptor extends BaseFrameCryptor {
|
|
360
360
|
}
|
361
361
|
} catch (error) {
|
362
362
|
if (error instanceof CryptorError && error.reason === CryptorErrorReason.InvalidKey) {
|
363
|
+
// emit an error if the key handler thinks we have a valid key
|
363
364
|
if (this.keys.hasValidKey) {
|
364
365
|
this.emit(CryptorEvent.Error, error);
|
365
366
|
this.keys.decryptionFailure();
|
@@ -369,7 +370,7 @@ export class FrameCryptor extends BaseFrameCryptor {
|
|
369
370
|
}
|
370
371
|
}
|
371
372
|
} else if (!this.keys.getKeySet(keyIndex) && this.keys.hasValidKey) {
|
372
|
-
// emit an error
|
373
|
+
// emit an error if the key index is out of bounds but the key handler thinks we still have a valid key
|
373
374
|
workerLogger.warn(`skipping decryption due to missing key at index ${keyIndex}`);
|
374
375
|
this.emit(
|
375
376
|
CryptorEvent.Error,
|
@@ -379,6 +380,7 @@ export class FrameCryptor extends BaseFrameCryptor {
|
|
379
380
|
this.participantIdentity,
|
380
381
|
),
|
381
382
|
);
|
383
|
+
this.keys.decryptionFailure();
|
382
384
|
}
|
383
385
|
}
|
384
386
|
|
@@ -57,6 +57,8 @@ export class PCTransportManager {
|
|
57
57
|
|
58
58
|
private connectionLock: Mutex;
|
59
59
|
|
60
|
+
private remoteOfferLock: Mutex;
|
61
|
+
|
60
62
|
private log = log;
|
61
63
|
|
62
64
|
private loggerOptions: LoggerOptions;
|
@@ -100,6 +102,7 @@ export class PCTransportManager {
|
|
100
102
|
this.state = PCTransportState.NEW;
|
101
103
|
|
102
104
|
this.connectionLock = new Mutex();
|
105
|
+
this.remoteOfferLock = new Mutex();
|
103
106
|
}
|
104
107
|
|
105
108
|
private get logContext() {
|
@@ -171,11 +174,16 @@ export class PCTransportManager {
|
|
171
174
|
sdp: sd.sdp,
|
172
175
|
signalingState: this.subscriber.getSignallingState().toString(),
|
173
176
|
});
|
174
|
-
await this.
|
177
|
+
const unlock = await this.remoteOfferLock.lock();
|
178
|
+
try {
|
179
|
+
await this.subscriber.setRemoteDescription(sd);
|
175
180
|
|
176
|
-
|
177
|
-
|
178
|
-
|
181
|
+
// answer the offer
|
182
|
+
const answer = await this.subscriber.createAndSetAnswer();
|
183
|
+
return answer;
|
184
|
+
} finally {
|
185
|
+
unlock();
|
186
|
+
}
|
179
187
|
}
|
180
188
|
|
181
189
|
updateConfiguration(config: RTCConfiguration, iceRestart?: boolean) {
|
package/src/room/Room.ts
CHANGED
@@ -57,6 +57,7 @@ import type { ConnectionQuality } from './participant/Participant';
|
|
57
57
|
import RemoteParticipant from './participant/RemoteParticipant';
|
58
58
|
import CriticalTimers from './timers';
|
59
59
|
import LocalAudioTrack from './track/LocalAudioTrack';
|
60
|
+
import type LocalTrack from './track/LocalTrack';
|
60
61
|
import LocalTrackPublication from './track/LocalTrackPublication';
|
61
62
|
import LocalVideoTrack from './track/LocalVideoTrack';
|
62
63
|
import type RemoteTrack from './track/RemoteTrack';
|
@@ -406,9 +407,8 @@ class Room extends (EventEmitter as new () => TypedEmitter<RoomEventCallbacks>)
|
|
406
407
|
|
407
408
|
/**
|
408
409
|
* getLocalDevices abstracts navigator.mediaDevices.enumerateDevices.
|
409
|
-
* In particular, it
|
410
|
-
*
|
411
|
-
* The actual default device will be placed at top.
|
410
|
+
* In particular, it requests device permissions by default if needed
|
411
|
+
* and makes sure the returned device does not consist of dummy devices
|
412
412
|
* @param kind
|
413
413
|
* @returns a list of available local devices
|
414
414
|
*/
|
@@ -1073,7 +1073,8 @@ class Room extends (EventEmitter as new () => TypedEmitter<RoomEventCallbacks>)
|
|
1073
1073
|
let success = true;
|
1074
1074
|
const deviceConstraint = exact ? { exact: deviceId } : deviceId;
|
1075
1075
|
if (kind === 'audioinput') {
|
1076
|
-
const prevDeviceId =
|
1076
|
+
const prevDeviceId =
|
1077
|
+
this.getActiveDevice(kind) ?? this.options.audioCaptureDefaults!.deviceId;
|
1077
1078
|
this.options.audioCaptureDefaults!.deviceId = deviceConstraint;
|
1078
1079
|
deviceHasChanged = prevDeviceId !== deviceConstraint;
|
1079
1080
|
const tracks = Array.from(this.localParticipant.audioTrackPublications.values()).filter(
|
@@ -1088,7 +1089,8 @@ class Room extends (EventEmitter as new () => TypedEmitter<RoomEventCallbacks>)
|
|
1088
1089
|
throw e;
|
1089
1090
|
}
|
1090
1091
|
} else if (kind === 'videoinput') {
|
1091
|
-
const prevDeviceId =
|
1092
|
+
const prevDeviceId =
|
1093
|
+
this.getActiveDevice(kind) ?? this.options.videoCaptureDefaults!.deviceId;
|
1092
1094
|
this.options.videoCaptureDefaults!.deviceId = deviceConstraint;
|
1093
1095
|
deviceHasChanged = prevDeviceId !== deviceConstraint;
|
1094
1096
|
const tracks = Array.from(this.localParticipant.videoTrackPublications.values()).filter(
|
@@ -1115,7 +1117,7 @@ class Room extends (EventEmitter as new () => TypedEmitter<RoomEventCallbacks>)
|
|
1115
1117
|
(await DeviceManager.getInstance().normalizeDeviceId('audiooutput', deviceId)) ?? '';
|
1116
1118
|
}
|
1117
1119
|
this.options.audioOutput ??= {};
|
1118
|
-
const prevDeviceId = this.options.audioOutput.deviceId;
|
1120
|
+
const prevDeviceId = this.getActiveDevice(kind) ?? this.options.audioOutput.deviceId;
|
1119
1121
|
this.options.audioOutput.deviceId = deviceId;
|
1120
1122
|
deviceHasChanged = prevDeviceId !== deviceConstraint;
|
1121
1123
|
|
@@ -1600,6 +1602,20 @@ class Room extends (EventEmitter as new () => TypedEmitter<RoomEventCallbacks>)
|
|
1600
1602
|
};
|
1601
1603
|
|
1602
1604
|
private handleDeviceChange = async () => {
|
1605
|
+
const availableDevices = await DeviceManager.getInstance().getDevices();
|
1606
|
+
// inputs are automatically handled via TrackEvent.Ended causing a TrackEvent.Restarted. Here we only need to worry about audiooutputs changing
|
1607
|
+
const kinds: MediaDeviceKind[] = ['audiooutput'];
|
1608
|
+
for (let kind of kinds) {
|
1609
|
+
// switch to first available device if previously active device is not available any more
|
1610
|
+
const devicesOfKind = availableDevices.filter((d) => d.kind === kind);
|
1611
|
+
if (
|
1612
|
+
devicesOfKind.length > 0 &&
|
1613
|
+
!devicesOfKind.find((deviceInfo) => deviceInfo.deviceId === this.getActiveDevice(kind))
|
1614
|
+
) {
|
1615
|
+
await this.switchActiveDevice(kind, devicesOfKind[0].deviceId);
|
1616
|
+
}
|
1617
|
+
}
|
1618
|
+
|
1603
1619
|
this.emit(RoomEvent.MediaDevicesChanged);
|
1604
1620
|
};
|
1605
1621
|
|
@@ -1923,6 +1939,7 @@ class Room extends (EventEmitter as new () => TypedEmitter<RoomEventCallbacks>)
|
|
1923
1939
|
|
1924
1940
|
private onLocalTrackPublished = async (pub: LocalTrackPublication) => {
|
1925
1941
|
pub.track?.on(TrackEvent.TrackProcessorUpdate, this.onTrackProcessorUpdate);
|
1942
|
+
pub.track?.on(TrackEvent.Restarted, this.onLocalTrackRestarted);
|
1926
1943
|
pub.track?.getProcessor()?.onPublish?.(this);
|
1927
1944
|
|
1928
1945
|
this.emit(RoomEvent.LocalTrackPublished, pub, this.localParticipant);
|
@@ -1947,9 +1964,27 @@ class Room extends (EventEmitter as new () => TypedEmitter<RoomEventCallbacks>)
|
|
1947
1964
|
|
1948
1965
|
private onLocalTrackUnpublished = (pub: LocalTrackPublication) => {
|
1949
1966
|
pub.track?.off(TrackEvent.TrackProcessorUpdate, this.onTrackProcessorUpdate);
|
1967
|
+
pub.track?.off(TrackEvent.Restarted, this.onLocalTrackRestarted);
|
1950
1968
|
this.emit(RoomEvent.LocalTrackUnpublished, pub, this.localParticipant);
|
1951
1969
|
};
|
1952
1970
|
|
1971
|
+
private onLocalTrackRestarted = async (track: LocalTrack) => {
|
1972
|
+
const deviceId = await track.getDeviceId(false);
|
1973
|
+
const deviceKind = sourceToKind(track.source);
|
1974
|
+
if (
|
1975
|
+
deviceKind &&
|
1976
|
+
deviceId &&
|
1977
|
+
deviceId !== this.localParticipant.activeDeviceMap.get(deviceKind)
|
1978
|
+
) {
|
1979
|
+
this.log.debug(
|
1980
|
+
`local track restarted, setting ${deviceKind} ${deviceId} active`,
|
1981
|
+
this.logContext,
|
1982
|
+
);
|
1983
|
+
this.localParticipant.activeDeviceMap.set(deviceKind, deviceId);
|
1984
|
+
this.emit(RoomEvent.ActiveDeviceChanged, deviceKind, deviceId);
|
1985
|
+
}
|
1986
|
+
};
|
1987
|
+
|
1953
1988
|
private onLocalConnectionQualityChanged = (quality: ConnectionQuality) => {
|
1954
1989
|
this.emit(RoomEvent.ConnectionQualityChanged, quality, this.localParticipant);
|
1955
1990
|
};
|
@@ -31,6 +31,7 @@ import LocalTrack from '../track/LocalTrack';
|
|
31
31
|
import LocalTrackPublication from '../track/LocalTrackPublication';
|
32
32
|
import LocalVideoTrack, { videoLayersFromEncodings } from '../track/LocalVideoTrack';
|
33
33
|
import { Track } from '../track/Track';
|
34
|
+
import { extractProcessorsFromOptions } from '../track/create';
|
34
35
|
import type {
|
35
36
|
AudioCaptureOptions,
|
36
37
|
BackupVideoCodec,
|
@@ -40,7 +41,6 @@ import type {
|
|
40
41
|
VideoCaptureOptions,
|
41
42
|
} from '../track/options';
|
42
43
|
import { ScreenSharePresets, VideoPresets, isBackupCodec } from '../track/options';
|
43
|
-
import type { TrackProcessor } from '../track/processor/types';
|
44
44
|
import {
|
45
45
|
constraintsForOptions,
|
46
46
|
getLogContextFromTrack,
|
@@ -486,6 +486,9 @@ export default class LocalParticipant extends Participant {
|
|
486
486
|
* @returns
|
487
487
|
*/
|
488
488
|
async createTracks(options?: CreateLocalTracksOptions): Promise<LocalTrack[]> {
|
489
|
+
options ??= {};
|
490
|
+
const { audioProcessor, videoProcessor } = extractProcessorsFromOptions(options);
|
491
|
+
|
489
492
|
const mergedOptions = mergeDefaultOptions(
|
490
493
|
options,
|
491
494
|
this.roomOptions?.audioCaptureDefaults,
|
@@ -540,12 +543,10 @@ export default class LocalParticipant extends Participant {
|
|
540
543
|
track.setAudioContext(this.audioContext);
|
541
544
|
}
|
542
545
|
track.mediaStream = stream;
|
543
|
-
if (
|
544
|
-
|
545
|
-
|
546
|
-
|
547
|
-
await track.setProcessor(trackOptions.processor as TrackProcessor<Track.Kind.Video>);
|
548
|
-
}
|
546
|
+
if (track instanceof LocalAudioTrack && audioProcessor) {
|
547
|
+
await track.setProcessor(audioProcessor);
|
548
|
+
} else if (track instanceof LocalVideoTrack && videoProcessor) {
|
549
|
+
await track.setProcessor(videoProcessor);
|
549
550
|
}
|
550
551
|
return track;
|
551
552
|
}),
|
@@ -1530,7 +1531,12 @@ export default class LocalParticipant extends Participant {
|
|
1530
1531
|
...this.logContext,
|
1531
1532
|
...getLogContextFromTrack(track),
|
1532
1533
|
});
|
1533
|
-
|
1534
|
+
if (track instanceof LocalAudioTrack) {
|
1535
|
+
// fall back to default device if available
|
1536
|
+
await track.restartTrack({ deviceId: 'default' });
|
1537
|
+
} else {
|
1538
|
+
await track.restartTrack();
|
1539
|
+
}
|
1534
1540
|
}
|
1535
1541
|
} catch (e) {
|
1536
1542
|
this.log.warn(`could not restart track, muting instead`, {
|
@@ -215,7 +215,7 @@ export default abstract class LocalTrack<
|
|
215
215
|
/**
|
216
216
|
* @returns DeviceID of the device that is currently being used for this track
|
217
217
|
*/
|
218
|
-
async getDeviceId(): Promise<string | undefined> {
|
218
|
+
async getDeviceId(normalize = true): Promise<string | undefined> {
|
219
219
|
// screen share doesn't have a usable device id
|
220
220
|
if (this.source === Track.Source.ScreenShare) {
|
221
221
|
return;
|
@@ -223,7 +223,9 @@ export default abstract class LocalTrack<
|
|
223
223
|
const { deviceId, groupId } = this._mediaStreamTrack.getSettings();
|
224
224
|
const kind = this.kind === Track.Kind.Audio ? 'audioinput' : 'videoinput';
|
225
225
|
|
226
|
-
return
|
226
|
+
return normalize
|
227
|
+
? DeviceManager.getInstance().normalizeDeviceId(kind, deviceId, groupId)
|
228
|
+
: deviceId;
|
227
229
|
}
|
228
230
|
|
229
231
|
async mute() {
|
package/src/room/track/create.ts
CHANGED
@@ -14,13 +14,32 @@ import type {
|
|
14
14
|
VideoCaptureOptions,
|
15
15
|
} from './options';
|
16
16
|
import { ScreenSharePresets } from './options';
|
17
|
-
import type {
|
17
|
+
import type {
|
18
|
+
AudioProcessorOptions,
|
19
|
+
TrackProcessor,
|
20
|
+
VideoProcessorOptions,
|
21
|
+
} from './processor/types';
|
18
22
|
import {
|
19
23
|
constraintsForOptions,
|
20
24
|
mergeDefaultOptions,
|
21
25
|
screenCaptureToDisplayMediaStreamOptions,
|
22
26
|
} from './utils';
|
23
27
|
|
28
|
+
/** @internal */
|
29
|
+
export function extractProcessorsFromOptions(options: CreateLocalTracksOptions) {
|
30
|
+
let audioProcessor: TrackProcessor<Track.Kind.Audio, AudioProcessorOptions> | undefined;
|
31
|
+
let videoProcessor: TrackProcessor<Track.Kind.Video, VideoProcessorOptions> | undefined;
|
32
|
+
|
33
|
+
if (typeof options.audio === 'object' && options.audio.processor) {
|
34
|
+
audioProcessor = options.audio.processor;
|
35
|
+
}
|
36
|
+
if (typeof options.video === 'object' && options.video.processor) {
|
37
|
+
videoProcessor = options.video.processor;
|
38
|
+
}
|
39
|
+
|
40
|
+
return { audioProcessor, videoProcessor };
|
41
|
+
}
|
42
|
+
|
24
43
|
/**
|
25
44
|
* Creates a local video and audio track at the same time. When acquiring both
|
26
45
|
* audio and video tracks together, it'll display a single permission prompt to
|
@@ -35,6 +54,7 @@ export async function createLocalTracks(
|
|
35
54
|
options.audio ??= true;
|
36
55
|
options.video ??= true;
|
37
56
|
|
57
|
+
const { audioProcessor, videoProcessor } = extractProcessorsFromOptions(options);
|
38
58
|
const opts = mergeDefaultOptions(options, audioDefaults, videoDefaults);
|
39
59
|
const constraints = constraintsForOptions(opts);
|
40
60
|
|
@@ -55,7 +75,7 @@ export async function createLocalTracks(
|
|
55
75
|
return Promise.all(
|
56
76
|
stream.getTracks().map(async (mediaStreamTrack) => {
|
57
77
|
const isAudio = mediaStreamTrack.kind === 'audio';
|
58
|
-
let trackOptions = isAudio ?
|
78
|
+
let trackOptions = isAudio ? opts!.audio : opts!.video;
|
59
79
|
if (typeof trackOptions === 'boolean' || !trackOptions) {
|
60
80
|
trackOptions = {};
|
61
81
|
}
|
@@ -80,13 +100,12 @@ export async function createLocalTracks(
|
|
80
100
|
track.source = Track.Source.Microphone;
|
81
101
|
}
|
82
102
|
track.mediaStream = stream;
|
83
|
-
if (
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
await track.setProcessor(trackOptions.processor as TrackProcessor<Track.Kind.Video>);
|
88
|
-
}
|
103
|
+
if (track instanceof LocalAudioTrack && audioProcessor) {
|
104
|
+
await track.setProcessor(audioProcessor);
|
105
|
+
} else if (track instanceof LocalVideoTrack && videoProcessor) {
|
106
|
+
await track.setProcessor(videoProcessor);
|
89
107
|
}
|
108
|
+
|
90
109
|
return track;
|
91
110
|
}),
|
92
111
|
);
|