@livekit/rtc-node 0.13.20 → 0.13.22

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 (75) hide show
  1. package/Cargo.toml +6 -3
  2. package/dist/async_queue.cjs +80 -0
  3. package/dist/async_queue.cjs.map +1 -0
  4. package/dist/async_queue.d.cts +30 -0
  5. package/dist/async_queue.d.ts +30 -0
  6. package/dist/async_queue.d.ts.map +1 -0
  7. package/dist/async_queue.js +56 -0
  8. package/dist/async_queue.js.map +1 -0
  9. package/dist/audio_mixer.cjs +281 -0
  10. package/dist/audio_mixer.cjs.map +1 -0
  11. package/dist/audio_mixer.d.cts +121 -0
  12. package/dist/audio_mixer.d.ts +121 -0
  13. package/dist/audio_mixer.d.ts.map +1 -0
  14. package/dist/audio_mixer.js +256 -0
  15. package/dist/audio_mixer.js.map +1 -0
  16. package/dist/index.cjs +3 -0
  17. package/dist/index.cjs.map +1 -1
  18. package/dist/index.d.cts +3 -0
  19. package/dist/index.d.ts +3 -0
  20. package/dist/index.d.ts.map +1 -1
  21. package/dist/index.js +2 -0
  22. package/dist/index.js.map +1 -1
  23. package/dist/participant.cjs +43 -32
  24. package/dist/participant.cjs.map +1 -1
  25. package/dist/participant.d.cts +3 -0
  26. package/dist/participant.d.ts +3 -0
  27. package/dist/participant.d.ts.map +1 -1
  28. package/dist/participant.js +43 -32
  29. package/dist/participant.js.map +1 -1
  30. package/dist/proto/data_stream_pb.cjs +91 -2
  31. package/dist/proto/data_stream_pb.cjs.map +1 -1
  32. package/dist/proto/data_stream_pb.d.cts +92 -1
  33. package/dist/proto/data_stream_pb.d.ts +92 -1
  34. package/dist/proto/data_stream_pb.d.ts.map +1 -1
  35. package/dist/proto/data_stream_pb.js +88 -2
  36. package/dist/proto/data_stream_pb.js.map +1 -1
  37. package/dist/proto/ffi_pb.cjs +6 -3
  38. package/dist/proto/ffi_pb.cjs.map +1 -1
  39. package/dist/proto/ffi_pb.d.cts +19 -1
  40. package/dist/proto/ffi_pb.d.ts +19 -1
  41. package/dist/proto/ffi_pb.d.ts.map +1 -1
  42. package/dist/proto/ffi_pb.js +7 -4
  43. package/dist/proto/ffi_pb.js.map +1 -1
  44. package/dist/proto/room_pb.cjs +32 -2
  45. package/dist/proto/room_pb.cjs.map +1 -1
  46. package/dist/proto/room_pb.d.cts +38 -2
  47. package/dist/proto/room_pb.d.ts +38 -2
  48. package/dist/proto/room_pb.d.ts.map +1 -1
  49. package/dist/proto/room_pb.js +31 -2
  50. package/dist/proto/room_pb.js.map +1 -1
  51. package/dist/room.cjs +173 -80
  52. package/dist/room.cjs.map +1 -1
  53. package/dist/room.d.cts +16 -3
  54. package/dist/room.d.ts +16 -3
  55. package/dist/room.d.ts.map +1 -1
  56. package/dist/room.js +174 -81
  57. package/dist/room.js.map +1 -1
  58. package/dist/version.cjs +1 -1
  59. package/dist/version.cjs.map +1 -1
  60. package/dist/version.d.cts +1 -1
  61. package/dist/version.d.ts +1 -1
  62. package/dist/version.js +1 -1
  63. package/dist/version.js.map +1 -1
  64. package/package.json +9 -8
  65. package/src/async_queue.test.ts +250 -0
  66. package/src/async_queue.ts +80 -0
  67. package/src/audio_mixer.test.ts +167 -0
  68. package/src/audio_mixer.ts +407 -0
  69. package/src/index.ts +1 -0
  70. package/src/participant.ts +48 -30
  71. package/src/proto/data_stream_pb.ts +159 -0
  72. package/src/proto/ffi_pb.ts +22 -1
  73. package/src/proto/room_pb.ts +64 -1
  74. package/src/room.ts +193 -91
  75. package/src/version.ts +1 -1
