@livekit/rtc-node 0.0.7 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/build.rs +4 -0
  2. package/dist/audio_frame.d.ts +1 -1
  3. package/dist/audio_frame.d.ts.map +1 -1
  4. package/dist/audio_frame.js +10 -11
  5. package/dist/audio_frame.js.map +1 -1
  6. package/dist/audio_source.d.ts +3 -3
  7. package/dist/audio_source.d.ts.map +1 -1
  8. package/dist/audio_source.js +14 -15
  9. package/dist/audio_source.js.map +1 -1
  10. package/dist/audio_stream.d.ts +4 -4
  11. package/dist/audio_stream.d.ts.map +1 -1
  12. package/dist/audio_stream.js +17 -21
  13. package/dist/audio_stream.js.map +1 -1
  14. package/dist/e2ee.d.ts +1 -1
  15. package/dist/e2ee.d.ts.map +1 -1
  16. package/dist/e2ee.js +42 -45
  17. package/dist/e2ee.js.map +1 -1
  18. package/dist/ffi_client.d.ts +2 -2
  19. package/dist/ffi_client.d.ts.map +1 -1
  20. package/dist/ffi_client.js +17 -24
  21. package/dist/ffi_client.js.map +1 -1
  22. package/dist/index.d.ts +15 -15
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +18 -70
  25. package/dist/index.js.map +1 -1
  26. package/{src/native.js → dist/napi/native.cjs} +12 -0
  27. package/dist/napi/native.js +15 -0
  28. package/dist/participant.d.ts +24 -9
  29. package/dist/participant.d.ts.map +1 -1
  30. package/dist/participant.js +45 -45
  31. package/dist/participant.js.map +1 -1
  32. package/dist/proto/audio_frame_pb.js +148 -176
  33. package/dist/proto/audio_frame_pb.js.map +1 -1
  34. package/dist/proto/e2ee_pb.js +134 -162
  35. package/dist/proto/e2ee_pb.js.map +1 -1
  36. package/dist/proto/ffi_pb.js +115 -126
  37. package/dist/proto/ffi_pb.js.map +1 -1
  38. package/dist/proto/handle_pb.js +7 -11
  39. package/dist/proto/handle_pb.js.map +1 -1
  40. package/dist/proto/participant_pb.js +13 -18
  41. package/dist/proto/participant_pb.js.map +1 -1
  42. package/dist/proto/room_pb.js +388 -454
  43. package/dist/proto/room_pb.js.map +1 -1
  44. package/dist/proto/stats_pb.js +265 -303
  45. package/dist/proto/stats_pb.js.map +1 -1
  46. package/dist/proto/track_pb.js +87 -102
  47. package/dist/proto/track_pb.js.map +1 -1
  48. package/dist/proto/video_frame_pb.js +184 -215
  49. package/dist/proto/video_frame_pb.js.map +1 -1
  50. package/dist/room.d.ts +10 -9
  51. package/dist/room.d.ts.map +1 -1
  52. package/dist/room.js +74 -76
  53. package/dist/room.js.map +1 -1
  54. package/dist/track.d.ts +4 -4
  55. package/dist/track.d.ts.map +1 -1
  56. package/dist/track.js +15 -20
  57. package/dist/track.js.map +1 -1
  58. package/dist/track_publication.d.ts +4 -4
  59. package/dist/track_publication.d.ts.map +1 -1
  60. package/dist/track_publication.js +12 -15
  61. package/dist/track_publication.js.map +1 -1
  62. package/dist/video_frame.d.ts +1 -1
  63. package/dist/video_frame.d.ts.map +1 -1
  64. package/dist/video_frame.js +57 -71
  65. package/dist/video_frame.js.map +1 -1
  66. package/dist/video_source.d.ts +3 -3
  67. package/dist/video_source.d.ts.map +1 -1
  68. package/dist/video_source.js +12 -13
  69. package/dist/video_source.js.map +1 -1
  70. package/dist/video_stream.d.ts +4 -4
  71. package/dist/video_stream.d.ts.map +1 -1
  72. package/dist/video_stream.js +18 -22
  73. package/dist/video_stream.js.map +1 -1
  74. package/package.json +14 -14
  75. package/src/audio_frame.ts +6 -2
  76. package/src/audio_source.ts +8 -4
  77. package/src/audio_stream.ts +9 -5
  78. package/src/e2ee.ts +6 -2
  79. package/src/ffi_client.ts +6 -2
  80. package/src/index.ts +19 -15
  81. package/src/lib.rs +4 -0
  82. package/src/napi/native.cjs +281 -0
  83. package/src/napi/native.js +15 -0
  84. package/src/nodejs.rs +4 -0
  85. package/src/participant.ts +45 -22
  86. package/src/room.ts +56 -48
  87. package/src/track.ts +8 -4
  88. package/src/track_publication.ts +10 -6
  89. package/src/video_frame.ts +6 -2
  90. package/src/video_source.ts +7 -3
  91. package/src/video_stream.ts +9 -5
  92. package/dist/native.d.ts.map +0 -1
  93. package/dist/native.js +0 -297
  94. package/dist/native.js.map +0 -1
  95. /package/dist/{native.d.ts → napi/native.d.ts} +0 -0
  96. /package/src/{native.d.ts → napi/native.d.ts} +0 -0
