@myzonerocks/gosslens 0.11.0 → 0.12.0-alpha.2

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
@@ -154,8 +154,14 @@ script node last wrote.
154
154
 
155
155
  A lens's `ml.infer`, `audio.infer`, `temporal.fuse`, `splat.cloud`, and
156
156
  `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:
157
+ synchronous web rail. Stage each file under the name the manifest uses
158
+ before activating - `provideLensAsset` covers every bundle asset, not just the
159
+ nets: images, LUTs, sprites, face textures, glTF models and shader binaries (as
160
+ `shaders/<stem>.<profile>.bin`), so a lens fetched over the network runs exactly
161
+ as an unpacked directory does. Then feed frames with `trackFrame` and read
162
+ results back (`spriteTransform(nodeId)` reads where a placed sprite, label or
163
+ video node currently draws - its rect and its turn in degrees, after the authored
164
+ angle, any bound parameter and any gesture):
159
165
 
160
166
  ```typescript
161
167
  session.provideLensAsset("net.onnx", modelBytes);
@@ -384,7 +390,9 @@ const ribbon = session.brushVertices();
384
390
 
385
391
  `setARBrushStyle`/`beginARStroke`/`addARStrokePoint(x, y, z)`/`endARStroke` are the
386
392
  world-anchored twin: points are pushed in the world frame world tracking reports,
387
- so a stroke stays fixed in the scene.
393
+ so a stroke stays fixed in the scene. `undoARStroke`/`redoARStroke`/`clearARStrokes`
394
+ are its stacks - the same undo/redo pair the screen brush has, so one brush rail
395
+ drives both; a fresh stroke drops the redo future, as in any editor.
388
396
 
389
397
  ## Capture and recording
390
398
 
@@ -456,7 +464,9 @@ for the mic to send the lens sound over silence). `pullAudio` still pulls the le
456
464
  sound alone for local WebAudio playback with no call in progress; `GossAudioOutput`
457
465
  wraps that playback (an `AudioWorklet` it owns, `start()` from a gesture, `pump()`
458
466
  each frame beside `tickLens`). `GossMicInput` captures the microphone into
459
- `submitAudio` so level and beat triggers fire in the browser, and
467
+ `submitAudio` so level and beat triggers fire in the browser at whatever rate
468
+ the browser chose - the engine resamples to its own fixed ring rate, so an
469
+ `audio.infer` model reads the same window here as on a phone - and
460
470
  `GossVideoTexture` plays an MP4 through the browser's decoder into a named
461
471
  source a lens composites.
462
472
 
