@myzonerocks/gosslens 0.11.1 → 0.12.0-alpha.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -86,6 +86,31 @@ session.submitFrameRgbaCopy(rgba, width * 4, width, height);
86
86
  engine.renderFrame(session);
87
87
  ```
88
88
 
89
+ ## Zero-copy frames
90
+
91
+ The copy submit above reads the video back through a 2D canvas and copies it into wasm
92
+ memory every frame. A page that owns its camera hands frames over without either: upload the
93
+ video element into a texture created in the canvas's own WebGL2 context (`engine.gl`), name it
94
+ once through `engine.adoptTexture(texture)`, and submit that name as the frame's one plane:
95
+
96
+ ```typescript
97
+ const gl = engine.gl!;
98
+ const texture = gl.createTexture()!;
99
+ const name = engine.adoptTexture(texture);
100
+ // per camera frame
101
+ gl.bindTexture(gl.TEXTURE_2D, texture);
102
+ gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, video);
103
+ session.submitFrameTexture(name, video.videoWidth, video.videoHeight, 0, mirrored);
104
+ engine.renderFrame(session);
105
+ ```
106
+
107
+ The renderer wraps the texture in place, so keep it alive until the next submitted frame has
108
+ rendered; two textures taken in turn are enough. `engine.releaseTexture(name)` forgets the
109
+ name; the page deletes the texture itself. A second source composited beside the camera (a
110
+ dual stage's front card, a duet) rides the same road through
111
+ `session.submitSourceFrameTexture(name, textureName, width, height)` after `defineSource`. The trackers (`GossFaceTracker` and the rest) are
112
+ exported from the package entry, so a worker imports them the way a page imports the engine.
113
+
89
114
  ## Camera controls
90
115
 
91
116
  The engine never touches the camera. It holds declarative intent you set,
@@ -154,8 +179,14 @@ script node last wrote.
154
179
 
155
180
  A lens's `ml.infer`, `audio.infer`, `temporal.fuse`, `splat.cloud`, and
156
181
  `diffusion` nodes run real inference in the page through the engine's
157
- synchronous web rail. Stage each model file under the name the manifest uses
158
- before activating, then feed frames with `trackFrame` and read results back:
182
+ synchronous web rail. Stage each file under the name the manifest uses
183
+ before activating - `provideLensAsset` covers every bundle asset, not just the
184
+ nets: images, LUTs, sprites, face textures, glTF models and shader binaries (as
185
+ `shaders/<stem>.<profile>.bin`), so a lens fetched over the network runs exactly
186
+ as an unpacked directory does. Then feed frames with `trackFrame` and read
187
+ results back (`spriteTransform(nodeId)` reads where a placed sprite, label or
188
+ video node currently draws - its rect and its turn in degrees, after the authored
189
+ angle, any bound parameter and any gesture):
159
190
 
160
191
  ```typescript
161
192
  session.provideLensAsset("net.onnx", modelBytes);
@@ -384,7 +415,9 @@ const ribbon = session.brushVertices();
384
415
 
385
416
  `setARBrushStyle`/`beginARStroke`/`addARStrokePoint(x, y, z)`/`endARStroke` are the
386
417
  world-anchored twin: points are pushed in the world frame world tracking reports,
387
- so a stroke stays fixed in the scene.
418
+ so a stroke stays fixed in the scene. `undoARStroke`/`redoARStroke`/`clearARStrokes`
419
+ are its stacks - the same undo/redo pair the screen brush has, so one brush rail
420
+ drives both; a fresh stroke drops the redo future, as in any editor.
388
421
 
389
422
  ## Capture and recording
390
423
 
@@ -455,8 +488,10 @@ to your track's rate and sums it in, so there is nothing to hand-mix (pass `null
455
488
  for the mic to send the lens sound over silence). `pullAudio` still pulls the lens
456
489
  sound alone for local WebAudio playback with no call in progress; `GossAudioOutput`