@@ -20,6 +20,7 @@
20
20
  import type { BinaryReadOptions, FieldList, JsonReadOptions, JsonValue, PartialMessage, PlainMessage } from "@bufbuild/protobuf";
21
21
  import { Message, proto2 } from "@bufbuild/protobuf";
22
22
  import { FfiOwnedHandle } from "./handle_pb.js";
23
+ import { EncryptionType } from "./e2ee_pb.js";
23
24
 
24
25
  /**
25
26
  * A reader for an incoming stream.
@@ -1074,6 +1075,152 @@ export class StreamSendFileCallback extends Message<StreamSendFileCallback> {
1074
1075
  }
1075
1076
  }
1076
1077
 
1078
+ /**
1079
+ * Sends bytes over a data stream.
1080
+ *
1081
+ * @generated from message livekit.proto.StreamSendBytesRequest
1082
+ */
1083
+ export class StreamSendBytesRequest extends Message<StreamSendBytesRequest> {
1084
+ /**
1085
+ * @generated from field: required uint64 local_participant_handle = 1;
1086
+ */
1087
+ localParticipantHandle?: bigint;
1088
+
1089
+ /**
1090
+ * @generated from field: required livekit.proto.StreamByteOptions options = 2;
1091
+ */
1092
+ options?: StreamByteOptions;
1093
+
1094
+ /**
1095
+ * Bytes to send.
1096
+ *
1097
+ * @generated from field: required bytes bytes = 3;
1098
+ */
1099
+ bytes?: Uint8Array;
1100
+
1101
+ constructor(data?: PartialMessage<StreamSendBytesRequest>) {
1102
+ super();
1103
+ proto2.util.initPartial(data, this);
1104
+ }
1105
+
1106
+ static readonly runtime: typeof proto2 = proto2;
1107
+ static readonly typeName = "livekit.proto.StreamSendBytesRequest";
1108
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
1109
+ { no: 1, name: "local_participant_handle", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
1110
+ { no: 2, name: "options", kind: "message", T: StreamByteOptions, req: true },
1111
+ { no: 3, name: "bytes", kind: "scalar", T: 12 /* ScalarType.BYTES */, req: true },
1112
+ ]);
1113
+
1114
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): StreamSendBytesRequest {
1115
+ return new StreamSendBytesRequest().fromBinary(bytes, options);
1116
+ }
1117
+
1118
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): StreamSendBytesRequest {
1119
+ return new StreamSendBytesRequest().fromJson(jsonValue, options);
1120
+ }
1121
+
1122
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): StreamSendBytesRequest {
1123
+ return new StreamSendBytesRequest().fromJsonString(jsonString, options);
1124
+ }
1125
+
1126
+ static equals(a: StreamSendBytesRequest | PlainMessage<StreamSendBytesRequest> | undefined, b: StreamSendBytesRequest | PlainMessage<StreamSendBytesRequest> | undefined): boolean {
1127
+ return proto2.util.equals(StreamSendBytesRequest, a, b);
1128
+ }
1129
+ }
1130
+
1131
+ /**
1132
+ * @generated from message livekit.proto.StreamSendBytesResponse
1133
+ */
1134
+ export class StreamSendBytesResponse extends Message<StreamSendBytesResponse> {
1135
+ /**
1136
+ * @generated from field: required uint64 async_id = 1;
1137
+ */
1138
+ asyncId?: bigint;
1139
+
1140
+ constructor(data?: PartialMessage<StreamSendBytesResponse>) {
1141
+ super();
1142
+ proto2.util.initPartial(data, this);
1143
+ }
1144
+
1145
+ static readonly runtime: typeof proto2 = proto2;
1146
+ static readonly typeName = "livekit.proto.StreamSendBytesResponse";
1147
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
1148
+ { no: 1, name: "async_id", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
1149
+ ]);
1150
+
1151
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): StreamSendBytesResponse {
1152
+ return new StreamSendBytesResponse().fromBinary(bytes, options);
1153
+ }
1154
+
1155
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): StreamSendBytesResponse {
1156
+ return new StreamSendBytesResponse().fromJson(jsonValue, options);
1157
+ }
1158
+
1159
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): StreamSendBytesResponse {
1160
+ return new StreamSendBytesResponse().fromJsonString(jsonString, options);
1161
+ }
1162
+
1163
+ static equals(a: StreamSendBytesResponse | PlainMessage<StreamSendBytesResponse> | undefined, b: StreamSendBytesResponse | PlainMessage<StreamSendBytesResponse> | undefined): boolean {
1164
+ return proto2.util.equals(StreamSendBytesResponse, a, b);
1165
+ }
1166
+ }
1167
+
1168
+ /**
1169
+ * @generated from message livekit.proto.StreamSendBytesCallback
1170
+ */
1171
+ export class StreamSendBytesCallback extends Message<StreamSendBytesCallback> {
1172
+ /**
1173
+ * @generated from field: required uint64 async_id = 1;
1174
+ */
1175
+ asyncId?: bigint;
1176
+
1177
+ /**
1178
+ * @generated from oneof livekit.proto.StreamSendBytesCallback.result
1179
+ */
1180
+ result: {
1181
+ /**
1182
+ * @generated from field: livekit.proto.ByteStreamInfo info = 2;
1183
+ */
1184
+ value: ByteStreamInfo;
1185
+ case: "info";
1186
+ } | {
1187
+ /**
1188
+ * @generated from field: livekit.proto.StreamError error = 3;
1189
+ */
1190
+ value: StreamError;
1191
+ case: "error";
1192
+ } | { case: undefined; value?: undefined } = { case: undefined };
1193
+
1194
+ constructor(data?: PartialMessage<StreamSendBytesCallback>) {
1195
+ super();
1196
+ proto2.util.initPartial(data, this);
1197
+ }
1198
+
1199
+ static readonly runtime: typeof proto2 = proto2;
1200
+ static readonly typeName = "livekit.proto.StreamSendBytesCallback";
1201
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
1202
+ { no: 1, name: "async_id", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
1203
+ { no: 2, name: "info", kind: "message", T: ByteStreamInfo, oneof: "result" },
1204
+ { no: 3, name: "error", kind: "message", T: StreamError, oneof: "result" },
1205
+ ]);
1206
+
1207
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): StreamSendBytesCallback {
1208
+ return new StreamSendBytesCallback().fromBinary(bytes, options);
1209
+ }
1210
+
1211
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): StreamSendBytesCallback {
1212
+ return new StreamSendBytesCallback().fromJson(jsonValue, options);
1213
+ }
1214
+
1215
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): StreamSendBytesCallback {
1216
+ return new StreamSendBytesCallback().fromJsonString(jsonString, options);
1217
+ }
1218
+
1219
+ static equals(a: StreamSendBytesCallback | PlainMessage<StreamSendBytesCallback> | undefined, b: StreamSendBytesCallback | PlainMessage<StreamSendBytesCallback> | undefined): boolean {
1220
+ return proto2.util.equals(StreamSendBytesCallback, a, b);
1221
+ }
1222
+ }
1223
+
1077
1224
  /**
1078
1225
  * Sends text over a data stream.
1079
1226
  *
@@ -2163,6 +2310,11 @@ export class TextStreamInfo extends Message<TextStreamInfo> {
2163
2310
  */
