@livekit/rtc-node 0.10.4 → 0.11.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. package/README.md +54 -2
  2. package/build.rs +1 -1
  3. package/dist/audio_frame.d.ts +1 -1
  4. package/dist/audio_frame.d.ts.map +1 -1
  5. package/dist/audio_frame.js +4 -4
  6. package/dist/audio_frame.js.map +1 -1
  7. package/dist/audio_resampler.d.ts.map +1 -1
  8. package/dist/audio_resampler.js +8 -7
  9. package/dist/audio_resampler.js.map +1 -1
  10. package/dist/audio_source.d.ts.map +1 -1
  11. package/dist/audio_source.js +8 -4
  12. package/dist/audio_source.js.map +1 -1
  13. package/dist/audio_stream.d.ts +1 -1
  14. package/dist/audio_stream.d.ts.map +1 -1
  15. package/dist/audio_stream.js +4 -3
  16. package/dist/audio_stream.js.map +1 -1
  17. package/dist/e2ee.d.ts.map +1 -1
  18. package/dist/e2ee.js +25 -25
  19. package/dist/e2ee.js.map +1 -1
  20. package/dist/ffi_client.d.ts +3 -3
  21. package/dist/ffi_client.d.ts.map +1 -1
  22. package/dist/ffi_client.js +9 -7
  23. package/dist/ffi_client.js.map +1 -1
  24. package/dist/index.d.ts +29 -1
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js +34 -4
  27. package/dist/index.js.map +1 -1
  28. package/dist/napi/native.d.ts +1 -0
  29. package/dist/participant.d.ts +48 -2
  30. package/dist/participant.d.ts.map +1 -1
  31. package/dist/participant.js +143 -24
  32. package/dist/participant.js.map +1 -1
  33. package/dist/proto/audio_frame_pb.d.ts +451 -526
  34. package/dist/proto/audio_frame_pb.d.ts.map +1 -1
  35. package/dist/proto/audio_frame_pb.js +200 -1179
  36. package/dist/proto/audio_frame_pb.js.map +1 -1
  37. package/dist/proto/e2ee_pb.d.ts +264 -333
  38. package/dist/proto/e2ee_pb.d.ts.map +1 -1
  39. package/dist/proto/e2ee_pb.js +136 -810
  40. package/dist/proto/e2ee_pb.js.map +1 -1
  41. package/dist/proto/ffi_pb.d.ts +175 -129
  42. package/dist/proto/ffi_pb.d.ts.map +1 -1
  43. package/dist/proto/ffi_pb.js +58 -395
  44. package/dist/proto/ffi_pb.js.map +1 -1
  45. package/dist/proto/handle_pb.d.ts +14 -13
  46. package/dist/proto/handle_pb.d.ts.map +1 -1
  47. package/dist/proto/handle_pb.js +8 -39
  48. package/dist/proto/handle_pb.js.map +1 -1
  49. package/dist/proto/participant_pb.d.ts +54 -52
  50. package/dist/proto/participant_pb.d.ts.map +1 -1
  51. package/dist/proto/participant_pb.js +18 -90
  52. package/dist/proto/participant_pb.js.map +1 -1
  53. package/dist/proto/room_pb.d.ts +1042 -1187
  54. package/dist/proto/room_pb.d.ts.map +1 -1
  55. package/dist/proto/room_pb.js +470 -2938
  56. package/dist/proto/room_pb.js.map +1 -1
  57. package/dist/proto/rpc_pb.d.ts +235 -0
  58. package/dist/proto/rpc_pb.d.ts.map +1 -0
  59. package/dist/proto/rpc_pb.js +74 -0
  60. package/dist/proto/rpc_pb.js.map +1 -0
  61. package/dist/proto/stats_pb.d.ts +738 -800
  62. package/dist/proto/stats_pb.d.ts.map +1 -1
  63. package/dist/proto/stats_pb.js +218 -1960
  64. package/dist/proto/stats_pb.js.map +1 -1
  65. package/dist/proto/track_pb.d.ts +225 -258
  66. package/dist/proto/track_pb.d.ts.map +1 -1
  67. package/dist/proto/track_pb.js +98 -591
  68. package/dist/proto/track_pb.js.map +1 -1
  69. package/dist/proto/video_frame_pb.d.ts +357 -390
  70. package/dist/proto/video_frame_pb.d.ts.map +1 -1
  71. package/dist/proto/video_frame_pb.js +137 -790
  72. package/dist/proto/video_frame_pb.js.map +1 -1
  73. package/dist/room.d.ts +21 -7
  74. package/dist/room.d.ts.map +1 -1
  75. package/dist/room.js +134 -54
  76. package/dist/room.js.map +1 -1
  77. package/dist/rpc.d.ts +78 -0
  78. package/dist/rpc.d.ts.map +1 -0
  79. package/dist/rpc.js +69 -0
  80. package/dist/rpc.js.map +1 -0
  81. package/dist/track.d.ts.map +1 -1
  82. package/dist/track.js +7 -3
  83. package/dist/track.js.map +1 -1
  84. package/dist/track_publication.d.ts.map +1 -1
  85. package/dist/track_publication.js +3 -2
  86. package/dist/track_publication.js.map +1 -1
  87. package/dist/version.d.ts +2 -0
  88. package/dist/version.d.ts.map +1 -0
  89. package/dist/version.js +2 -0
  90. package/dist/version.js.map +1 -0
  91. package/dist/video_frame.d.ts +2 -2
  92. package/dist/video_frame.d.ts.map +1 -1
  93. package/dist/video_frame.js +47 -25
  94. package/dist/video_frame.js.map +1 -1
  95. package/dist/video_source.d.ts.map +1 -1
  96. package/dist/video_source.js +4 -3
  97. package/dist/video_source.js.map +1 -1
  98. package/dist/video_stream.d.ts +1 -1
  99. package/dist/video_stream.d.ts.map +1 -1
  100. package/dist/video_stream.js +7 -3
  101. package/dist/video_stream.js.map +1 -1
  102. package/package.json +13 -10
  103. package/src/audio_frame.ts +6 -6
  104. package/src/audio_resampler.ts +10 -9
  105. package/src/audio_source.ts +9 -8
  106. package/src/audio_stream.ts +7 -6
  107. package/src/e2ee.ts +34 -34
  108. package/src/ffi_client.ts +23 -10
  109. package/src/index.ts +61 -2
  110. package/src/napi/native.d.ts +1 -0
  111. package/src/nodejs.rs +6 -3
  112. package/src/participant.ts +207 -47
  113. package/src/proto/audio_frame_pb.ts +562 -1279
  114. package/src/proto/e2ee_pb.ts +365 -886
  115. package/src/proto/ffi_pb.ts +206 -405
  116. package/src/proto/handle_pb.ts +21 -35
  117. package/src/proto/participant_pb.ts +71 -112
  118. package/src/proto/room_pb.ts +1284 -2995
  119. package/src/proto/rpc_pb.ts +310 -0
  120. package/src/proto/stats_pb.ts +1028 -1947
  121. package/src/proto/track_pb.ts +287 -621
  122. package/src/proto/video_frame_pb.ts +445 -905
  123. package/src/room.ts +181 -75
  124. package/src/rpc.ts +121 -0
  125. package/src/track.ts +8 -7
  126. package/src/track_publication.ts +5 -4
  127. package/src/version.ts +1 -0
  128. package/src/video_frame.ts +54 -27
  129. package/src/video_source.ts +7 -6
  130. package/src/video_stream.ts +7 -6
  131. package/dist/utils.d.ts +0 -7
  132. package/dist/utils.d.ts.map +0 -1
  133. package/dist/utils.js +0 -48
  134. package/dist/utils.js.map +0 -1
  135. package/src/utils.test.ts +0 -47
  136. package/src/utils.ts +0 -44