457
490
  wraps that playback (an `AudioWorklet` it owns, `start()` from a gesture, `pump()`
458
- each frame beside `tickLens`). `GossMicInput` captures the microphone into
459
- `submitAudio` so level and beat triggers fire in the browser, and
491
+ each frame beside `tickLens`). `GossMicInput` captures the microphone, or the stream the page hands `start`, into
492
+ `submitAudio` so level and beat triggers fire in the browser at whatever rate
493
+ the browser chose - the engine resamples to its own fixed ring rate, so an
494
+ `audio.infer` model reads the same window here as on a phone - and
460
495
  `GossVideoTexture` plays an MP4 through the browser's decoder into a named
461
496
  source a lens composites.
462
497
 
@@ -197,6 +197,10 @@ interface EngineModule {
197
197
  getValue(ptr: number, type: string): number;
198
198
  setValue(ptr: number, value: number, type: string): void;
199
199
  stringToNewUTF8(value: string): number;
200
+ GL: {
201
+ textures: Array<WebGLTexture | null>;
202
+ getNewId(table: unknown[]): number;
203
+ };
200
204
  }
201
205
  export declare function pickEngineUrl(webgpuUrl: string | URL, webgl2Url: string | URL): Promise<string | URL>;
202
206
  export interface GossWorldState {
@@ -243,13 +247,15 @@ export declare class GossEngine {
243
247
  readonly handle: number;
244
248
  private captureInFlight;
245
249
  private canvas;
246
- private gl;
250
+ gl: WebGL2RenderingContext | null;
247
251
  private selectorPtr;
248
252
  private selectorCapacity;
249
253
  private constructor();
250
254
  static create(gosslens: Gosslens, config?: GossEngineConfig): GossEngine;
251
255
  get module(): EngineModule;
252
256
  initRenderer(canvas: HTMLCanvasElement): Promise<void>;
257
+ adoptTexture(texture: WebGLTexture): number;
258
+ releaseTexture(name: number): void;
253
259
  resize(width: number, height: number): void;
254
260
  renderFrame(session: GossSession | null): number;
255
261
  compilePrompt(prompt: string): string;
@@ -271,6 +277,7 @@ export declare class GossEngine {
271
277
  addMusicReference(trackId: number, samples: Float32Array, frameCount: number, sampleRate: number, channels: number): boolean;
272
278
  clearMusicReferences(): void;
273
279
  identifyMusic(samples: Float32Array, frameCount: number, sampleRate: number, channels: number, minVotes?: number): MusicMatch | null;
280
+ beatMap(samples: Float32Array, frameCount: number, sampleRate: number, channels: number): number[];
274
281
  releaseLiveTexture(nativeHandle: bigint): boolean;
275
282
  private capturePixels;
276
283
  get isCaptureInFlight(): boolean;
@@ -335,6 +342,7 @@ export declare class GossSession {
335
342
  private lipstickTextureLoaded;
336
343
  private blushTextureLoaded;
337
344
  private frameDescPtr;
345
+ private framePlanesPtr;
338
346
  private framePixelsPtr;
339
347
  private framePixelsCapacity;
340
348
  private landmarksPtr;
@@ -378,6 +386,7 @@ export declare class GossSession {
378
386
  defineSource(name: string): void;
379
387
  removeSource(name: string): void;
380
388
  submitSourceFrameRgba(name: string, rgba: Uint8Array, width: number, height: number, stride: number, pixelFormat?: GossPixelFormat): void;
389
+ submitSourceFrameTexture(name: string, textureName: number, width: number, height: number): number;
381
390
  setLayout(arrangement: number): void;
382
391
  setPoseUpperBody(enabled: boolean): void;
383
392
  clearLayout(): void;
@@ -410,6 +419,14 @@ export declare class GossSession {
410
419
  addARStrokePoint(x: number, y: number, z: number): void;
411
420
  endARStroke(): void;
412
421
  undoARStroke(): void;
422
+ redoARStroke(): void;
423
+ spriteTransform(nodeId: string): {
424
+ x: number;
425
+ y: number;
426
+ w: number;
427
+ h: number;
428
+ rotation: number;
429
+ } | null;
413
430
  clearARStrokes(): void;
414
431
  /** Feeds one screen touch event so the engine recognizes the gestures a lens
415
432
  * reacts to. phase is 0 began, 1 moved, 2 ended, 3 cancelled; pointerId names
@@ -422,6 +439,9 @@ export declare class GossSession {
422
439
  style: number;
423
440
  intensity: number;
424
441
  } | null;
442
+ /** The photosensitivity risk (0..1) the flash detector last reported for the frames this
443
+ * session was fed, the same value a lens reads as safety.flash_risk. */
444
+ flashRisk(): number;
425
445
  grab(x: number, y: number, z: number): void;
426
446
  release(): void;
427
447
  addCollider(x: number, y: number, z: number): void;
@@ -498,7 +518,16 @@ export declare class GossSession {
498
518
  loadMakeupTextures(baseUrl: string | URL): Promise<void>;
499
519
  private ensureFramePixels;
500
520
  submitFrameRgbaCopy(rgba: Uint8ClampedArray | Uint8Array, stride: number, width: number, height: number, pixelFormat?: GossPixelFormat, rotationDegrees?: number, mirrored?: boolean, timestampUs?: number): void;
521
+ submitFrameTexture(name: number, width: number, height: number, rotationDegrees?: number, mirrored?: boolean, timestampUs?: number): number;
501
522
  submitAvatarSourceRgba(rgba: Uint8ClampedArray | Uint8Array, width: number, height: number): void;
523
+ chainReport(): {
524
+ ready: number;
525
+ total: number;
526
+ beauty: boolean;
527
+ };
528
+ readReconstruction(): Float32Array;
529
+ writeReconstruction(gaussians: Float32Array): void;
530
+ submitCameraPose(worldFromCamera: ArrayLike<number>, projection: ArrayLike<number>, timestampUs: number): void;
502
531
  submitWorld(state: GossWorldState, planes?: GossWorldPlane[], anchors?: GossWorldAnchorInput[], light?: GossWorldLight): void;
503
532
  private ensureWorldScratch;
504
533
  reportFrame(frameTimeUs: number, thermal?: GossThermal): GossDegradeLevel;
@@ -554,4 +583,6 @@ export type { GossXRFrameLike } from "./world.js";
554
583
  export { GossAudioOutput } from "./audio-output.js";
555
584
  export { GossMicInput } from "./mic-input.js";
556
585
  export { GossVideoTexture } from "./video-texture.js";
586
+ export { GossFaceTracker, GossHandTracker, GossPoseTracker, GossSegmenter, GOSS_FACE_BLENDSHAPE_COUNT, GOSS_MAX_HANDS } from "./tracking.js";
587
+ export type { GossFaceResult, GossHand, GossHandResult, GossPoseResult } from "./tracking.js";
557
588
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/dist/src/index.js CHANGED
@@ -160,7 +160,9 @@ export class Gosslens {
160
160
  /// build shares the full one's filename and abi version, so check the rail
161
161
  /// you need here before feeding real bytes to an enable call.
162
162
  capabilities() {
163
- return this.mod.ccall("goss_capabilities", "number", [], []);
163
+ // A 64-bit mask crosses as a BigInt on a build that passes wasm i64s through; the bits in
164
+ // use fit a number, and a number is what every caller masks against.
165
+ return Number(this.mod.ccall("goss_capabilities", "number", [], []));
164
166
  }
165
167
  /// Loads gosslens_web.js and checks its ABI major version. A
166
168
  /// dynamic import, not static: bun's bundler would otherwise inline
@@ -226,6 +228,8 @@ export class GossEngine {
226
228
  /// canvas to a 'webgpu' context instead, and a canvas can only ever
227
229
  /// bind one context type for its lifetime. capturePixels() branches
228
230
  /// on this: readPixels when set, goss_engine_capture_frame otherwise.
231
+ /// The canvas's own WebGL2 context once the renderer is up: the context a page-made
232
+ /// texture for the zero-copy frame road must be created in. Null on the WebGPU build.
229
233
  gl = null;
230
234
  /// bgfx's HTML5 backend keeps referencing the canvas selector string
231
235
  /// for the renderer's life, so the engine owns it and frees it in
@@ -300,6 +304,22 @@ export class GossEngine {
300
304
  this.canvas = canvas;
301
305
  this.gl = canvas.getContext("webgpu") ? null : canvas.getContext("webgl2");
302
306
  }
307
+ /// Registers a texture the page created in this canvas's own WebGL2 context
308
+ /// in emscripten's GL table, and returns the name the engine knows it by:
309
+ /// the plane handle submitFrameTexture takes. The page keeps the texture
310
+ /// alive until the next submitted frame has rendered.
311
+ adoptTexture(texture) {
312
+ const table = this.mod.GL;
313
+ const id = table.getNewId(table.textures);
314
+ table.textures[id] = texture;
315
+ return id;
316
+ }
317
+ /// Forgets a name adoptTexture handed out. The page deletes the texture itself.
318
+ releaseTexture(name) {
319
+ const table = this.mod.GL;
320
+ if (table.textures[name] !== undefined)
321
+ table.textures[name] = null;
322
+ }
303
323
  resize(width, height) {
304
324
  if (!this.canvas)
305
325
  throw new Error("initRenderer first");
@@ -532,6 +552,31 @@ export class GossEngine {
532
552
  return null;
533
553
  return { trackId, votes };
534
554
  }
555
+ /// The times, in seconds from the buffer's start, of every beat in a piece of
556
+ /// audio, from the same onset detector a lens's beat trigger rides. Samples are
557
+ /// interleaved f32, and a montage cut to these meets its sound on the beat.
558
+ beatMap(samples, frameCount, sampleRate, channels) {
559
+ const bytes = samples.length * 4;
560
+ const ptr = this.mod.ccall("goss_alloc", "number", ["number"], [bytes || 4]);
561
+ const countPtr = this.mod.ccall("goss_alloc", "number", ["number"], [4]);
562
+ this.mod.HEAPF32.set(samples, ptr >> 2);
563
+ const sized = this.mod.ccall("goss_engine_beat_map", "number", ["number", "number", "number", "number", "number", "number", "number", "number"], [this.handle, ptr, frameCount, sampleRate, channels, 0, 0, countPtr]);
564
+ const count = sized === 0 ? new DataView(this.mod.HEAPU8.buffer, countPtr, 4).getUint32(0, true) : 0;
565
+ const out = [];
566
+ if (count > 0) {
567
+ const timesPtr = this.mod.ccall("goss_alloc", "number", ["number"], [count * 8]);
568
+ const status = this.mod.ccall("goss_engine_beat_map", "number", ["number", "number", "number", "number", "number", "number", "number", "number"], [this.handle, ptr, frameCount, sampleRate, channels, timesPtr, count, countPtr]);
569
+ if (status === 0) {
570
+ const view = new DataView(this.mod.HEAPU8.buffer, timesPtr, count * 8);
571
+ for (let i = 0; i < count; i += 1)
572
+ out.push(Number(view.getBigInt64(i * 8, true)) / 1_000_000);
573
+ }
574
+ this.mod.ccall("goss_free", null, ["number", "number"], [timesPtr, count * 8]);
575
+ }
576
+ this.mod.ccall("goss_free", null, ["number", "number"], [ptr, bytes || 4]);
577
+ this.mod.ccall("goss_free", null, ["number", "number"], [countPtr, 4]);
578
+ return out;
579
+ }
535
580
  /// Releases the persistent wrap the engine keeps per external live
536
581
  /// texture handle - the pair of the native SDKs' renderToLiveTexture,
537
582
  /// for a host retiring a publish surface before the engine goes away.
@@ -775,6 +820,7 @@ export class GossSession {
775
820
  /// tick - the frame descriptor is a fixed 32 bytes, the pixel buffer
776
821
  /// tracks the video's current resolution.
777
822
  frameDescPtr;
823
+ framePlanesPtr = 0;
778
824
  framePixelsPtr = 0;
779
825
  framePixelsCapacity = 0;
780
826
  /// Fixed capacity: GOSS_FACE_LANDMARK_COUNT never changes.
@@ -1142,6 +1188,31 @@ export class GossSession {
1142
1188
  this.mod.setValue(this.frameDescPtr + 28, 0, "i32");
1143
1189
  this.withName(name, (ptr, len) => this.mod.ccall("goss_session_submit_source_frame_rgba_copy", "number", ["number", "number", "number", "number", "number", "number"], [this.handle, ptr, len, this.frameDescPtr, rgbaPtr, stride]));
1144
1190
  }
1191
+ /// Zero-copy: hands a named source one RGBA frame the page already uploaded
1192
+ /// to a texture adoptTexture named, the way submitFrameTexture hands the
1193
+ /// camera's. No readback and no wasm copy; a second lens composites at no
1194
+ /// per-frame cost. The status comes back so a caller can count a refusal.
1195
+ submitSourceFrameTexture(name, textureName, width, height) {
1196
+ this.mod.setValue(this.frameDescPtr, width, "i32");
1197
+ this.mod.setValue(this.frameDescPtr + 4, height, "i32");
1198
+ this.mod.setValue(this.frameDescPtr + 8, 4 /* GossPixelFormat.Rgba8 */, "i32");
1199
+ this.mod.setValue(this.frameDescPtr + 12, 0, "i32");
1200
+ this.mod.setValue(this.frameDescPtr + 16, 1, "i32");
1201
+ this.mod.setValue(this.frameDescPtr + 20, 0, "i32");
1202
+ this.mod.setValue(this.frameDescPtr + 24, 0, "i32");
1203
+ this.mod.setValue(this.frameDescPtr + 28, 0, "i32");
1204
+ if (this.framePlanesPtr === 0)
1205
+ this.framePlanesPtr = this.mod.ccall("goss_alloc", "number", ["number"], [32]);
1206
+ this.mod.setValue(this.framePlanesPtr, 1, "i32");
1207
+ this.mod.setValue(this.framePlanesPtr + 4, 0, "i32");
1208
+ this.mod.setValue(this.framePlanesPtr + 8, textureName, "i32");
1209
+ this.mod.setValue(this.framePlanesPtr + 12, 0, "i32");
1210
+ let status = 0;
1211
+ this.withName(name, (ptr, len) => {
1212
+ status = this.mod.ccall("goss_session_submit_source_frame", "number", ["number", "number", "number", "number", "number"], [this.handle, ptr, len, this.frameDescPtr, this.framePlanesPtr]);
1213
+ });
1214
+ return status;
1215
+ }
1145
1216
  /// Arranges the camera and named sources: 0 custom, 1 side-by-side, 2 top-bottom, 3 pip, 4 grid.
1146
1217
  setLayout(arrangement) {
1147
1218
  this.mod.ccall("goss_session_set_layout", "number", ["number", "number"], [this.handle, arrangement]);
@@ -1318,6 +1389,26 @@ export class GossSession {
1318
1389
  undoARStroke() {
1319
1390
  this.mod.ccall("goss_session_ar_brush_undo", "number", ["number"], [this.handle]);
1320
1391
  }
1392
+ redoARStroke() {
1393
+ this.mod.ccall("goss_session_ar_brush_redo", "number", ["number"], [this.handle]);
1394
+ }
1395
+ /// Where a placed sprite.2d, text.2d or video.texture node currently draws: its rect in
1396
+ /// normalized coordinates and its turn in degrees clockwise - the authored angle, plus any
1397
+ /// bound parameter, plus any gesture. Null for an unknown node.
1398
+ spriteTransform(nodeId) {
1399
+ const id = new TextEncoder().encode(nodeId);
1400
+ // One scratch block holds the name then the five floats, aligned, so this needs no second
1401
+ // allocation and no second buffer to keep in step with it.
1402
+ const floatsAt = (id.length + 3) & ~3;
1403
+ const base = this.scratch(floatsAt + 5 * 4);
1404
+ this.mod.HEAPU8.set(id, base);
1405
+ const out = base + floatsAt;
1406
+ const status = this.mod.ccall("goss_session_sprite_transform", "number", ["number", "number", "number", "number", "number", "number", "number", "number"], [this.handle, base, id.length, out, out + 4, out + 8, out + 12, out + 16]);
1407
+ if (status !== 0)
1408
+ return null;
1409
+ const f = this.mod.HEAPF32;
1410
+ return { x: f[out >> 2], y: f[(out + 4) >> 2], w: f[(out + 8) >> 2], h: f[(out + 12) >> 2], rotation: f[(out + 16) >> 2] };
1411
+ }
1321
1412
  clearARStrokes() {
1322
1413
  this.mod.ccall("goss_session_ar_brush_clear", "number", ["number"], [this.handle]);
1323
1414
  }
@@ -1339,6 +1430,15 @@ export class GossSession {
1339
1430
  this.mod.ccall("goss_free", null, ["number", "number"], [intensityPtr, 4]);
1340
1431
  return result;
1341
1432
  }
1433
+ /** The photosensitivity risk (0..1) the flash detector last reported for the frames this
1434
+ * session was fed, the same value a lens reads as safety.flash_risk. */
1435
+ flashRisk() {
1436
+ const outPtr = this.mod.ccall("goss_alloc", "number", ["number"], [4]);
1437
+ const status = this.mod.ccall("goss_session_flash_risk", "number", ["number", "number"], [this.handle, outPtr]);
1438
+ const value = status === 0 ? this.mod.getValue(outPtr, "float") : 0;
1439
+ this.mod.ccall("goss_free", null, ["number", "number"], [outPtr, 4]);
1440
+ return value;
1441
+ }
1342
1442
  grab(x, y, z) {
1343
1443
  this.mod.ccall("goss_session_grab", "number", ["number", "number", "number", "number"], [this.handle, x, y, z]);
1344
1444
  }
@@ -2186,6 +2286,32 @@ export class GossSession {
2186
2286
  this.mod.setValue(this.frameDescPtr + 28, Math.floor(stampUs / 4294967296), "i32");
2187
2287
  this.mod.ccall("goss_session_submit_frame_rgba_copy", "number", ["number", "number", "number", "number"], [this.handle, this.frameDescPtr, this.framePixelsPtr, stride]);
2188
2288
  }
2289
+ /// Zero-copy: hands over one RGBA frame the page already uploaded to a
2290
+ /// texture adoptTexture named, as goss_session_submit_frame takes it. No
2291
+ /// readback, no wasm copy; the renderer wraps the texture in place. The
2292
+ /// status comes back so a caller can count a refused frame.
2293
+ submitFrameTexture(name, width, height, rotationDegrees, mirrored = false, timestampUs) {
2294
+ this.frameWidth = width;
2295
+ this.frameHeight = height;
2296
+ const rotationQuarters = ((rotationDegrees ?? (this.videoFlipped ? 180 : 0)) / 90) & 3;
2297
+ const flags = (mirrored ? FRAME_FLAG_MIRROR : 0) | (rotationQuarters << FRAME_ROTATION_SHIFT);
2298
+ this.mod.setValue(this.frameDescPtr, width, "i32");
2299
+ this.mod.setValue(this.frameDescPtr + 4, height, "i32");
2300
+ this.mod.setValue(this.frameDescPtr + 8, 4 /* GossPixelFormat.Rgba8 */, "i32");
2301
+ this.mod.setValue(this.frameDescPtr + 12, 0, "i32");
2302
+ this.mod.setValue(this.frameDescPtr + 16, 0, "i32");
2303
+ this.mod.setValue(this.frameDescPtr + 20, flags, "i32");
2304
+ const stampUs = timestampUs ?? Math.round(performance.now() * 1000);
2305
+ this.mod.setValue(this.frameDescPtr + 24, stampUs >>> 0, "i32");
2306
+ this.mod.setValue(this.frameDescPtr + 28, Math.floor(stampUs / 4294967296), "i32");
2307
+ if (this.framePlanesPtr === 0)
2308
+ this.framePlanesPtr = this.mod.ccall("goss_alloc", "number", ["number"], [32]);
2309
+ this.mod.setValue(this.framePlanesPtr, 1, "i32");
2310
+ this.mod.setValue(this.framePlanesPtr + 4, 0, "i32");
2311
+ this.mod.setValue(this.framePlanesPtr + 8, name, "i32");
2312
+ this.mod.setValue(this.framePlanesPtr + 12, 0, "i32");
2313
+ return this.mod.ccall("goss_session_submit_frame", "number", ["number", "number", "number"], [this.handle, this.frameDescPtr, this.framePlanesPtr]);
2314
+ }
2189
2315
  /// The web selfie path: runs each selfie-source splat.cloud once over one
2190
2316
  /// RGBA8 still (row major), so a photoreal avatar is generated from one photo
2191
2317
  /// and then held off the live camera. Reuses the per-session frame staging.
@@ -2195,6 +2321,63 @@ export class GossSession {
2195
2321
  this.mod.HEAPU8.set(rgba.subarray(0, byteLength), this.framePixelsPtr);
2196
2322
  this.mod.ccall("goss_session_submit_avatar_source_rgba", "number", ["number", "number", "number"], [this.handle, this.framePixelsPtr, width, height]);
2197
2323
  }
2324
+ /// What the last drawn frame did with the active lens: stages ready to draw,
2325
+ /// stages it has, and whether the beauty bridge ran. Zero ready over a non-zero
2326
+ /// total is a lens the engine activated and is drawing nothing of.
2327
+ chainReport() {
2328
+ const ptr = this.mod.ccall("goss_alloc", "number", ["number"], [12]);
2329
+ const status = this.mod.ccall("goss_session_chain_report", "number", ["number", "number", "number", "number"], [this.handle, ptr, ptr + 4, ptr + 8]);
2330
+ const view = new DataView(this.mod.HEAPU8.buffer, ptr, 12);
2331
+ const out = status === 0
2332
+ ? { ready: view.getUint32(0, true), total: view.getUint32(4, true), beauty: view.getUint32(8, true) !== 0 }
2333
+ : { ready: 0, total: 0, beauty: false };
2334
+ this.mod.ccall("goss_free", null, ["number", "number"], [ptr, 12]);
2335
+ return out;
2336
+ }
2337
+ /// The scan's reconstruction as gaussians, fourteen numbers each: xyz, scale,
2338
+ /// a rotation quaternion, opacity and rgb. This is what a client writes into a
2339
+ /// moment file.
2340
+ readReconstruction() {
2341
+ const countPtr = this.mod.ccall("goss_alloc", "number", ["number"], [4]);
2342
+ const sized = this.mod.ccall("goss_session_read_reconstruction", "number", ["number", "number", "number", "number"], [this.handle, 0, 0, countPtr]);
2343
+ const count = sized === 0 ? new DataView(this.mod.HEAPU8.buffer, countPtr, 4).getUint32(0, true) : 0;
2344
+ let out = new Float32Array(0);
2345
+ if (count > 0) {
2346
+ const floats = count * 14;
2347
+ const ptr = this.mod.ccall("goss_alloc", "number", ["number"], [floats * 4]);
2348
+ const status = this.mod.ccall("goss_session_read_reconstruction", "number", ["number", "number", "number", "number"], [this.handle, ptr, count, countPtr]);
2349
+ if (status === 0)
2350
+ out = new Float32Array(this.mod.HEAPF32.subarray(ptr >> 2, (ptr >> 2) + floats));
2351
+ this.mod.ccall("goss_free", null, ["number", "number"], [ptr, floats * 4]);
2352
+ }
2353
+ this.mod.ccall("goss_free", null, ["number", "number"], [countPtr, 4]);
2354
+ return out;
2355
+ }
2356
+ /// Puts a reconstruction back, replacing whatever the scan held, so a moment
2357
+ /// captured on one client opens on another.
2358
+ writeReconstruction(gaussians) {
2359
+ if (gaussians.length === 0) {
2360
+ this.mod.ccall("goss_session_write_reconstruction", "number", ["number", "number", "number"], [this.handle, 0, 0]);
2361
+ return;
2362
+ }
2363
+ const bytes = gaussians.length * 4;
2364
+ const ptr = this.mod.ccall("goss_alloc", "number", ["number"], [bytes]);
2365
+ this.mod.HEAPF32.set(gaussians, ptr >> 2);
2366
+ this.mod.ccall("goss_session_write_reconstruction", "number", ["number", "number", "number"], [this.handle, ptr, gaussians.length / 14]);
2367
+ this.mod.ccall("goss_free", null, ["number", "number"], [ptr, bytes]);
2368
+ }
2369
+ /// Submits a bare camera pose and projection, for a host driving a scan with
2370
+ /// no platform world session behind it: a selfie scan on the front camera,
2371
+ /// where the depth comes from a lens's own net rather than a sensor. Both
2372
+ /// matrices are column-major, sixteen numbers.
2373
+ submitCameraPose(worldFromCamera, projection, timestampUs) {
2374
+ if (worldFromCamera.length !== 16 || projection.length !== 16)
2375
+ return;
2376
+ this.submitWorld({ trackingState: 2, worldFromCamera, projection, timestampUs }, [], [], {
2377
+ ambientIntensity: 1000,
2378
+ colorTemperatureKelvin: 6500,
2379
+ });
2380
+ }
2198
2381
  /// Feeds the platform's world understanding into the session: camera
2199
2382
  /// pose and projection (column-major float16 arrays), tracked planes,
2200
2383
  /// anchors, and the light estimate. Drives the world.tracking_state
@@ -2274,6 +2457,7 @@ export class GossSession {
2274
2457
  this.mod.ccall("goss_free", null, ["number", "number"], [ptr, size]);
2275
2458
  };
2276
2459
  free(this.frameDescPtr, 32);
2460
+ free(this.framePlanesPtr, 32);
2277
2461
  free(this.landmarksPtr, GOSS_FACE_LANDMARK_COUNT * 3 * 4);
2278
2462
  free(this.signalsPtr, LENS_SIGNALS_BYTES);
2279
2463
  free(this.segmentationMaskPtr, GOSS_SEGMENTATION_MASK_SIDE * GOSS_SEGMENTATION_MASK_SIDE * 4);
@@ -2481,4 +2665,7 @@ export { GossWebXRWorldSource } from "./world.js";
2481
2665
  export { GossAudioOutput } from "./audio-output.js";
2482
2666
  export { GossMicInput } from "./mic-input.js";
2483
2667
  export { GossVideoTexture } from "./video-texture.js";
2668
+ // The trackers the tracking module runs, so a page reaches them through the one package entry
2669
+ // the way the Swift and Kotlin SDKs carry theirs.
2670
+ export { GossFaceTracker, GossHandTracker, GossPoseTracker, GossSegmenter, GOSS_FACE_BLENDSHAPE_COUNT, GOSS_MAX_HANDS } from "./tracking.js";
2484
2671
  //# sourceMappingURL=index.js.map