@@ -271,6 +271,7 @@ export declare class GossEngine {
271
271
  addMusicReference(trackId: number, samples: Float32Array, frameCount: number, sampleRate: number, channels: number): boolean;
272
272
  clearMusicReferences(): void;
273
273
  identifyMusic(samples: Float32Array, frameCount: number, sampleRate: number, channels: number, minVotes?: number): MusicMatch | null;
274
+ beatMap(samples: Float32Array, frameCount: number, sampleRate: number, channels: number): number[];
274
275
  releaseLiveTexture(nativeHandle: bigint): boolean;
275
276
  private capturePixels;
276
277
  get isCaptureInFlight(): boolean;
@@ -410,6 +411,14 @@ export declare class GossSession {
410
411
  addARStrokePoint(x: number, y: number, z: number): void;
411
412
  endARStroke(): void;
412
413
  undoARStroke(): void;
414
+ redoARStroke(): void;
415
+ spriteTransform(nodeId: string): {
416
+ x: number;
417
+ y: number;
418
+ w: number;
419
+ h: number;
420
+ rotation: number;
421
+ } | null;
413
422
  clearARStrokes(): void;
414
423
  /** Feeds one screen touch event so the engine recognizes the gestures a lens
415
424
  * reacts to. phase is 0 began, 1 moved, 2 ended, 3 cancelled; pointerId names
@@ -422,6 +431,9 @@ export declare class GossSession {
422
431
  style: number;
423
432
  intensity: number;
424
433
  } | null;
434
+ /** The photosensitivity risk (0..1) the flash detector last reported for the frames this
435
+ * session was fed, the same value a lens reads as safety.flash_risk. */
436
+ flashRisk(): number;
425
437
  grab(x: number, y: number, z: number): void;
426
438
  release(): void;
427
439
  addCollider(x: number, y: number, z: number): void;
@@ -499,6 +511,14 @@ export declare class GossSession {
499
511
  private ensureFramePixels;
500
512
  submitFrameRgbaCopy(rgba: Uint8ClampedArray | Uint8Array, stride: number, width: number, height: number, pixelFormat?: GossPixelFormat, rotationDegrees?: number, mirrored?: boolean, timestampUs?: number): void;
501
513
  submitAvatarSourceRgba(rgba: Uint8ClampedArray | Uint8Array, width: number, height: number): void;
514
+ chainReport(): {
515
+ ready: number;
516
+ total: number;
517
+ beauty: boolean;
518
+ };
519
+ readReconstruction(): Float32Array;
520
+ writeReconstruction(gaussians: Float32Array): void;
521
+ submitCameraPose(worldFromCamera: ArrayLike<number>, projection: ArrayLike<number>, timestampUs: number): void;
502
522
  submitWorld(state: GossWorldState, planes?: GossWorldPlane[], anchors?: GossWorldAnchorInput[], light?: GossWorldLight): void;
503
523
  private ensureWorldScratch;
504
524
  reportFrame(frameTimeUs: number, thermal?: GossThermal): GossDegradeLevel;
@@ -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
@@ -284,8 +284,13 @@ export class GossEngine {
284
284
  // itself, via emscripten_webgl_create_context - passing
285
285
  // webGLContextAttributes here has no effect regardless,
286
286
  // preserveDrawingBuffer stays false. Worked around in capturePixels.
287
- const rendererStatus = await mod.ccall("goss_engine_init_renderer", "number", ["number", "number"], [this.handle, rendererDescPtr], { async: true });
288
- mod.ccall("goss_free", null, ["number", "number"], [rendererDescPtr, 12]);
287
+ let rendererStatus;
288
+ try {
289
+ rendererStatus = await mod.ccall("goss_engine_init_renderer", "number", ["number", "number"], [this.handle, rendererDescPtr], { async: true });
290
+ }
291
+ finally {
292
+ mod.ccall("goss_free", null, ["number", "number"], [rendererDescPtr, 12]);
293
+ }
289
294
  if (rendererStatus !== GOSS_OK)
290
295
  throw new Error(`renderer init failed: ${rendererStatus}`);
291
296
  // Emscripten's C++ side just created this canvas's own rendering
@@ -527,6 +532,31 @@ export class GossEngine {
527
532
  return null;
528
533
  return { trackId, votes };
529
534
  }
535
+ /// The times, in seconds from the buffer's start, of every beat in a piece of
536
+ /// audio, from the same onset detector a lens's beat trigger rides. Samples are
537
+ /// interleaved f32, and a montage cut to these meets its sound on the beat.
538
+ beatMap(samples, frameCount, sampleRate, channels) {
539
+ const bytes = samples.length * 4;
540
+ const ptr = this.mod.ccall("goss_alloc", "number", ["number"], [bytes || 4]);
541
+ const countPtr = this.mod.ccall("goss_alloc", "number", ["number"], [4]);
542
+ this.mod.HEAPF32.set(samples, ptr >> 2);
543
+ 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]);
544
+ const count = sized === 0 ? new DataView(this.mod.HEAPU8.buffer, countPtr, 4).getUint32(0, true) : 0;
545
+ const out = [];
546
+ if (count > 0) {
547
+ const timesPtr = this.mod.ccall("goss_alloc", "number", ["number"], [count * 8]);
548
+ 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]);
549
+ if (status === 0) {
550
+ const view = new DataView(this.mod.HEAPU8.buffer, timesPtr, count * 8);
551
+ for (let i = 0; i < count; i += 1)
552
+ out.push(Number(view.getBigInt64(i * 8, true)) / 1_000_000);
553
+ }
554
+ this.mod.ccall("goss_free", null, ["number", "number"], [timesPtr, count * 8]);
555
+ }
556
+ this.mod.ccall("goss_free", null, ["number", "number"], [ptr, bytes || 4]);
557
+ this.mod.ccall("goss_free", null, ["number", "number"], [countPtr, 4]);
558
+ return out;
559
+ }
530
560
  /// Releases the persistent wrap the engine keeps per external live