package/README.md CHANGED
@@ -76,10 +76,62 @@ await room.localParticipant.publishTrack(track, options);
76
76
  await source.captureFrame(new AudioFrame(buffer, 16000, 1, buffer.byteLength / 2));
77
77
  ```
78
78
 
79
+ ### RPC
80
+
81
+ Perform your own predefined method calls from one participant to another.
82
+
83
+ This feature is especially powerful when used with [Agents](https://docs.livekit.io/agents), for instance to forward LLM function calls to your client application.
84
+
85
+ #### Registering an RPC method
86
+
87
+ The participant who implements the method and will receive its calls must first register support:
88
+
89
+ ```typescript
90
+ room.localParticipant?.registerRpcMethod(
91
+ // method name - can be any string that makes sense for your application
92
+ 'greet',
93
+
94
+ // method handler - will be called when the method is invoked by a RemoteParticipant
95
+ async (data: RpcInvocationData) => {
96
+ console.log(`Received greeting from ${data.callerIdentity}: ${data.payload}`);
97
+ return `Hello, ${data.callerIdentity}!`;
98
+ }
99
+ );
100
+ ```
101
+
102
+ In addition to the payload, your handler will also receive `responseTimeout`, which informs you the maximum time available to return a response. If you are unable to respond in time, the call will result in an error on the caller's side.
103
+
104
+ #### Performing an RPC request
105
+
106
+ The caller may then initiate an RPC call like so:
107
+
108
+ ```typescript
109
+ try {
110
+ const response = await room.localParticipant!.performRpc({
111
+ destinationIdentity: 'recipient-identity',
112
+ method: 'greet',
113
+ payload: 'Hello from RPC!',
114
+ });
115
+ console.log('RPC response:', response);
116
+ } catch (error) {
117
+ console.error('RPC call failed:', error);
118
+ }
119
+ ```
120
+
121
+ You may find it useful to adjust the `responseTimeout` parameter, which indicates the amount of time you will wait for a response. We recommend keeping this value as low as possible while still satisfying the constraints of your application.
122
+
123
+ #### Errors
124
+
125
+ LiveKit is a dynamic realtime environment and calls can fail for various reasons.
126
+
127
+ You may throw errors of the type `RpcError` with a string `message` in an RPC method handler and they will be received on the caller's side with the message intact. Other errors will not be transmitted and will instead arrive to the caller as `1500` ("Application Error"). Other built-in errors are detailed in `RpcError`.
128
+
79
129
  ## Examples
80
130
 
81
- - [`publish-wav`](https://github.com/livekit/node-sdks/tree/main/examples/publish-wav): connect to a room and publish a wave file
131
+ - [`publish-wav`](https://github.com/livekit/node-sdks/tree/main/examples/publish-wav): connect to a room and publish a .wave file
132
+ - [`rpc`](https://github.com/livekit/node-sdks/tree/main/examples/rpc): simple back-and-forth RPC interaction
133
+
82
134
 
83
135
  ## Getting help / Contributing
84
136
 
85
- Please join us on [Slack](https://livekit.io/join-slack) to get help from our devs/community. We welcome your contributions and details can be discussed there.
137
+ Please join us on [Slack](https://livekit.io/join-slack) to get help from our devs & community. We welcome your contributions and details can be discussed there.
package/build.rs CHANGED
@@ -5,5 +5,5 @@
5
5
  extern crate napi_build;
6
6
 
7
7
  fn main() {
8
- napi_build::setup();
8
+ napi_build::setup();
9
9
  }
@@ -1,5 +1,5 @@
1
1
  import type { OwnedAudioFrameBuffer } from './proto/audio_frame_pb.js';
2
- import { AudioFrameBufferInfo } from './proto/audio_frame_pb.js';
2
+ import { type AudioFrameBufferInfo } from './proto/audio_frame_pb.js';
3
3
  export declare class AudioFrame {
4
4
  data: Int16Array;
5
5
  sampleRate: number;
@@ -1 +1 @@
1
- {"version":3,"file":"audio_frame.d.ts","sourceRoot":"","sources":["../src/audio_frame.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,qBAAa,UAAU;IACrB,IAAI,EAAE,UAAU,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;gBAOd,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM;IAO7F,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,UAAU;IAK1F,gBAAgB;IAChB,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,qBAAqB,GAAG,UAAU;IAa9D,gBAAgB;IAChB,SAAS,IAAI,oBAAoB;CAQlC;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,kBAAkB,WAAY,UAAU,GAAG,UAAU,EAAE,KAAG,UA4BtE,CAAC"}
1
+ {"version":3,"file":"audio_frame.d.ts","sourceRoot":"","sources":["../src/audio_frame.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,KAAK,oBAAoB,EAA8B,MAAM,2BAA2B,CAAC;AAElG,qBAAa,UAAU;IACrB,IAAI,EAAE,UAAU,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;gBAOd,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM;IAO7F,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,UAAU;IAK1F,gBAAgB;IAChB,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,qBAAqB,GAAG,UAAU;IAa9D,gBAAgB;IAChB,SAAS,IAAI,oBAAoB;CAQlC;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,kBAAkB,WAAY,UAAU,GAAG,UAAU,EAAE,KAAG,UA2BtE,CAAC"}
@@ -1,8 +1,9 @@
1
1
  // SPDX-FileCopyrightText: 2024 LiveKit, Inc.
2
2
  //
3
3
  // SPDX-License-Identifier: Apache-2.0
4
+ import { create } from '@bufbuild/protobuf';
4
5
  import { FfiClient, FfiHandle } from './ffi_client.js';
5
- import { AudioFrameBufferInfo } from './proto/audio_frame_pb.js';
6
+ import { AudioFrameBufferInfoSchema } from './proto/audio_frame_pb.js';
6
7
  export class AudioFrame {
7
8
  // note: if converting from Uint8Array to Int16Array, *do not* use buffer.slice!
8
9
  // it is marked unstable by Node and can cause undefined behaviour, such as massive chunks of
@@ -29,7 +30,7 @@ export class AudioFrame {
29
30
  }
30
31
  /** @internal */
31
32
  protoInfo() {
32
- return new AudioFrameBufferInfo({
33
+ return create(AudioFrameBufferInfoSchema, {
33
34
  dataPtr: FfiClient.instance.retrievePtr(new Uint8Array(this.data.buffer)),
34
35
  sampleRate: this.sampleRate,
35
36
  numChannels: this.channels,
@@ -47,10 +48,9 @@ export class AudioFrame {
47
48
  * @param buffer - a single AudioFrame or list thereof
48
49
  */
49
50
  export const combineAudioFrames = (buffer) => {
50
- if (!buffer['length']) {
51
+ if (!Array.isArray(buffer)) {
51
52
  return buffer;
52
53
  }
53
- buffer = buffer;
54
54
  if (buffer.length === 0) {
55
55
  throw new Error('buffer is empty');
56
56
  }
@@ -1 +1 @@
1
- {"version":3,"file":"audio_frame.js","sourceRoot":"","sources":["../src/audio_frame.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"audio_frame.js","sourceRoot":"","sources":["../src/audio_frame.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"audio_resampler.d.ts","sourceRoot":"","sources":["../src/audio_resampler.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAe9C;;;GAGG;AACH,oBAAY,qBAAqB;IAC/B,KAAK,IAAsC;IAC3C,GAAG,IAAoC;IACvC,MAAM,IAAuC;IAC7C,IAAI,IAAqC;IACzC,SAAS,IAAyC;CACnD;AAED;;;;GAIG;AACH,qBAAa,cAAc;;IAMzB;;;;;;;;OAQG;gBAED,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,QAAQ,SAAI,EACZ,OAAO,wBAA+B;IA8BxC;;;;;;;;;;OAUG;IACH,IAAI,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU,EAAE;IAiCpC;;;;;;OAMG;IACH,KAAK,IAAI,UAAU,EAAE;CA8BtB"}
1
+ {"version":3,"file":"audio_resampler.d.ts","sourceRoot":"","sources":["../src/audio_resampler.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAe9C;;;GAGG;AACH,oBAAY,qBAAqB;IAC/B,KAAK,IAAsC;IAC3C,GAAG,IAAoC;IACvC,MAAM,IAAuC;IAC7C,IAAI,IAAqC;IACzC,SAAS,IAAyC;CACnD;AAED;;;;GAIG;AACH,qBAAa,cAAc;;IAMzB;;;;;;;;OAQG;gBAED,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,QAAQ,SAAI,EACZ,OAAO,wBAA+B;IA8BxC;;;;;;;;;;OAUG;IACH,IAAI,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU,EAAE;IAiCpC;;;;;;OAMG;IACH,KAAK,IAAI,UAAU,EAAE;CA8BtB"}
@@ -13,9 +13,10 @@ var _AudioResampler_inputRate, _AudioResampler_outputRate, _AudioResampler_chann
13
13
  // SPDX-FileCopyrightText: 2024 LiveKit, Inc.
14
14
  //
15
15
  // SPDX-License-Identifier: Apache-2.0
16
+ import { create } from '@bufbuild/protobuf';
16
17
  import { AudioFrame } from './audio_frame.js';
17
18
  import { FfiClient, FfiHandle } from './ffi_client.js';
18
- import { FlushSoxResamplerRequest, NewSoxResamplerRequest, PushSoxResamplerRequest, SoxResamplerDataType, } from './proto/audio_frame_pb.js';
19
+ import { FlushSoxResamplerRequestSchema, NewSoxResamplerRequestSchema, PushSoxResamplerRequestSchema, SoxResamplerDataType, } from './proto/audio_frame_pb.js';
19
20
  /**
20
21
  * Resampler quality. Higher quality settings result in better audio quality but require more
21
22
  * processing power.
@@ -51,7 +52,7 @@ export class AudioResampler {
51
52
  __classPrivateFieldSet(this, _AudioResampler_inputRate, inputRate, "f");
52
53
  __classPrivateFieldSet(this, _AudioResampler_outputRate, outputRate, "f");
53
54
  __classPrivateFieldSet(this, _AudioResampler_channels, channels, "f");
54
- const req = new NewSoxResamplerRequest({
55
+ const req = create(NewSoxResamplerRequestSchema, {
55
56
  inputRate,
56
57
  outputRate,
57
58
  numChannels: channels,
@@ -66,10 +67,10 @@ export class AudioResampler {
66
67
  value: req,
67
68
  },
68
69
  });
69
- if (res.error) {
70
- throw new Error(res.error);
70
+ if (res.message.case !== 'resampler') {
71
+ throw new Error(res.message.value ?? 'Unknown Error');
71
72
  }
72
- __classPrivateFieldSet(this, _AudioResampler_ffiHandle, new FfiHandle(res.resampler.handle.id), "f");
73
+ __classPrivateFieldSet(this, _AudioResampler_ffiHandle, new FfiHandle(res.message.value.handle.id), "f");
73
74
  }
74
75
  /**
75
76
  * Push audio data into the resampler and retrieve any available resampled data.
@@ -83,7 +84,7 @@ export class AudioResampler {
83
84
  * be empty if no output data is available yet.
84
85
  */
85
86
  push(data) {
86
- const req = new PushSoxResamplerRequest({
87
+ const req = create(PushSoxResamplerRequestSchema, {
87
88
  resamplerHandle: __classPrivateFieldGet(this, _AudioResampler_ffiHandle, "f").handle,
88
89
  dataPtr: data.protoInfo().dataPtr,
89
90
  size: data.data.byteLength,
@@ -113,7 +114,7 @@ export class AudioResampler {
113
114
  * internal buffers are processed and all resampled data is output.
114
115
  */
115
116
  flush() {
116
- const req = new FlushSoxResamplerRequest({
117
+ const req = create(FlushSoxResamplerRequestSchema, {
117
118
  resamplerHandle: __classPrivateFieldGet(this, _AudioResampler_ffiHandle, "f").handle,
118
119
  });
119
120
  const res = FfiClient.instance.request({
@@ -1 +1 @@
1
- {"version":3,"file":"audio_resampler.js","sourceRoot":"","sources":["../src/audio_resampler.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAA6C;AAC7C,EAAE;AACF,sCAAsC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAMvD,OAAO,EACL,wBAAwB,EACxB,sBAAsB,EACtB,uBAAuB,EAEvB,oBAAoB,GACrB,MAAM,2BAA2B,CAAC;AAEnC;;;GAGG;AACH,MAAM,CAAN,IAAY,qBAMX;AAND,WAAY,qBAAqB;IAC/B,mEAA2C,CAAA;IAC3C,+DAAuC,CAAA;IACvC,qEAA6C,CAAA;IAC7C,iEAAyC,CAAA;IACzC,2EAAkD,CAAA;AACpD,CAAC,EANW,qBAAqB,KAArB,qBAAqB,QAMhC;AAED;;;;GAIG;AACH,MAAM,OAAO,cAAc;IAMzB;;;;;;;;OAQG;IACH,YACE,SAAiB,EACjB,UAAkB,EAClB,QAAQ,GAAG,CAAC,EACZ,OAAO,GAAG,qBAAqB,CAAC,MAAM;QAlBxC,4CAAmB;QACnB,6CAAoB;QACpB,2CAAkB;QAClB,4CAAsB;QAiBpB,uBAAA,IAAI,6BAAc,SAAS,MAAA,CAAC;QAC5B,uBAAA,IAAI,8BAAe,UAAU,MAAA,CAAC;QAC9B,uBAAA,IAAI,4BAAa,QAAQ,MAAA,CAAC;QAE1B,MAAM,GAAG,GAAG,IAAI,sBAAsB,CAAC;YACrC,SAAS;YACT,UAAU;YACV,WAAW,EAAE,QAAQ;YACrB,aAAa,EAAE,OAAqC;YACpD,aAAa,EAAE,oBAAoB,CAAC,oBAAoB;YACxD,cAAc,EAAE,oBAAoB,CAAC,oBAAoB;YACzD,KAAK,EAAE,CAAC;SACT,CAAC,CAAC;QAEH,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,CAAC,OAAO,CAA0B;YAC9D,OAAO,EAAE;gBACP,IAAI,EAAE,iBAAiB;gBACvB,KAAK,EAAE,GAAG;aACX;SACF,CAAC,CAAC;QAEH,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;QAED,uBAAA,IAAI,6BAAc,IAAI,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,MAAA,CAAC;IAC3D,CAAC;IAED;;;;;;;;;;OAUG;IACH,IAAI,CAAC,IAAgB;QACnB,MAAM,GAAG,GAAG,IAAI,uBAAuB,CAAC;YACtC,eAAe,EAAE,uBAAA,IAAI,iCAAW,CAAC,MAAM;YACvC,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,OAAO;YACjC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU;SAC3B,CAAC,CAAC;QAEH,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,CAAC,OAAO,CAA2B;YAC/D,OAAO,EAAE;gBACP,IAAI,EAAE,kBAAkB;gBACxB,KAAK,EAAE,GAAG;aACX;SACF,CAAC,CAAC;QAEH,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,UAAU,GAAG,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAC1E,OAAO;YACL,IAAI,UAAU,CACZ,IAAI,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,EACjC,uBAAA,IAAI,kCAAY,EAChB,uBAAA,IAAI,gCAAU,EACd,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,uBAAA,IAAI,gCAAU,GAAG,CAAC,CAAC,CACnD;SACF,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,KAAK;QACH,MAAM,GAAG,GAAG,IAAI,wBAAwB,CAAC;YACvC,eAAe,EAAE,uBAAA,IAAI,iCAAW,CAAC,MAAM;SACxC,CAAC,CAAC;QAEH,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,CAAC,OAAO,CAA4B;YAChE,OAAO,EAAE;gBACP,IAAI,EAAE,mBAAmB;gBACzB,KAAK,EAAE,GAAG;aACX;SACF,CAAC,CAAC;QAEH,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,UAAU,GAAG,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAC1E,OAAO;YACL,IAAI,UAAU,CACZ,IAAI,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,EACjC,uBAAA,IAAI,kCAAY,EAChB,uBAAA,IAAI,gCAAU,EACd,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,uBAAA,IAAI,gCAAU,GAAG,CAAC,CAAC,CACnD;SACF,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"audio_resampler.js","sourceRoot":"","sources":["../src/audio_resampler.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"audio_source.d.ts","sourceRoot":"","sources":["../src/audio_source.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,KAAK,EACV,eAAe,EAKhB,MAAM,2BAA2B,CAAC;AAQnC,qBAAa,WAAW;IACtB,gBAAgB;IAChB,IAAI,EAAE,eAAe,CAAC;IACtB,gBAAgB;IAChB,SAAS,EAAE,SAAS,CAAC;IACrB,gBAAgB;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB;IAChB,OAAO,aAAY;IACnB,OAAO,gBAAqB;IAC5B,gBAAgB;IAChB,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAa;IAEpD,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;gBAEN,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,SAAO;IA0BrE,IAAI,cAAc,IAAI,MAAM,CAK3B;IAED,UAAU;IAeV,gBAAgB;IACV,UAAU;IAMV,cAAc;IAQd,YAAY,CAAC,KAAK,EAAE,UAAU;CAiCrC"}
1
+ {"version":3,"file":"audio_source.d.ts","sourceRoot":"","sources":["../src/audio_source.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,KAAK,EACV,eAAe,EAKhB,MAAM,2BAA2B,CAAC;AAQnC,qBAAa,WAAW;IACtB,gBAAgB;IAChB,IAAI,EAAE,eAAe,CAAC;IACtB,gBAAgB;IAChB,SAAS,EAAE,SAAS,CAAC;IACrB,gBAAgB;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB;IAChB,OAAO,aAAY;IACnB,OAAO,gBAAqB;IAC5B,gBAAgB;IAChB,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAa;IAEpD,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;gBAEN,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,SAAO;IA0BrE,IAAI,cAAc,IAAI,MAAM,CAK3B;IAED,UAAU;IAeV,gBAAgB;IACV,UAAU;IAMV,cAAc;IAQd,YAAY,CAAC,KAAK,EAAE,UAAU;CAiCrC"}
@@ -1,6 +1,10 @@
1
+ // SPDX-FileCopyrightText: 2024 LiveKit, Inc.
2
+ //
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ import { create } from '@bufbuild/protobuf';
1
5
  import { FfiClient } from './ffi_client.js';
2
6
  import { FfiHandle } from './napi/native.js';
3
- import { AudioSourceType, CaptureAudioFrameRequest, ClearAudioBufferRequest, NewAudioSourceRequest, } from './proto/audio_frame_pb.js';
7
+ import { AudioSourceType, CaptureAudioFrameRequestSchema, ClearAudioBufferRequestSchema, NewAudioSourceRequestSchema, } from './proto/audio_frame_pb.js';
4
8
  export class AudioSource {
5
9
  constructor(sampleRate, numChannels, queueSize = 1000) {
6
10
  /** @internal */
@@ -13,7 +17,7 @@ export class AudioSource {
13
17
  this.queueSize = queueSize;
14
18
  this.lastCapture = 0;
15
19
  this.currentQueueSize = 0;
16
- const req = new NewAudioSourceRequest({
20
+ const req = create(NewAudioSourceRequestSchema, {
17
21
  type: AudioSourceType.AUDIO_SOURCE_NATIVE,
18
22
  sampleRate: sampleRate,
19
23
  numChannels: numChannels,
@@ -32,7 +36,7 @@ export class AudioSource {
32
36
  return Math.max(this.currentQueueSize - Number(process.hrtime.bigint() / 1000000n) + this.lastCapture, 0);
33
37
  }
34
38
  clearQueue() {
35
- const req = new ClearAudioBufferRequest({
39
+ const req = create(ClearAudioBufferRequestSchema, {
36
40
  sourceHandle: this.ffiHandle.handle,
37
41
  });
38
42
  FfiClient.instance.request({
@@ -68,7 +72,7 @@ export class AudioSource {
68
72
  // remove 50ms to account for processing time
69
73
  // (e.g. using wait_for_playout for very small chunks)
70
74
  this.timeout = setTimeout(this.release, this.currentQueueSize - 50);
71
- const req = new CaptureAudioFrameRequest({
75
+ const req = create(CaptureAudioFrameRequestSchema, {
72
76
  sourceHandle: this.ffiHandle.handle,
73
77
  buffer: frame.protoInfo(),
74
78
  });
@@ -1 +1 @@
1
- {"version":3,"file":"audio_source.js","sourceRoot":"","sources":["../src/audio_source.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"audio_source.js","sourceRoot":"","sources":["../src/audio_source.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
+ import { Mutex } from '@livekit/mutex';
1
2
  import { AudioFrame } from './audio_frame.js';
2
3
  import { FfiHandle } from './ffi_client.js';
3
4
  import type { AudioStreamInfo } from './proto/audio_frame_pb.js';
4
5
  import type { Track } from './track.js';
5
- import { Mutex } from './utils.js';
6
6
  export declare class AudioStream implements AsyncIterableIterator<AudioFrame> {
7
7
  /** @internal */
8
8
  info: AudioStreamInfo;
@@ -1 +1 @@
1
- {"version":3,"file":"audio_stream.d.ts","sourceRoot":"","sources":["../src/audio_stream.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAA6B,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,KAAK,EAAE,eAAe,EAA0B,MAAM,2BAA2B,CAAC;AAEzF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,qBAAa,WAAY,YAAW,qBAAqB,CAAC,UAAU,CAAC;IACnE,gBAAgB;IAChB,IAAI,EAAE,eAAe,CAAC;IACtB,gBAAgB;IAChB,SAAS,EAAE,SAAS,CAAC;IACrB,gBAAgB;IAChB,UAAU,EAAE,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,CAAM;IACvC,gBAAgB;IAChB,YAAY,EAAE,CAAC,CAAC,KAAK,EAAE,cAAc,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,GAAG,IAAI,CAAQ;IAC1E,gBAAgB;IAChB,KAAK,QAAe;IAEpB,KAAK,EAAE,KAAK,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;gBAER,KAAK,EAAE,KAAK,EAAE,UAAU,GAAE,MAAc,EAAE,WAAW,GAAE,MAAU;IAyB7E,OAAO,CAAC,OAAO,CAsBb;IAEI,IAAI,IAAI,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;IAkBjD,KAAK;IAKL,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,WAAW;CAGtC"}
1
+ {"version":3,"file":"audio_stream.d.ts","sourceRoot":"","sources":["../src/audio_stream.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAA6B,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,KAAK,EAAE,eAAe,EAA0B,MAAM,2BAA2B,CAAC;AAEzF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAExC,qBAAa,WAAY,YAAW,qBAAqB,CAAC,UAAU,CAAC;IACnE,gBAAgB;IAChB,IAAI,EAAE,eAAe,CAAC;IACtB,gBAAgB;IAChB,SAAS,EAAE,SAAS,CAAC;IACrB,gBAAgB;IAChB,UAAU,EAAE,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,CAAM;IACvC,gBAAgB;IAChB,YAAY,EAAE,CAAC,CAAC,KAAK,EAAE,cAAc,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,GAAG,IAAI,CAAQ;IAC1E,gBAAgB;IAChB,KAAK,QAAe;IAEpB,KAAK,EAAE,KAAK,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;gBAER,KAAK,EAAE,KAAK,EAAE,UAAU,GAAE,MAAc,EAAE,WAAW,GAAE,MAAU;IAyB7E,OAAO,CAAC,OAAO,CAsBb;IAEI,IAAI,IAAI,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;IAkBjD,KAAK;IAKL,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,WAAW;CAGtC"}
@@ -1,10 +1,11 @@
1
1
  // SPDX-FileCopyrightText: 2024 LiveKit, Inc.
2
2
  //
3
3
  // SPDX-License-Identifier: Apache-2.0
4
+ import { create } from '@bufbuild/protobuf';
5
+ import { Mutex } from '@livekit/mutex';
4
6
  import { AudioFrame } from './audio_frame.js';
5
7
  import { FfiClient, FfiClientEvent, FfiHandle } from './ffi_client.js';
6
- import { AudioStreamType, NewAudioStreamRequest } from './proto/audio_frame_pb.js';
7
- import { Mutex } from './utils.js';
8
+ import { AudioStreamType, NewAudioStreamRequestSchema } from './proto/audio_frame_pb.js';
8
9
  export class AudioStream {
9
10
  constructor(track, sampleRate = 48000, numChannels = 1) {
10
11
  /** @internal */
@@ -37,7 +38,7 @@ export class AudioStream {
37
38
  this.track = track;
38
39
  this.sampleRate = sampleRate;
39
40
  this.numChannels = numChannels;
40
- const req = new NewAudioStreamRequest({
41
+ const req = create(NewAudioStreamRequestSchema, {
41
42
  type: AudioStreamType.AUDIO_STREAM_NATIVE,
42
43
  trackHandle: track.ffi_handle.handle,
43
44
  sampleRate: sampleRate,
@@ -1 +1 @@
1
- {"version":3,"file":"audio_stream.js","sourceRoot":"","sources":["../src/audio_stream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"audio_stream.js","sourceRoot":"","sources":["../src/audio_stream.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"e2ee.d.ts","sourceRoot":"","sources":["../src/e2ee.ts"],"names":[],"mappings":"AAYA,OAAO,EAGL,cAAc,EASf,MAAM,oBAAoB,CAAC;AAM5B,MAAM,WAAW,kBAAkB;IACjC,SAAS,CAAC,EAAE,UAAU,CAAC;IACvB,WAAW,EAAE,UAAU,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,eAAO,MAAM,yBAAyB,EAAE,kBAIvC,CAAC;AAEF,MAAM,WAAW,WAAW;IAC1B,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,cAAc,EAAE,cAAc,CAAC;CAChC;AAED,eAAO,MAAM,kBAAkB,EAAE,WAGhC,CAAC;AAEF,qBAAa,WAAW;IACtB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,EAAE,kBAAkB,CAAC;IAE5B,eAAe;gBACH,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB;IAKxD,YAAY,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM;IAoBpD,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU;IAqB7C,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU;IAqB9C,MAAM,CAAC,mBAAmB,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAoBpD,SAAS,CAAC,mBAAmB,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,UAAU;IAsBpE,UAAU,CAAC,mBAAmB,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,UAAU;CAqBtE;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,UAAU,CAAM;IACxB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;gBAEL,UAAU,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IAO/F,UAAU,CAAC,OAAO,EAAE,OAAO;IAqB3B,WAAW,CAAC,QAAQ,EAAE,MAAM;CAoB7B;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,UAAU,CAAM;IACxB,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,WAAW,CAAC,CAAc;IAElC,OAAO,EAAE,OAAO,CAAC;gBAEL,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW;IAYlD,UAAU,CAAC,OAAO,EAAE,OAAO;IAoB3B,aAAa,IAAI,YAAY,EAAE;CA8BhC"}
1
+ {"version":3,"file":"e2ee.d.ts","sourceRoot":"","sources":["../src/e2ee.ts"],"names":[],"mappings":"AAaA,OAAO,EAGL,cAAc,EASf,MAAM,oBAAoB,CAAC;AAM5B,MAAM,WAAW,kBAAkB;IACjC,SAAS,CAAC,EAAE,UAAU,CAAC;IACvB,WAAW,EAAE,UAAU,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,eAAO,MAAM,yBAAyB,EAAE,kBAIvC,CAAC;AAEF,MAAM,WAAW,WAAW;IAC1B,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,cAAc,EAAE,cAAc,CAAC;CAChC;AAED,eAAO,MAAM,kBAAkB,EAAE,WAGhC,CAAC;AAEF,qBAAa,WAAW;IACtB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,EAAE,kBAAkB,CAAC;IAE5B,eAAe;gBACH,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB;IAKxD,YAAY,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM;IAoBpD,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU;IAqB7C,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU;IAqB9C,MAAM,CAAC,mBAAmB,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAoBpD,SAAS,CAAC,mBAAmB,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,UAAU;IAsBpE,UAAU,CAAC,mBAAmB,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,UAAU;CAqBtE;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,UAAU,CAAM;IACxB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;gBAEL,UAAU,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IAO/F,UAAU,CAAC,OAAO,EAAE,OAAO;IAqB3B,WAAW,CAAC,QAAQ,EAAE,MAAM;CAoB7B;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,UAAU,CAAM;IACxB,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,WAAW,CAAC,CAAc;IAElC,OAAO,EAAE,OAAO,CAAC;gBAEL,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW;IAWlD,UAAU,CAAC,OAAO,EAAE,OAAO;IAoB3B,aAAa,IAAI,YAAY,EAAE;CA8BhC"}
package/dist/e2ee.js CHANGED
@@ -1,8 +1,9 @@
1
1
  // SPDX-FileCopyrightText: 2024 LiveKit, Inc.
2
2
  //
3
3
  // SPDX-License-Identifier: Apache-2.0
4
+ import { create } from '@bufbuild/protobuf';
4
5
  import { FfiClient } from './ffi_client.js';
5
- import { E2eeManagerSetEnabledRequest, E2eeRequest, EncryptionType, FrameCryptorSetEnabledRequest, FrameCryptorSetKeyIndexRequest, GetKeyRequest, GetSharedKeyRequest, RatchetKeyRequest, RatchetSharedKeyRequest, SetKeyRequest, SetSharedKeyRequest, } from './proto/e2ee_pb.js';
6
+ import { E2eeManagerSetEnabledRequestSchema, E2eeRequestSchema, EncryptionType, FrameCryptorSetEnabledRequestSchema, FrameCryptorSetKeyIndexRequestSchema, GetKeyRequestSchema, GetSharedKeyRequestSchema, RatchetKeyRequestSchema, RatchetSharedKeyRequestSchema, SetKeyRequestSchema, SetSharedKeyRequestSchema, } from './proto/e2ee_pb.js';
6
7
  const DEFAULT_RATCHET_SALT = new TextEncoder().encode('LKFrameEncryptionKey');
7
8
  const DEFAULT_RATCHET_WINDOW_SIZE = 16;
8
9
  const DEFAULT_FAILURE_TOLERANCE = -1;
@@ -22,11 +23,11 @@ export class KeyProvider {
22
23
  this.options = opts;
23
24
  }
24
25
  setSharedKey(sharedKey, keyIndex) {
25
- const req = new E2eeRequest({
26
+ const req = create(E2eeRequestSchema, {
26
27
  roomHandle: this.roomHandle,
27
28
  message: {
28
29
  case: 'setSharedKey',
29
- value: new SetSharedKeyRequest({
30
+ value: create(SetSharedKeyRequestSchema, {
30
31
  keyIndex: keyIndex,
31
32
  sharedKey: sharedKey,
32
33
  }),
@@ -40,11 +41,11 @@ export class KeyProvider {
40
41
  });
41
42
  }
42
43
  exportSharedKey(keyIndex) {
43
- const req = new E2eeRequest({
44
+ const req = create(E2eeRequestSchema, {
44
45
  roomHandle: this.roomHandle,
45
46
  message: {
46
47
  case: 'getSharedKey',
47
- value: new GetSharedKeyRequest({
48
+ value: create(GetSharedKeyRequestSchema, {
48
49
  keyIndex: keyIndex,
49
50
  }),
50
51
  },
@@ -58,11 +59,11 @@ export class KeyProvider {
58
59
  return res.message.value.key;
59
60
  }
60
61
  ratchetSharedKey(keyIndex) {
61
- const req = new E2eeRequest({
62
+ const req = create(E2eeRequestSchema, {
62
63
  roomHandle: this.roomHandle,
63
64
  message: {
64
65
  case: 'ratchetSharedKey',
65
- value: new RatchetSharedKeyRequest({
66
+ value: create(RatchetSharedKeyRequestSchema, {
66
67
  keyIndex: keyIndex,
67
68
  }),
68
69
  },
@@ -76,11 +77,11 @@ export class KeyProvider {
76
77
  return res.message.value.newKey;
77
78
  }
78
79
  setKey(participantIdentity, keyIndex) {
79
- const req = new E2eeRequest({
80
+ const req = create(E2eeRequestSchema, {
80
81
  roomHandle: this.roomHandle,
81
82
  message: {
82
83
  case: 'setKey',
83
- value: new SetKeyRequest({
84
+ value: create(SetKeyRequestSchema, {
84
85
  keyIndex: keyIndex,
85
86
  participantIdentity: participantIdentity,
86
87
  }),
@@ -94,11 +95,11 @@ export class KeyProvider {
94
95
  });
95
96
  }
96
97
  exportKey(participantIdentity, keyIndex) {
97
- const req = new E2eeRequest({
98
+ const req = create(E2eeRequestSchema, {
98
99
  roomHandle: this.roomHandle,
99
100
  message: {
100
101
  case: 'getKey',
101
- value: new GetKeyRequest({
102
+ value: create(GetKeyRequestSchema, {
102
103
  keyIndex: keyIndex,
103
104
  participantIdentity: participantIdentity,
104
105
  }),
@@ -113,11 +114,11 @@ export class KeyProvider {
113
114
  return res.message.value.key;
114
115
  }
115
116
  ratchetKey(participantIdentity, keyIndex) {
116
- const req = new E2eeRequest({
117
+ const req = create(E2eeRequestSchema, {
117
118
  roomHandle: this.roomHandle,
118
119
  message: {
119
120
  case: 'ratchetKey',
120
- value: new RatchetKeyRequest({
121
+ value: create(RatchetKeyRequestSchema, {
121
122
  keyIndex: keyIndex,
122
123
  participantIdentity: participantIdentity,
123
124
  }),
@@ -142,11 +143,11 @@ export class FrameCryptor {
142
143
  }
143
144
  setEnabled(enabled) {
144
145
  this.enabled = enabled;
145
- const req = new E2eeRequest({
146
+ const req = create(E2eeRequestSchema, {
146
147
  roomHandle: this.roomHandle,
147
148
  message: {
148
149
  case: 'cryptorSetEnabled',
149
- value: new FrameCryptorSetEnabledRequest({
150
+ value: create(FrameCryptorSetEnabledRequestSchema, {
150
151
  participantIdentity: this.participantIdentity,
151
152
  enabled: this.enabled,
152
153
  }),
@@ -161,11 +162,11 @@ export class FrameCryptor {
161
162
  }
162
163
  setKeyIndex(keyIndex) {
163
164
  this.keyIndex = keyIndex;
164
- const req = new E2eeRequest({
165
+ const req = create(E2eeRequestSchema, {
165
166
  roomHandle: this.roomHandle,
166
167
  message: {
167
168
  case: 'cryptorSetKeyIndex',
168
- value: new FrameCryptorSetKeyIndexRequest({
169
+ value: create(FrameCryptorSetKeyIndexRequestSchema, {
169
170
  participantIdentity: this.participantIdentity,
170
171
  keyIndex: this.keyIndex,
171
172
  }),
@@ -184,19 +185,18 @@ export class E2EEManager {
184
185
  this.roomHandle = 0n;
185
186
  this.roomHandle = roomHandle;
186
187
  this.enabled = opts !== undefined;
187
- if (opts !== undefined) {
188
- const options = { ...defaultE2EEOptions, ...opts };
189
- this.options = options;
190
- this.keyProvider = new KeyProvider(roomHandle, options.keyProviderOptions);
191
- }
188
+ opts ?? (opts = defaultE2EEOptions);
189
+ const options = { ...defaultE2EEOptions, ...opts };
190
+ this.options = options;
191
+ this.keyProvider = new KeyProvider(roomHandle, options.keyProviderOptions);
192
192
  }
193
193
  setEnabled(enabled) {
194
194
  this.enabled = enabled;
195
- const req = new E2eeRequest({
195
+ const req = create(E2eeRequestSchema, {
196
196
  roomHandle: this.roomHandle,
197
197
  message: {
198
198
  case: 'managerSetEnabled',
199
- value: new E2eeManagerSetEnabledRequest({
199
+ value: create(E2eeManagerSetEnabledRequestSchema, {
200
200
  enabled: this.enabled,
201
201
  }),
202
202
  },
@@ -209,7 +209,7 @@ export class E2EEManager {
209
209
  });
210
210
  }
211
211
  frameCryptors() {
212
- const req = new E2eeRequest({
212
+ const req = create(E2eeRequestSchema, {
213
213
  roomHandle: this.roomHandle,
214
214
  message: {
215
215
  case: 'managerGetFrameCryptors',
package/dist/e2ee.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"e2ee.js","sourceRoot":"","sources":["../src/e2ee.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"e2ee.js","sourceRoot":"","sources":["../src/e2ee.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- import type { PartialMessage } from '@bufbuild/protobuf';
1
+ import type { MessageInitShape } from '@bufbuild/protobuf';
2
2
  import type { TypedEventEmitter as TypedEmitter } from '@livekit/typed-emitter';
3
3
  import { FfiHandle, livekitDispose } from './napi/native.js';
4
- import { FfiEvent, FfiRequest, FfiResponse } from './proto/ffi_pb.js';
4
+ import { FfiEvent, FfiRequest, FfiRequestSchema, FfiResponse } from './proto/ffi_pb.js';
5
5
  export { FfiHandle, FfiEvent, FfiResponse, FfiRequest, livekitDispose as dispose };
6
6
  export type FfiClientCallbacks = {
7
7
  ffi_event: (event: FfiEvent) => void;
@@ -15,7 +15,7 @@ export declare class FfiClient extends FfiClient_base {
15
15
  /** @internal */
16
16
  static get instance(): FfiClient;
17
17
  constructor();
18
- request<T>(req: PartialMessage<FfiRequest>): T;
18
+ request<T>(req: MessageInitShape<typeof FfiRequestSchema>): T;
19
19
  copyBuffer(ptr: bigint, len: number): Uint8Array;
20
20
  retrievePtr(data: Uint8Array): bigint;
21
21
  waitFor<T>(predicate: (ev: FfiEvent) => boolean): Promise<T>;
@@ -1 +1 @@
1
- {"version":3,"file":"ffi_client.d.ts","sourceRoot":"","sources":["../src/ffi_client.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,IAAI,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEhF,OAAO,EACL,SAAS,EAET,cAAc,EAIf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEtE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,IAAI,OAAO,EAAE,CAAC;AAEnF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,SAAS,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAC;CACtC,CAAC;AAEF,oBAAY,cAAc;IACxB,QAAQ,cAAc;CACvB;wCAEyD,YAAY,CAAC,kBAAkB,CAAC;AAA1F,qBAAa,SAAU,SAAQ,cAA4D;IACzF,MAAM,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC;IAE3B,gBAAgB;IAChB,MAAM,KAAK,QAAQ,IAAI,SAAS,CAI/B;;IAYD,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC;IAO9C,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,UAAU;IAIhD,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM;IAI/B,OAAO,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;CAWnE"}
1
+ {"version":3,"file":"ffi_client.d.ts","sourceRoot":"","sources":["../src/ffi_client.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,OAAO,KAAK,EAAE,iBAAiB,IAAI,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEhF,OAAO,EACL,SAAS,EAET,cAAc,EAIf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,QAAQ,EAER,UAAU,EACV,gBAAgB,EAChB,WAAW,EAEZ,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,IAAI,OAAO,EAAE,CAAC;AAEnF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,SAAS,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAC;CACtC,CAAC;AAEF,oBAAY,cAAc;IACxB,QAAQ,cAAc;CACvB;wCAEyD,YAAY,CAAC,kBAAkB,CAAC;AAA1F,qBAAa,SAAU,SAAQ,cAA4D;IACzF,MAAM,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC;IAE3B,gBAAgB;IAChB,MAAM,KAAK,QAAQ,IAAI,SAAS,CAI/B;;IAgBD,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,gBAAgB,CAAC,OAAO,gBAAgB,CAAC,GAAG,CAAC;IAO7D,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,UAAU;IAIhD,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM;IAI/B,OAAO,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;CAWnE"}
@@ -1,7 +1,9 @@
1
+ import { create, fromBinary, toBinary } from '@bufbuild/protobuf';
1
2
  import EventEmitter from 'events';
2
3
  import { FfiHandle, livekitCopyBuffer, livekitDispose, livekitFfiRequest, livekitInitialize, livekitRetrievePtr, } from './napi/native.js';
3
- import { FfiEvent, FfiRequest, FfiResponse } from './proto/ffi_pb.js';
4
- export { FfiHandle, FfiEvent, FfiResponse, FfiRequest, livekitDispose as dispose };
4
+ import { FfiEventSchema, FfiRequestSchema, FfiResponseSchema, } from './proto/ffi_pb.js';
5
+ import { SDK_VERSION } from './version.js';
6
+ export { FfiHandle, livekitDispose as dispose };
5
7
  export var FfiClientEvent;
6
8
  (function (FfiClientEvent) {
7
9
  FfiClientEvent["FfiEvent"] = "ffi_event";
@@ -17,15 +19,15 @@ export class FfiClient extends EventEmitter {
17
19
  super();
18
20
  this.setMaxListeners(0);
19
21
  livekitInitialize((event_data) => {
20
- const event = FfiEvent.fromBinary(event_data);
22
+ const event = fromBinary(FfiEventSchema, event_data);
21
23
  this.emit(FfiClientEvent.FfiEvent, event);
22
- }, true);
24
+ }, true, SDK_VERSION);
23
25
  }
24
26
  request(req) {
25
- const request = new FfiRequest(req);
26
- const req_data = request.toBinary();
27
+ const request = create(FfiRequestSchema, req);
28
+ const req_data = toBinary(FfiRequestSchema, request);
27
29
  const res_data = livekitFfiRequest(req_data);
28
- return FfiResponse.fromBinary(res_data).message.value;
30
+ return fromBinary(FfiResponseSchema, res_data).message.value;
29
31
  }
30
32
  copyBuffer(ptr, len) {
31
33
  return livekitCopyBuffer(ptr, len);
@@ -1 +1 @@
1
- {"version":3,"file":"ffi_client.js","sourceRoot":"","sources":["../src/ffi_client.ts"],"names":[],"mappings":"AAKA,OAAO,YAAY,MAAM,QAAQ,CAAC;AAClC,OAAO,EACL,SAAS,EACT,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEtE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,IAAI,OAAO,EAAE,CAAC;AAMnF,MAAM,CAAN,IAAY,cAEX;AAFD,WAAY,cAAc;IACxB,wCAAsB,CAAA;AACxB,CAAC,EAFW,cAAc,KAAd,cAAc,QAEzB;AAED,MAAM,OAAO,SAAU,SAAS,YAA2D;IAGzF,gBAAgB;IAChB,MAAM,KAAK,QAAQ;QACjB,IAAI,CAAC,SAAS,CAAC,OAAO;YAAE,SAAS,CAAC,OAAO,GAAG,IAAI,SAAS,EAAE,CAAC;QAE5D,OAAO,SAAS,CAAC,OAAO,CAAC;IAC3B,CAAC;IAED;QACE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QAExB,iBAAiB,CAAC,CAAC,UAAsB,EAAE,EAAE;YAC3C,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YAC9C,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC5C,CAAC,EAAE,IAAI,CAAC,CAAC;IACX,CAAC;IAED,OAAO,CAAI,GAA+B;QACxC,MAAM,OAAO,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;QACpC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;QACpC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAC7C,OAAO,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,KAAU,CAAC;IAC7D,CAAC;IAED,UAAU,CAAC,GAAW,EAAE,GAAW;QACjC,OAAO,iBAAiB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACrC,CAAC;IAED,WAAW,CAAC,IAAgB;QAC1B,OAAO,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,OAAO,CAAI,SAAoC;QACnD,OAAO,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,EAAE;YAChC,MAAM,QAAQ,GAAG,CAAC,EAAY,EAAE,EAAE;gBAChC,IAAI,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;oBAClB,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;oBAC5C,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,KAAU,CAAC,CAAC;gBACjC,CAAC;YACH,CAAC,CAAC;YACF,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"ffi_client.js","sourceRoot":"","sources":["../src/ffi_client.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAElE,OAAO,YAAY,MAAM,QAAQ,CAAC;AAClC,OAAO,EACL,SAAS,EACT,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAEL,cAAc,EAEd,gBAAgB,EAEhB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,SAAS,EAAqC,cAAc,IAAI,OAAO,EAAE,CAAC;AAMnF,MAAM,CAAN,IAAY,cAEX;AAFD,WAAY,cAAc;IACxB,wCAAsB,CAAA;AACxB,CAAC,EAFW,cAAc,KAAd,cAAc,QAEzB;AAED,MAAM,OAAO,SAAU,SAAS,YAA2D;IAGzF,gBAAgB;IAChB,MAAM,KAAK,QAAQ;QACjB,IAAI,CAAC,SAAS,CAAC,OAAO;YAAE,SAAS,CAAC,OAAO,GAAG,IAAI,SAAS,EAAE,CAAC;QAE5D,OAAO,SAAS,CAAC,OAAO,CAAC;IAC3B,CAAC;IAED;QACE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QAExB,iBAAiB,CACf,CAAC,UAAsB,EAAE,EAAE;YACzB,MAAM,KAAK,GAAG,UAAU,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;YACrD,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC5C,CAAC,EACD,IAAI,EACJ,WAAW,CACZ,CAAC;IACJ,CAAC;IAED,OAAO,CAAI,GAA8C;QACvD,MAAM,OAAO,GAAG,MAAM,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;QAC9C,MAAM,QAAQ,GAAG,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;QACrD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAC7C,OAAO,UAAU,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,KAAU,CAAC;IACpE,CAAC;IAED,UAAU,CAAC,GAAW,EAAE,GAAW;QACjC,OAAO,iBAAiB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACrC,CAAC;IAED,WAAW,CAAC,IAAgB;QAC1B,OAAO,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,OAAO,CAAI,SAAoC;QACnD,OAAO,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,EAAE;YAChC,MAAM,QAAQ,GAAG,CAAC,EAAY,EAAE,EAAE;gBAChC,IAAI,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;oBAClB,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;oBAC5C,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,KAAU,CAAC,CAAC;gBACjC,CAAC;YACH,CAAC,CAAC;YACF,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}