@@ -1,14 +1,18 @@
1
- import { FfiClient, FfiRequest } from './ffi_client';
2
- import { FfiHandle } from './native';
3
- import { EncryptionType } from './proto/e2ee_pb';
4
- import { SetSubscribedRequest, SetSubscribedResponse } from './proto/room_pb';
1
+ // SPDX-FileCopyrightText: 2024 LiveKit, Inc.
2
+ //
3
+ // SPDX-License-Identifier: Apache-2.0
4
+
5
+ import { FfiClient, FfiRequest } from './ffi_client.js';
6
+ import { FfiHandle } from './napi/native.js';
7
+ import { EncryptionType } from './proto/e2ee_pb.js';
8
+ import { SetSubscribedRequest, SetSubscribedResponse } from './proto/room_pb.js';
5
9
  import {
6
10
  OwnedTrackPublication,
7
11
  TrackKind,
8
12
  TrackPublicationInfo,
9
13
  TrackSource,
10
- } from './proto/track_pb';
11
- import { Track } from './track';
14
+ } from './proto/track_pb.js';
15
+ import { Track } from './track.js';
12
16
 
13
17
  export abstract class TrackPublication {
14
18
  /** @internal */
@@ -1,4 +1,8 @@
1
- import { FfiClient, FfiHandle } from './ffi_client';
1
+ // SPDX-FileCopyrightText: 2024 LiveKit, Inc.
2
+ //
3
+ // SPDX-License-Identifier: Apache-2.0
4
+
5
+ import { FfiClient, FfiHandle } from './ffi_client.js';
2
6
  import {
3
7
  BiplanarYuvBufferInfo,
4
8
  OwnedVideoFrameBuffer,
@@ -9,7 +13,7 @@ import {
9
13
  VideoFrameBufferInfo,
10
14
  VideoFrameBufferType,
11
15
  VideoRotation,
12
- } from './proto/video_frame_pb';
16
+ } from './proto/video_frame_pb.js';
13
17
 
14
18
  export class VideoFrame {
15
19
  timestampUs: number;
@@ -1,4 +1,8 @@
1
- import { FfiClient, FfiHandle, FfiRequest } from './ffi_client';
1
+ // SPDX-FileCopyrightText: 2024 LiveKit, Inc.
2
+ //
3
+ // SPDX-License-Identifier: Apache-2.0
4
+
5
+ import { FfiClient, FfiHandle, FfiRequest } from './ffi_client.js';
2
6
  import {
3
7
  CaptureVideoFrameRequest,
4
8
  CaptureVideoFrameResponse,
@@ -6,8 +10,8 @@ import {
6
10
  NewVideoSourceResponse,
7
11
  VideoSourceInfo,
8
12
  VideoSourceType,
9
- } from './proto/video_frame_pb';
10
- import { VideoFrame } from './video_frame';
13
+ } from './proto/video_frame_pb.js';
14
+ import { VideoFrame } from './video_frame.js';
11
15
 
12
16
  export class VideoSource {
13
17
  /** @internal */
@@ -1,14 +1,18 @@
1
- import { FfiClient, FfiClientEvent, FfiEvent, FfiHandle, FfiRequest } from './ffi_client';
2
- import { Track } from './track';
1
+ // SPDX-FileCopyrightText: 2024 LiveKit, Inc.
2
+ //
3
+ // SPDX-License-Identifier: Apache-2.0
4
+
5
+ import { FfiClient, FfiClientEvent, FfiEvent, FfiHandle, FfiRequest } from './ffi_client.js';
6
+ import { Track } from './track.js';
3
7
  import EventEmitter from 'events';
4
8
  import TypedEmitter from 'typed-emitter';
5
- import { VideoFrame, VideoFrameBuffer } from './video_frame';
9
+ import { VideoFrame, VideoFrameBuffer } from './video_frame.js';
6
10
  import {
7
11
  NewVideoStreamRequest,
8
12
  NewVideoStreamResponse,
9
13
  VideoStreamInfo,
10
14
  VideoStreamType,
11
- } from './proto/video_frame_pb';
15
+ } from './proto/video_frame_pb.js';
12
16
 
13
17
  export type VideoStreamCallbacks = {
14
18
  frameReceived: (frame: VideoFrame) => void;
@@ -68,7 +72,7 @@ export class VideoStream extends (EventEmitter as new () => TypedEmitter<VideoSt
68
72
  FfiClient.instance.off(FfiClientEvent.FfiEvent, this.onEvent);
69
73
  break;
70
74
  }
71
- }
75
+ };
72
76
 
73
77
  close() {
74
78
  this.ffiHandle.dispose();
@@ -1 +0,0 @@
1
- {"version":3,"file":"native.d.ts","sourceRoot":"","sources":["../src/native.js"],"names":[],"mappings":""}
package/dist/native.js DELETED
@@ -1,297 +0,0 @@
1
- /* tslint:disable */
2
- /* eslint-disable */
3
- /* prettier-ignore */
4
- /* auto-generated by NAPI-RS */
5
- const { existsSync, readFileSync } = require('fs');
6
- const { join } = require('path');
7
- const { platform, arch } = process;
8
- let nativeBinding = null;
9
- let localFileExisted = false;
10
- let loadError = null;
11
- function isMusl() {
12
- // For Node 10
13
- if (!process.report || typeof process.report.getReport !== 'function') {
14
- try {
15
- const lddPath = require('child_process').execSync('which ldd').toString().trim();
16
- return readFileSync(lddPath, 'utf8').includes('musl');
17
- }
18
- catch (e) {
19
- return true;
20
- }
21
- }
22
- else {
23
- const { glibcVersionRuntime } = process.report.getReport().header;
24
- return !glibcVersionRuntime;
25
- }
26
- }
27
- switch (platform) {
28
- case 'android':
29
- switch (arch) {
30
- case 'arm64':
31
- localFileExisted = existsSync(join(__dirname, 'rtc-node.android-arm64.node'));
32
- try {
33
- if (localFileExisted) {
34
- nativeBinding = require('./rtc-node.android-arm64.node');
35
- }
36
- else {
37
- nativeBinding = require('@livekit/rtc-node-android-arm64');
38
- }
39
- }
40
- catch (e) {
41
- loadError = e;
42
- }
43
- break;
44
- case 'arm':
45
- localFileExisted = existsSync(join(__dirname, 'rtc-node.android-arm-eabi.node'));
46
- try {
47
- if (localFileExisted) {
48
- nativeBinding = require('./rtc-node.android-arm-eabi.node');
49
- }
50
- else {
51
- nativeBinding = require('@livekit/rtc-node-android-arm-eabi');
52
- }
53
- }
54
- catch (e) {
55
- loadError = e;
56
- }
57
- break;
58
- default:
59
- throw new Error(`Unsupported architecture on Android ${arch}`);
60
- }
61
- break;
62
- case 'win32':
63
- switch (arch) {
64
- case 'x64':
65
- localFileExisted = existsSync(join(__dirname, 'rtc-node.win32-x64-msvc.node'));
66
- try {
67
- if (localFileExisted) {
68
- nativeBinding = require('./rtc-node.win32-x64-msvc.node');
69
- }
70
- else {
71
- nativeBinding = require('@livekit/rtc-node-win32-x64-msvc');
72
- }
73
- }
74
- catch (e) {
75
- loadError = e;
76
- }
77
- break;
78
- case 'ia32':
79
- localFileExisted = existsSync(join(__dirname, 'rtc-node.win32-ia32-msvc.node'));
80
- try {
81
- if (localFileExisted) {
82
- nativeBinding = require('./rtc-node.win32-ia32-msvc.node');
83
- }
84
- else {
85
- nativeBinding = require('@livekit/rtc-node-win32-ia32-msvc');
86
- }
87
- }
88
- catch (e) {
89
- loadError = e;
90
- }
91
- break;
92
- case 'arm64':
93
- localFileExisted = existsSync(join(__dirname, 'rtc-node.win32-arm64-msvc.node'));
94
- try {
95
- if (localFileExisted) {
96
- nativeBinding = require('./rtc-node.win32-arm64-msvc.node');
97
- }
98
- else {
99
- nativeBinding = require('@livekit/rtc-node-win32-arm64-msvc');
100
- }
101
- }
102
- catch (e) {
103
- loadError = e;
104
- }
105
- break;
106
- default:
107
- throw new Error(`Unsupported architecture on Windows: ${arch}`);
108
- }
109
- break;
110
- case 'darwin':
111
- localFileExisted = existsSync(join(__dirname, 'rtc-node.darwin-universal.node'));
112
- try {
113
- if (localFileExisted) {
114
- nativeBinding = require('./rtc-node.darwin-universal.node');
115
- }
116
- else {
117
- nativeBinding = require('@livekit/rtc-node-darwin-universal');
118
- }
119
- break;
120
- }
121
- catch { }
122
- switch (arch) {
123
- case 'x64':
124
- localFileExisted = existsSync(join(__dirname, 'rtc-node.darwin-x64.node'));
125
- try {
126
- if (localFileExisted) {
127
- nativeBinding = require('./rtc-node.darwin-x64.node');
128
- }
129
- else {
130
- nativeBinding = require('@livekit/rtc-node-darwin-x64');
131
- }
132
- }
133
- catch (e) {
134
- loadError = e;
135
- }
136
- break;
137
- case 'arm64':
138
- localFileExisted = existsSync(join(__dirname, 'rtc-node.darwin-arm64.node'));
139
- try {
140
- if (localFileExisted) {
141
- nativeBinding = require('./rtc-node.darwin-arm64.node');
142
- }
143
- else {
144
- nativeBinding = require('@livekit/rtc-node-darwin-arm64');
145
- }
146
- }
147
- catch (e) {
148
- loadError = e;
149
- }
150
- break;
151
- default:
152
- throw new Error(`Unsupported architecture on macOS: ${arch}`);
153
- }
154
- break;
155
- case 'freebsd':
156
- if (arch !== 'x64') {
157
- throw new Error(`Unsupported architecture on FreeBSD: ${arch}`);
158
- }
159
- localFileExisted = existsSync(join(__dirname, 'rtc-node.freebsd-x64.node'));
160
- try {
161
- if (localFileExisted) {
162
- nativeBinding = require('./rtc-node.freebsd-x64.node');
163
- }
164
- else {
165
- nativeBinding = require('@livekit/rtc-node-freebsd-x64');
166
- }
167
- }
168
- catch (e) {
169
- loadError = e;
170
- }
171
- break;
172
- case 'linux':
173
- switch (arch) {
174
- case 'x64':
175
- if (isMusl()) {
176
- localFileExisted = existsSync(join(__dirname, 'rtc-node.linux-x64-musl.node'));
177
- try {
178
- if (localFileExisted) {
179
- nativeBinding = require('./rtc-node.linux-x64-musl.node');
180
- }
181
- else {
182
- nativeBinding = require('@livekit/rtc-node-linux-x64-musl');
183
- }
184
- }
185
- catch (e) {
186
- loadError = e;
187
- }
188
- }
189
- else {
190
- localFileExisted = existsSync(join(__dirname, 'rtc-node.linux-x64-gnu.node'));
191
- try {
192
- if (localFileExisted) {
193
- nativeBinding = require('./rtc-node.linux-x64-gnu.node');
194
- }
195
- else {
196
- nativeBinding = require('@livekit/rtc-node-linux-x64-gnu');
197
- }
198
- }
199
- catch (e) {
200
- loadError = e;
201
- }
202
- }
203
- break;
204
- case 'arm64':
205
- if (isMusl()) {
206
- localFileExisted = existsSync(join(__dirname, 'rtc-node.linux-arm64-musl.node'));
207
- try {
208
- if (localFileExisted) {
209
- nativeBinding = require('./rtc-node.linux-arm64-musl.node');
210
- }
211
- else {
212
- nativeBinding = require('@livekit/rtc-node-linux-arm64-musl');
213
- }
214
- }
215
- catch (e) {
216
- loadError = e;
217
- }
218
- }
219
- else {
220
- localFileExisted = existsSync(join(__dirname, 'rtc-node.linux-arm64-gnu.node'));
221
- try {
222
- if (localFileExisted) {
223
- nativeBinding = require('./rtc-node.linux-arm64-gnu.node');
224
- }
225
- else {
226
- nativeBinding = require('@livekit/rtc-node-linux-arm64-gnu');
227
- }
228
- }
229
- catch (e) {
230
- loadError = e;
231
- }
232
- }
233
- break;
234
- case 'arm':
235
- localFileExisted = existsSync(join(__dirname, 'rtc-node.linux-arm-gnueabihf.node'));
236
- try {
237
- if (localFileExisted) {
238
- nativeBinding = require('./rtc-node.linux-arm-gnueabihf.node');
239
- }
240
- else {
241
- nativeBinding = require('@livekit/rtc-node-linux-arm-gnueabihf');
242
- }
243
- }
244
- catch (e) {
245
- loadError = e;
246
- }
247
- break;
248
- case 'riscv64':
249
- if (isMusl()) {
250
- localFileExisted = existsSync(join(__dirname, 'rtc-node.linux-riscv64-musl.node'));
251
- try {
252
- if (localFileExisted) {
253
- nativeBinding = require('./rtc-node.linux-riscv64-musl.node');
254
- }
255
- else {
256
- nativeBinding = require('@livekit/rtc-node-linux-riscv64-musl');
257
- }
258
- }
259
- catch (e) {
260
- loadError = e;
261
- }
262
- }
263
- else {
264
- localFileExisted = existsSync(join(__dirname, 'rtc-node.linux-riscv64-gnu.node'));
265
- try {
266
- if (localFileExisted) {
267
- nativeBinding = require('./rtc-node.linux-riscv64-gnu.node');
268
- }
269
- else {
270
- nativeBinding = require('@livekit/rtc-node-linux-riscv64-gnu');
271
- }
272
- }
273
- catch (e) {
274
- loadError = e;
275
- }
276
- }
277
- break;
278
- default:
279
- throw new Error(`Unsupported architecture on Linux: ${arch}`);
280
- }
281
- break;
282
- default:
283
- throw new Error(`Unsupported OS: ${platform}, architecture: ${arch}`);
284
- }
285
- if (!nativeBinding) {
286
- if (loadError) {
287
- throw loadError;
288
- }
289
- throw new Error(`Failed to load native binding`);
290
- }
291
- const { livekitInitialize, livekitFfiRequest, livekitRetrievePtr, livekitCopyBuffer, FfiHandle } = nativeBinding;
292
- module.exports.livekitInitialize = livekitInitialize;
293
- module.exports.livekitFfiRequest = livekitFfiRequest;
294
- module.exports.livekitRetrievePtr = livekitRetrievePtr;
295
- module.exports.livekitCopyBuffer = livekitCopyBuffer;
296
- module.exports.FfiHandle = FfiHandle;
297
- //# sourceMappingURL=native.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"native.js","sourceRoot":"","sources":["../src/native.js"],"names":[],"mappings":"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"}
File without changes
File without changes