531
561
  /// texture handle - the pair of the native SDKs' renderToLiveTexture,
532
562
  /// for a host retiring a publish surface before the engine goes away.
@@ -799,7 +829,9 @@ export class GossSession {
799
829
  if (this.scratchPtr !== 0)
800
830
  this.mod.ccall("goss_free", null, ["number", "number"], [this.scratchPtr, this.scratchCapacity]);
801
831
  this.scratchPtr = this.mod.ccall("goss_alloc", "number", ["number"], [bytes]);
802
- this.scratchCapacity = bytes;
832
+ this.scratchCapacity = this.scratchPtr === 0 ? 0 : bytes;
833
+ if (this.scratchPtr === 0)
834
+ throw new Error("wasm allocation failed");
803
835
  }
804
836
  return this.scratchPtr;
805
837
  }
@@ -947,20 +979,17 @@ export class GossSession {
947
979
  /// muxed recording track, unused by the web preview path.
948
980
  submitAudio(samples, frameCount, sampleRate, channels, timestampUs = 0n) {
949
981
  const bytes = samples.length * 4;
950
- const ptr = this.mod.ccall("goss_alloc", "number", ["number"], [bytes]);
982
+ const ptr = this.scratch(bytes);
951
983
  this.mod.HEAPF32.set(samples, ptr >> 2);
952
984
  this.mod.ccall("goss_session_submit_audio", "number", ["number", "number", "number", "number", "number", "number"], [this.handle, ptr, frameCount, sampleRate, channels, timestampUs]);
953
- this.mod.ccall("goss_free", null, ["number", "number"], [ptr, bytes]);
954
985
  }
955
986
  /// Pulls the next block of mixed lens audio (frames interleaved s16) that
956
987
  /// play_sound triggers produced, for the page to feed into WebAudio.
957
988
  pullAudio(frames) {
958
989
  const byteLen = frames * 2;
959
- const ptr = this.mod.ccall("goss_alloc", "number", ["number"], [byteLen]);
990
+ const ptr = this.scratch(byteLen);
960
991
  this.mod.ccall("goss_session_pull_audio", "number", ["number", "number", "number"], [this.handle, ptr, frames]);
961
- const out = new Int16Array(this.mod.HEAP16.buffer, ptr, frames).slice();
962
- this.mod.ccall("goss_free", null, ["number", "number"], [ptr, byteLen]);
963
- return out;
992
+ return new Int16Array(this.mod.HEAP16.buffer, ptr, frames).slice();
964
993
  }
965
994
  /// Folds the active lens sound into the caller's outgoing call/live track:
966
995
  /// `mic` (interleaved f32 at `sampleRate`/`channels`, or null for silence)
@@ -968,20 +997,16 @@ export class GossSession {
968
997
  /// mixed interleaved s16. Advances the mixer once, replacing `pullAudio`.
969
998
  mixOutputAudio(mic, frameCount, sampleRate, channels) {
970
999
  const outLen = frameCount * channels;
971
- const outBytes = outLen * 2;
972
- const outPtr = this.mod.ccall("goss_alloc", "number", ["number"], [outBytes]);
973
- let micPtr = 0;
1000
+ const outBytes = (outLen * 2 + 3) & ~3;
974
1001
  const micBytes = mic ? mic.length * 4 : 0;
1002
+ const outPtr = this.scratch(outBytes + micBytes);
1003
+ let micPtr = 0;
975
1004
  if (mic) {
976
- micPtr = this.mod.ccall("goss_alloc", "number", ["number"], [micBytes]);
1005
+ micPtr = outPtr + outBytes;
977
1006
  this.mod.HEAPF32.set(mic, micPtr >> 2);
978
1007
  }
979
1008
  this.mod.ccall("goss_session_mix_output_audio", "number", ["number", "number", "number", "number", "number", "number"], [this.handle, micPtr, outPtr, frameCount, sampleRate, channels]);
980
- const out = new Int16Array(this.mod.HEAP16.buffer, outPtr, outLen).slice();
981
- this.mod.ccall("goss_free", null, ["number", "number"], [outPtr, outBytes]);
982
- if (mic)
983
- this.mod.ccall("goss_free", null, ["number", "number"], [micPtr, micBytes]);
984
- return out;
1009
+ return new Int16Array(this.mod.HEAP16.buffer, outPtr, outLen).slice();
985
1010
  }
986
1011
  /// Stores validated camera-hardware intent; the engine normalizes it. Read it
987
1012
  /// back with `cameraControls` and apply it via getUserMedia track constraints.
@@ -1130,7 +1155,7 @@ export class GossSession {
1130
1155
  /// Uploads one RGBA/BGRA frame into a named source (pixelFormat 3 BGRA, 4 RGBA).
1131
1156
  submitSourceFrameRgba(name, rgba, width, height, stride, pixelFormat = 4 /* GossPixelFormat.Rgba8 */) {
1132
1157
  const byteLen = stride * height;
1133
- const rgbaPtr = this.mod.ccall("goss_alloc", "number", ["number"], [byteLen]);
1158
+ const rgbaPtr = this.scratch(byteLen);
1134
1159
  this.mod.HEAPU8.set(rgba.subarray(0, byteLen), rgbaPtr);
1135
1160
  this.mod.setValue(this.frameDescPtr, width, "i32");
1136
1161
  this.mod.setValue(this.frameDescPtr + 4, height, "i32");
@@ -1141,7 +1166,6 @@ export class GossSession {
1141
1166
  this.mod.setValue(this.frameDescPtr + 24, 0, "i32");
1142
1167
  this.mod.setValue(this.frameDescPtr + 28, 0, "i32");
1143
1168
  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
- this.mod.ccall("goss_free", null, ["number", "number"], [rgbaPtr, byteLen]);
1145
1169
  }
1146
1170
  /// Arranges the camera and named sources: 0 custom, 1 side-by-side, 2 top-bottom, 3 pip, 4 grid.
1147
1171
  setLayout(arrangement) {
@@ -1319,6 +1343,26 @@ export class GossSession {
1319
1343
  undoARStroke() {
1320
1344
  this.mod.ccall("goss_session_ar_brush_undo", "number", ["number"], [this.handle]);
1321
1345
  }
1346
+ redoARStroke() {
1347
+ this.mod.ccall("goss_session_ar_brush_redo", "number", ["number"], [this.handle]);
1348
+ }
1349
+ /// Where a placed sprite.2d, text.2d or video.texture node currently draws: its rect in
1350
+ /// normalized coordinates and its turn in degrees clockwise - the authored angle, plus any
1351
+ /// bound parameter, plus any gesture. Null for an unknown node.
1352
+ spriteTransform(nodeId) {
1353
+ const id = new TextEncoder().encode(nodeId);
1354
+ // One scratch block holds the name then the five floats, aligned, so this needs no second
1355
+ // allocation and no second buffer to keep in step with it.
1356
+ const floatsAt = (id.length + 3) & ~3;
1357
+ const base = this.scratch(floatsAt + 5 * 4);
1358
+ this.mod.HEAPU8.set(id, base);
1359
+ const out = base + floatsAt;
1360
+ 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]);
1361
+ if (status !== 0)
1362
+ return null;
1363
+ const f = this.mod.HEAPF32;
1364
+ 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] };
1365
+ }
1322
1366
  clearARStrokes() {
1323
1367
  this.mod.ccall("goss_session_ar_brush_clear", "number", ["number"], [this.handle]);
1324
1368
  }
@@ -1340,6 +1384,15 @@ export class GossSession {
1340
1384
  this.mod.ccall("goss_free", null, ["number", "number"], [intensityPtr, 4]);
1341
1385
  return result;
1342
1386
  }
1387
+ /** The photosensitivity risk (0..1) the flash detector last reported for the frames this
1388
+ * session was fed, the same value a lens reads as safety.flash_risk. */
1389
+ flashRisk() {
1390
+ const outPtr = this.mod.ccall("goss_alloc", "number", ["number"], [4]);
1391
+ const status = this.mod.ccall("goss_session_flash_risk", "number", ["number", "number"], [this.handle, outPtr]);
1392
+ const value = status === 0 ? this.mod.getValue(outPtr, "float") : 0;
1393
+ this.mod.ccall("goss_free", null, ["number", "number"], [outPtr, 4]);
1394
+ return value;
1395
+ }
1343
1396
  grab(x, y, z) {
1344
1397
  this.mod.ccall("goss_session_grab", "number", ["number", "number", "number", "number"], [this.handle, x, y, z]);
1345
1398
  }
@@ -1400,7 +1453,7 @@ export class GossSession {
1400
1453
  }
1401
1454
  const scaleX = this.frameWidth / sourceWidth;
1402
1455
  const scaleY = this.frameHeight / sourceHeight;
1403
- const pointCount = landmarks.length / 3;
1456
+ const pointCount = Math.min(landmarks.length / 3, GOSS_FACE_LANDMARK_COUNT);
1404
1457
  const base = this.landmarksPtr >> 2;
1405
1458
  for (let at = 0; at < pointCount; at += 1) {
1406
1459
  this.mod.HEAPF32[base + at * 3] = landmarks[at * 3] * scaleX;
@@ -1425,16 +1478,16 @@ export class GossSession {
1425
1478
  const off = i * FACE_RESULT_BYTES;
1426
1479
  const base = ptr + off;
1427
1480
  const f = faces[i];
1428
- const count = f.landmarks.length / 3;
1481
+ const count = Math.min(f.landmarks.length / 3, GOSS_FACE_LANDMARK_COUNT);
1429
1482
  dv.setBigUint64(off, BigInt(f.frameSerial ?? 0), true);
1430
1483
  dv.setBigInt64(off + 8, BigInt(f.timestampUs ?? 0), true);
1431
1484
  dv.setFloat32(off + 16, f.presence ?? 1, true);
1432
1485
  dv.setUint32(off + 20, count, true);
1433
- this.mod.HEAPF32.set(f.landmarks, (base + 24) >> 2);
1486
+ this.mod.HEAPF32.set(f.landmarks.subarray(0, count * 3), (base + 24) >> 2);
1434
1487
  const bsStart = (base + 24 + GOSS_FACE_LANDMARK_COUNT * 3 * 4) >> 2;
1435
1488
  this.mod.HEAPF32.fill(0, bsStart, bsStart + GOSS_FACE_BLENDSHAPE_COUNT);
1436
1489
  if (f.blendshapes)
1437
- this.mod.HEAPF32.set(f.blendshapes, bsStart);
1490
+ this.mod.HEAPF32.set(f.blendshapes.subarray(0, GOSS_FACE_BLENDSHAPE_COUNT), bsStart);
1438
1491
  }
1439
1492
  this.mod.ccall("goss_session_submit_faces", "number", ["number", "number", "number"], [this.handle, ptr, faces.length]);
1440
1493
  }
@@ -1489,18 +1542,18 @@ export class GossSession {
1489
1542
  const off = i * POSE_RESULT_BYTES;
1490
1543
  const base = ptr + off;
1491
1544
  const b = bodies[i];
1492
- const count = b.landmarks.length / 3;
1545
+ const count = Math.min(b.landmarks.length / 3, GOSS_POSE_LANDMARK_COUNT);
1493
1546
  dv.setBigUint64(off, BigInt(b.frameSerial ?? 0), true);
1494
1547
  dv.setBigInt64(off + 8, BigInt(b.timestampUs ?? 0), true);
1495
1548
  dv.setFloat32(off + 16, b.presence ?? 1, true);
1496
1549
  dv.setUint32(off + 20, count, true);
1497
- this.mod.HEAPF32.set(b.landmarks, (base + 24) >> 2);
1550
+ this.mod.HEAPF32.set(b.landmarks.subarray(0, count * 3), (base + 24) >> 2);
1498
1551
  const visStart = (base + 24 + GOSS_POSE_LANDMARK_COUNT * 3 * 4) >> 2;
1499
1552
  this.mod.HEAPF32.fill(0, visStart, visStart + GOSS_POSE_LANDMARK_COUNT * 2);
1500
1553
  if (b.visibilities)
1501
- this.mod.HEAPF32.set(b.visibilities, visStart);
1554
+ this.mod.HEAPF32.set(b.visibilities.subarray(0, GOSS_POSE_LANDMARK_COUNT), visStart);
1502
1555
  if (b.presences)
1503
- this.mod.HEAPF32.set(b.presences, visStart + GOSS_POSE_LANDMARK_COUNT);
1556
+ this.mod.HEAPF32.set(b.presences.subarray(0, GOSS_POSE_LANDMARK_COUNT), visStart + GOSS_POSE_LANDMARK_COUNT);
1504
1557
  }
1505
1558
  this.mod.ccall("goss_session_submit_bodies", "number", ["number", "number", "number"], [this.handle, ptr, bodies.length]);
1506
1559
  }
@@ -1801,9 +1854,9 @@ export class GossSession {
1801
1854
  /// Submits one NV12 exposure of an HDR bracket, fed to bracket-source
1802
1855
  /// temporal.fuse nodes. y and uv are the plane bytes as submitFrameCopy takes.
1803
1856
  submitFrameBracket(y, yStride, uv, uvStride, width, height, colorStandard = 1, colorRange = 0) {
1804
- const yPtr = this.mod.ccall("goss_alloc", "number", ["number"], [y.length]);
1857
+ const yPtr = this.scratch(y.length + uv.length);
1805
1858
  this.mod.HEAPU8.set(y, yPtr);
1806
- const uvPtr = this.mod.ccall("goss_alloc", "number", ["number"], [uv.length]);
1859
+ const uvPtr = yPtr + y.length;
1807
1860
  this.mod.HEAPU8.set(uv, uvPtr);
1808
1861
  this.mod.setValue(this.frameDescPtr, width, "i32");
1809
1862
  this.mod.setValue(this.frameDescPtr + 4, height, "i32");
@@ -1814,13 +1867,11 @@ export class GossSession {
1814
1867
  this.mod.setValue(this.frameDescPtr + 24, 0, "i32");
1815
1868
  this.mod.setValue(this.frameDescPtr + 28, 0, "i32");
1816
1869
  this.mod.ccall("goss_session_submit_frame_bracket", "number", ["number", "number", "number", "number", "number", "number"], [this.handle, this.frameDescPtr, yPtr, yStride, uvPtr, uvStride]);
1817
- this.mod.ccall("goss_free", null, ["number", "number"], [yPtr, y.length]);
1818
- this.mod.ccall("goss_free", null, ["number", "number"], [uvPtr, uv.length]);
1819
1870
  }
1820
1871
  submitPlanes(sym, y, yStride, uv, uvStride, width, height, colorStandard, colorRange) {
1821
- const yPtr = this.mod.ccall("goss_alloc", "number", ["number"], [y.length]);
1872
+ const yPtr = this.scratch(y.length + uv.length);
1822
1873
  this.mod.HEAPU8.set(y, yPtr);
1823
- const uvPtr = this.mod.ccall("goss_alloc", "number", ["number"], [uv.length]);
1874
+ const uvPtr = yPtr + y.length;
1824
1875
  this.mod.HEAPU8.set(uv, uvPtr);
1825
1876
  this.mod.setValue(this.frameDescPtr, width, "i32");
1826
1877
  this.mod.setValue(this.frameDescPtr + 4, height, "i32");
@@ -1831,8 +1882,6 @@ export class GossSession {
1831
1882
  this.mod.setValue(this.frameDescPtr + 24, 0, "i32");
1832
1883
  this.mod.setValue(this.frameDescPtr + 28, 0, "i32");
1833
1884
  this.mod.ccall(sym, "number", ["number", "number", "number", "number", "number", "number"], [this.handle, this.frameDescPtr, yPtr, yStride, uvPtr, uvStride]);
1834
- this.mod.ccall("goss_free", null, ["number", "number"], [yPtr, y.length]);
1835
- this.mod.ccall("goss_free", null, ["number", "number"], [uvPtr, uv.length]);
1836
1885
  }
1837
1886
  /// Feeds one NV12 frame to the in-engine trackers only (no render), for a host
1838
1887
  /// that renders elsewhere but wants the engine's face/hand/pose tracking. Web
@@ -2165,7 +2214,9 @@ export class GossSession {
2165
2214
  if (this.framePixelsPtr !== 0)
2166
2215
  this.mod.ccall("goss_free", null, ["number", "number"], [this.framePixelsPtr, this.framePixelsCapacity]);
2167
2216
  this.framePixelsPtr = this.mod.ccall("goss_alloc", "number", ["number"], [byteLength]);
2168
- this.framePixelsCapacity = byteLength;
2217
+ this.framePixelsCapacity = this.framePixelsPtr === 0 ? 0 : byteLength;
2218
+ if (this.framePixelsPtr === 0)
2219
+ throw new Error("wasm allocation failed");
2169
2220
  }
2170
2221
  /// rotationDegrees omitted means the setVideoFlip state decides (a
2171
2222
  /// flipped source is a 180-degree turn); timestampUs omitted means
@@ -2198,6 +2249,63 @@ export class GossSession {
2198
2249
  this.mod.HEAPU8.set(rgba.subarray(0, byteLength), this.framePixelsPtr);
2199
2250
  this.mod.ccall("goss_session_submit_avatar_source_rgba", "number", ["number", "number", "number"], [this.handle, this.framePixelsPtr, width, height]);
2200
2251
  }
2252
+ /// What the last drawn frame did with the active lens: stages ready to draw,
2253
+ /// stages it has, and whether the beauty bridge ran. Zero ready over a non-zero
2254
+ /// total is a lens the engine activated and is drawing nothing of.
2255
+ chainReport() {
2256
+ const ptr = this.mod.ccall("goss_alloc", "number", ["number"], [12]);
2257
+ const status = this.mod.ccall("goss_session_chain_report", "number", ["number", "number", "number", "number"], [this.handle, ptr, ptr + 4, ptr + 8]);
2258
+ const view = new DataView(this.mod.HEAPU8.buffer, ptr, 12);
2259
+ const out = status === 0
2260
+ ? { ready: view.getUint32(0, true), total: view.getUint32(4, true), beauty: view.getUint32(8, true) !== 0 }
2261
+ : { ready: 0, total: 0, beauty: false };
2262
+ this.mod.ccall("goss_free", null, ["number", "number"], [ptr, 12]);
2263
+ return out;
2264
+ }
2265
+ /// The scan's reconstruction as gaussians, fourteen numbers each: xyz, scale,
2266
+ /// a rotation quaternion, opacity and rgb. This is what a client writes into a
2267
+ /// moment file.
2268
+ readReconstruction() {
2269
+ const countPtr = this.mod.ccall("goss_alloc", "number", ["number"], [4]);
2270
+ const sized = this.mod.ccall("goss_session_read_reconstruction", "number", ["number", "number", "number", "number"], [this.handle, 0, 0, countPtr]);
2271
+ const count = sized === 0 ? new DataView(this.mod.HEAPU8.buffer, countPtr, 4).getUint32(0, true) : 0;
2272
+ let out = new Float32Array(0);
2273
+ if (count > 0) {
2274
+ const floats = count * 14;
2275
+ const ptr = this.mod.ccall("goss_alloc", "number", ["number"], [floats * 4]);
2276
+ const status = this.mod.ccall("goss_session_read_reconstruction", "number", ["number", "number", "number", "number"], [this.handle, ptr, count, countPtr]);
2277
+ if (status === 0)
2278
+ out = new Float32Array(this.mod.HEAPF32.subarray(ptr >> 2, (ptr >> 2) + floats));
2279
+ this.mod.ccall("goss_free", null, ["number", "number"], [ptr, floats * 4]);
2280
+ }
2281
+ this.mod.ccall("goss_free", null, ["number", "number"], [countPtr, 4]);
2282
+ return out;
2283
+ }
2284
+ /// Puts a reconstruction back, replacing whatever the scan held, so a moment
2285
+ /// captured on one client opens on another.
2286
+ writeReconstruction(gaussians) {
2287
+ if (gaussians.length === 0) {
2288
+ this.mod.ccall("goss_session_write_reconstruction", "number", ["number", "number", "number"], [this.handle, 0, 0]);
2289
+ return;
2290
+ }
2291
+ const bytes = gaussians.length * 4;
2292
+ const ptr = this.mod.ccall("goss_alloc", "number", ["number"], [bytes]);
2293
+ this.mod.HEAPF32.set(gaussians, ptr >> 2);
2294
+ this.mod.ccall("goss_session_write_reconstruction", "number", ["number", "number", "number"], [this.handle, ptr, gaussians.length / 14]);
2295
+ this.mod.ccall("goss_free", null, ["number", "number"], [ptr, bytes]);
2296
+ }
2297
+ /// Submits a bare camera pose and projection, for a host driving a scan with
2298
+ /// no platform world session behind it: a selfie scan on the front camera,
2299
+ /// where the depth comes from a lens's own net rather than a sensor. Both
2300
+ /// matrices are column-major, sixteen numbers.
2301
+ submitCameraPose(worldFromCamera, projection, timestampUs) {
2302
+ if (worldFromCamera.length !== 16 || projection.length !== 16)
2303
+ return;
2304
+ this.submitWorld({ trackingState: 2, worldFromCamera, projection, timestampUs }, [], [], {
2305
+ ambientIntensity: 1000,
2306
+ colorTemperatureKelvin: 6500,
2307
+ });
2308
+ }
2201
2309
  /// Feeds the platform's world understanding into the session: camera
2202
2310
  /// pose and projection (column-major float16 arrays), tracked planes,
2203
2311
  /// anchors, and the light estimate. Drives the world.tracking_state
@@ -2250,7 +2358,9 @@ export class GossSession {
2250
2358
  if (this.worldScratchPtr !== 0)
2251
2359
  this.mod.ccall("goss_free", null, ["number", "number"], [this.worldScratchPtr, this.worldScratchLen]);
2252
2360
  this.worldScratchPtr = this.mod.ccall("goss_alloc", "number", ["number"], [byteLength]);
2253
- this.worldScratchLen = byteLength;
2361
+ this.worldScratchLen = this.worldScratchPtr === 0 ? 0 : byteLength;
2362
+ if (this.worldScratchPtr === 0)
2363
+ throw new Error("wasm allocation failed");
2254
2364
  }
2255
2365
  /// Reports one finished frame: measured whole-pipeline time plus
2256
2366
  /// thermal pressure (nominal by default - no browser API surfaces
@@ -2324,9 +2434,15 @@ export class GossPreviewSession {
2324
2434
  static async create(canvas, wasmJsUrl, events = {}) {
2325
2435
  const gosslens = await Gosslens.load(canvas, wasmJsUrl);
2326
2436
  const engine = GossEngine.create(gosslens);
2327
- await engine.initRenderer(canvas);
2328
- const session = GossSession.create(engine);
2329
- return new GossPreviewSession(gosslens, engine, session, events);
2437
+ try {
2438
+ await engine.initRenderer(canvas);
2439
+ const session = GossSession.create(engine);
2440
+ return new GossPreviewSession(gosslens, engine, session, events);
2441
+ }
2442
+ catch (err) {
2443
+ engine.destroy();
2444
+ throw err;
2445
+ }
2330
2446
  }
2331
2447
  abiVersion() {
2332
2448
  return this.gosslens.abiVersion();
@@ -2435,8 +2551,10 @@ export class GossPreviewSession {
2435
2551
  this.cameraFrames += 1;
2436
2552
  const width = this.video.videoWidth;
2437
2553
  const height = this.video.videoHeight;
2438
- this.scratchCanvas.width = width;
2439
- this.scratchCanvas.height = height;
2554
+ if (this.scratchCanvas.width !== width || this.scratchCanvas.height !== height) {
2555
+ this.scratchCanvas.width = width;
2556
+ this.scratchCanvas.height = height;
2557
+ }
2440
2558
  this.scratchCtx.drawImage(this.video, 0, 0, width, height);
2441
2559
  const pixels = this.scratchCtx.getImageData(0, 0, width, height);
2442
2560
  // Not mirrored here - the demo page's own CSS mirrors the canvas