2164
2311
  generated?: boolean;
2165
2312
 
2313
+ /**
2314
+ * @generated from field: required livekit.proto.EncryptionType encryption_type = 12;
2315
+ */
2316
+ encryptionType?: EncryptionType;
2317
+
2166
2318
  constructor(data?: PartialMessage<TextStreamInfo>) {
2167
2319
  super();
2168
2320
  proto2.util.initPartial(data, this);
@@ -2182,6 +2334,7 @@ export class TextStreamInfo extends Message<TextStreamInfo> {
2182
2334
  { no: 9, name: "reply_to_stream_id", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true },
2183
2335
  { no: 10, name: "attached_stream_ids", kind: "scalar", T: 9 /* ScalarType.STRING */, repeated: true },
2184
2336
  { no: 11, name: "generated", kind: "scalar", T: 8 /* ScalarType.BOOL */, opt: true },
2337
+ { no: 12, name: "encryption_type", kind: "enum", T: proto2.getEnumType(EncryptionType), req: true },
2185
2338
  ]);
2186
2339
 
2187
2340
  static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): TextStreamInfo {
@@ -2280,6 +2433,11 @@ export class ByteStreamInfo extends Message<ByteStreamInfo> {
2280
2433
  */
2281
2434
  name?: string;
2282
2435
 
2436
+ /**
2437
+ * @generated from field: required livekit.proto.EncryptionType encryption_type = 8;
2438
+ */
2439
+ encryptionType?: EncryptionType;
2440
+
2283
2441
  constructor(data?: PartialMessage<ByteStreamInfo>) {
2284
2442
  super();
2285
2443
  proto2.util.initPartial(data, this);
@@ -2295,6 +2453,7 @@ export class ByteStreamInfo extends Message<ByteStreamInfo> {
2295
2453
  { no: 5, name: "total_length", kind: "scalar", T: 4 /* ScalarType.UINT64 */, opt: true },
2296
2454
  { no: 6, name: "attributes", kind: "map", K: 9 /* ScalarType.STRING */, V: {kind: "scalar", T: 9 /* ScalarType.STRING */} },
2297
2455
  { no: 7, name: "name", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2456
+ { no: 8, name: "encryption_type", kind: "enum", T: proto2.getEnumType(EncryptionType), req: true },
2298
2457
  ]);
2299
2458
 
2300
2459
  static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): ByteStreamInfo {
@@ -26,7 +26,7 @@ import { ApmProcessReverseStreamRequest, ApmProcessReverseStreamResponse, ApmPro
26
26
  import { E2eeRequest, E2eeResponse } from "./e2ee_pb.js";
27
27
  import { PerformRpcCallback, PerformRpcRequest, PerformRpcResponse, RegisterRpcMethodRequest, RegisterRpcMethodResponse, RpcMethodInvocationEvent, RpcMethodInvocationResponseRequest, RpcMethodInvocationResponseResponse, UnregisterRpcMethodRequest, UnregisterRpcMethodResponse } from "./rpc_pb.js";
28
28
  import { EnableRemoteTrackPublicationRequest, EnableRemoteTrackPublicationResponse, UpdateRemoteTrackPublicationDimensionRequest, UpdateRemoteTrackPublicationDimensionResponse } from "./track_publication_pb.js";
29
- import { ByteStreamOpenCallback, ByteStreamOpenRequest, ByteStreamOpenResponse, ByteStreamReaderEvent, ByteStreamReaderReadAllCallback, ByteStreamReaderReadAllRequest, ByteStreamReaderReadAllResponse, ByteStreamReaderReadIncrementalRequest, ByteStreamReaderReadIncrementalResponse, ByteStreamReaderWriteToFileCallback, ByteStreamReaderWriteToFileRequest, ByteStreamReaderWriteToFileResponse, ByteStreamWriterCloseCallback, ByteStreamWriterCloseRequest, ByteStreamWriterCloseResponse, ByteStreamWriterWriteCallback, ByteStreamWriterWriteRequest, ByteStreamWriterWriteResponse, StreamSendFileCallback, StreamSendFileRequest, StreamSendFileResponse, StreamSendTextCallback, StreamSendTextRequest, StreamSendTextResponse, TextStreamOpenCallback, TextStreamOpenRequest, TextStreamOpenResponse, TextStreamReaderEvent, TextStreamReaderReadAllCallback, TextStreamReaderReadAllRequest, TextStreamReaderReadAllResponse, TextStreamReaderReadIncrementalRequest, TextStreamReaderReadIncrementalResponse, TextStreamWriterCloseCallback, TextStreamWriterCloseRequest, TextStreamWriterCloseResponse, TextStreamWriterWriteCallback, TextStreamWriterWriteRequest, TextStreamWriterWriteResponse } from "./data_stream_pb.js";
29
+ import { ByteStreamOpenCallback, ByteStreamOpenRequest, ByteStreamOpenResponse, ByteStreamReaderEvent, ByteStreamReaderReadAllCallback, ByteStreamReaderReadAllRequest, ByteStreamReaderReadAllResponse, ByteStreamReaderReadIncrementalRequest, ByteStreamReaderReadIncrementalResponse, ByteStreamReaderWriteToFileCallback, ByteStreamReaderWriteToFileRequest, ByteStreamReaderWriteToFileResponse, ByteStreamWriterCloseCallback, ByteStreamWriterCloseRequest, ByteStreamWriterCloseResponse, ByteStreamWriterWriteCallback, ByteStreamWriterWriteRequest, ByteStreamWriterWriteResponse, StreamSendBytesCallback, StreamSendBytesRequest, StreamSendBytesResponse, StreamSendFileCallback, StreamSendFileRequest, StreamSendFileResponse, StreamSendTextCallback, StreamSendTextRequest, StreamSendTextResponse, TextStreamOpenCallback, TextStreamOpenRequest, TextStreamOpenResponse, TextStreamReaderEvent, TextStreamReaderReadAllCallback, TextStreamReaderReadAllRequest, TextStreamReaderReadAllResponse, TextStreamReaderReadIncrementalRequest, TextStreamReaderReadIncrementalResponse, TextStreamWriterCloseCallback, TextStreamWriterCloseRequest, TextStreamWriterCloseResponse, TextStreamWriterWriteCallback, TextStreamWriterWriteRequest, TextStreamWriterWriteResponse } from "./data_stream_pb.js";
30
30
 
31
31
  /**
32
32
  * @generated from enum livekit.proto.LogLevel
@@ -486,6 +486,12 @@ export class FfiRequest extends Message<FfiRequest> {
486
486
  */
487
487
  value: TextStreamWriterCloseRequest;
488
488
  case: "textStreamClose";
489
+ } | {
490
+ /**
491
+ * @generated from field: livekit.proto.StreamSendBytesRequest send_bytes = 67;
492
+ */
493
+ value: StreamSendBytesRequest;
494
+ case: "sendBytes";
489
495
  } | { case: undefined; value?: undefined } = { case: undefined };
490
496
 
491
497
  constructor(data?: PartialMessage<FfiRequest>) {
@@ -561,6 +567,7 @@ export class FfiRequest extends Message<FfiRequest> {
561
567
  { no: 64, name: "text_stream_open", kind: "message", T: TextStreamOpenRequest, oneof: "message" },
562
568
  { no: 65, name: "text_stream_write", kind: "message", T: TextStreamWriterWriteRequest, oneof: "message" },
563
569
  { no: 66, name: "text_stream_close", kind: "message", T: TextStreamWriterCloseRequest, oneof: "message" },
570
+ { no: 67, name: "send_bytes", kind: "message", T: StreamSendBytesRequest, oneof: "message" },
564
571
  ]);
565
572
 
566
573
  static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): FfiRequest {
@@ -993,6 +1000,12 @@ export class FfiResponse extends Message<FfiResponse> {
993
1000
  */
994
1001
  value: TextStreamWriterCloseResponse;
995
1002
  case: "textStreamClose";
1003
+ } | {
1004
+ /**
1005
+ * @generated from field: livekit.proto.StreamSendBytesResponse send_bytes = 66;
1006
+ */
1007
+ value: StreamSendBytesResponse;
1008
+ case: "sendBytes";
996
1009
  } | { case: undefined; value?: undefined } = { case: undefined };
997
1010
 
998
1011
  constructor(data?: PartialMessage<FfiResponse>) {
@@ -1067,6 +1080,7 @@ export class FfiResponse extends Message<FfiResponse> {
1067
1080
  { no: 63, name: "text_stream_open", kind: "message", T: TextStreamOpenResponse, oneof: "message" },
1068
1081
  { no: 64, name: "text_stream_write", kind: "message", T: TextStreamWriterWriteResponse, oneof: "message" },
1069
1082
  { no: 65, name: "text_stream_close", kind: "message", T: TextStreamWriterCloseResponse, oneof: "message" },
1083
+ { no: 66, name: "send_bytes", kind: "message", T: StreamSendBytesResponse, oneof: "message" },
1070
1084
  ]);
1071
1085
 
1072
1086
  static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): FfiResponse {
@@ -1335,6 +1349,12 @@ export class FfiEvent extends Message<FfiEvent> {
1335
1349
  */
1336
1350
  value: StreamSendTextCallback;
1337
1351
  case: "sendText";
1352
+ } | {
1353
+ /**
1354
+ * @generated from field: livekit.proto.StreamSendBytesCallback send_bytes = 41;
1355
+ */
1356
+ value: StreamSendBytesCallback;
1357
+ case: "sendBytes";
1338
1358
  } | { case: undefined; value?: undefined } = { case: undefined };
1339
1359
 
1340
1360
  constructor(data?: PartialMessage<FfiEvent>) {
@@ -1384,6 +1404,7 @@ export class FfiEvent extends Message<FfiEvent> {
1384
1404
  { no: 38, name: "text_stream_writer_write", kind: "message", T: TextStreamWriterWriteCallback, oneof: "message" },
1385
1405
  { no: 39, name: "text_stream_writer_close", kind: "message", T: TextStreamWriterCloseCallback, oneof: "message" },
1386
1406
  { no: 40, name: "send_text", kind: "message", T: StreamSendTextCallback, oneof: "message" },
1407
+ { no: 41, name: "send_bytes", kind: "message", T: StreamSendBytesCallback, oneof: "message" },
1387
1408
  ]);
1388
1409
 
1389
1410
  static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): FfiEvent {
@@ -2210,6 +2210,11 @@ export class TrackPublishOptions extends Message<TrackPublishOptions> {
2210
2210
  */
2211
2211
  stream?: string;
2212
2212
 
2213
+ /**
2214
+ * @generated from field: optional bool preconnect_buffer = 9;
2215
+ */
2216
+ preconnectBuffer?: boolean;
2217
+
2213
2218
  constructor(data?: PartialMessage<TrackPublishOptions>) {
2214
2219
  super();
2215
2220
  proto2.util.initPartial(data, this);
@@ -2226,6 +2231,7 @@ export class TrackPublishOptions extends Message<TrackPublishOptions> {
2226
2231
  { no: 6, name: "simulcast", kind: "scalar", T: 8 /* ScalarType.BOOL */, opt: true },
2227
2232
  { no: 7, name: "source", kind: "enum", T: proto2.getEnumType(TrackSource), opt: true },
2228
2233
  { no: 8, name: "stream", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true },
2234
+ { no: 9, name: "preconnect_buffer", kind: "scalar", T: 8 /* ScalarType.BOOL */, opt: true },
2229
2235
  ]);
2230
2236
 
2231
2237
  static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): TrackPublishOptions {
@@ -2365,7 +2371,8 @@ export class RoomOptions extends Message<RoomOptions> {
2365
2371
  dynacast?: boolean;
2366
2372
 
2367
2373
  /**
2368
- * @generated from field: optional livekit.proto.E2eeOptions e2ee = 4;
2374
+ * @generated from field: optional livekit.proto.E2eeOptions e2ee = 4 [deprecated = true];
2375
+ * @deprecated
2369
2376
  */
2370
2377
  e2ee?: E2eeOptions;
2371
2378
 
@@ -2381,6 +2388,11 @@ export class RoomOptions extends Message<RoomOptions> {
2381
2388
  */
2382
2389
  joinRetries?: number;
2383
2390
 
2391
+ /**
2392
+ * @generated from field: optional livekit.proto.E2eeOptions encryption = 7;
2393
+ */
2394
+ encryption?: E2eeOptions;
2395
+
2384
2396
  constructor(data?: PartialMessage<RoomOptions>) {
2385
2397
  super();
2386
2398
  proto2.util.initPartial(data, this);
@@ -2395,6 +2407,7 @@ export class RoomOptions extends Message<RoomOptions> {
2395
2407
  { no: 4, name: "e2ee", kind: "message", T: E2eeOptions, opt: true },
2396
2408
  { no: 5, name: "rtc_config", kind: "message", T: RtcConfig, opt: true },
2397
2409
  { no: 6, name: "join_retries", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
2410
+ { no: 7, name: "encryption", kind: "message", T: E2eeOptions, opt: true },
2398
2411
  ]);
2399
2412
 
2400
2413
  static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): RoomOptions {
@@ -2687,6 +2700,12 @@ export class RoomEvent extends Message<RoomEvent> {
2687
2700
  */
2688
2701
  value: ParticipantAttributesChanged;
2689
2702
  case: "participantAttributesChanged";
2703
+ } | {
2704
+ /**
2705
+ * @generated from field: livekit.proto.ParticipantEncryptionStatusChanged participant_encryption_status_changed = 39;
2706
+ */
2707
+ value: ParticipantEncryptionStatusChanged;
2708
+ case: "participantEncryptionStatusChanged";
2690
2709
  } | {
2691
2710
  /**
2692
2711
  * @generated from field: livekit.proto.ConnectionQualityChanged connection_quality_changed = 20;
@@ -2844,6 +2863,7 @@ export class RoomEvent extends Message<RoomEvent> {
2844
2863
  { no: 17, name: "participant_metadata_changed", kind: "message", T: ParticipantMetadataChanged, oneof: "message" },
2845
2864
  { no: 18, name: "participant_name_changed", kind: "message", T: ParticipantNameChanged, oneof: "message" },
2846
2865
  { no: 19, name: "participant_attributes_changed", kind: "message", T: ParticipantAttributesChanged, oneof: "message" },
2866
+ { no: 39, name: "participant_encryption_status_changed", kind: "message", T: ParticipantEncryptionStatusChanged, oneof: "message" },
2847
2867
  { no: 20, name: "connection_quality_changed", kind: "message", T: ConnectionQualityChanged, oneof: "message" },
2848
2868
  { no: 21, name: "connection_state_changed", kind: "message", T: ConnectionStateChanged, oneof: "message" },
2849
2869
  { no: 22, name: "disconnected", kind: "message", T: Disconnected, oneof: "message" },
@@ -3819,6 +3839,49 @@ export class ParticipantAttributesChanged extends Message<ParticipantAttributesC
3819
3839
  }
3820
3840
  }
3821
3841
 
3842
+ /**
3843
+ * @generated from message livekit.proto.ParticipantEncryptionStatusChanged
3844
+ */
3845
+ export class ParticipantEncryptionStatusChanged extends Message<ParticipantEncryptionStatusChanged> {
3846
+ /**
3847
+ * @generated from field: required string participant_identity = 1;
3848
+ */
3849
+ participantIdentity?: string;
3850
+
3851
+ /**
3852
+ * @generated from field: required bool is_encrypted = 2;
3853
+ */
3854
+ isEncrypted?: boolean;
3855
+
3856
+ constructor(data?: PartialMessage<ParticipantEncryptionStatusChanged>) {
3857
+ super();
3858
+ proto2.util.initPartial(data, this);
3859
+ }
3860
+
3861
+ static readonly runtime: typeof proto2 = proto2;
3862
+ static readonly typeName = "livekit.proto.ParticipantEncryptionStatusChanged";
3863
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
3864
+ { no: 1, name: "participant_identity", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
3865
+ { no: 2, name: "is_encrypted", kind: "scalar", T: 8 /* ScalarType.BOOL */, req: true },
3866
+ ]);
3867
+
3868
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): ParticipantEncryptionStatusChanged {
3869
+ return new ParticipantEncryptionStatusChanged().fromBinary(bytes, options);
3870
+ }
3871
+
3872
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): ParticipantEncryptionStatusChanged {
3873
+ return new ParticipantEncryptionStatusChanged().fromJson(jsonValue, options);
3874
+ }
3875
+
3876
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): ParticipantEncryptionStatusChanged {
3877
+ return new ParticipantEncryptionStatusChanged().fromJsonString(jsonString, options);
3878
+ }
3879
+
3880
+ static equals(a: ParticipantEncryptionStatusChanged | PlainMessage<ParticipantEncryptionStatusChanged> | undefined, b: ParticipantEncryptionStatusChanged | PlainMessage<ParticipantEncryptionStatusChanged> | undefined): boolean {
3881
+ return proto2.util.equals(ParticipantEncryptionStatusChanged, a, b);
3882
+ }
3883
+ }
3884
+
3822
3885
  /**
3823
3886
  * @generated from message livekit.proto.ParticipantNameChanged
3824
3887
  */