supervision 0.1.7 → 0.2.0-next.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 (215) hide show
  1. package/dist/detections/chunked-detection-frame-source.d.ts.map +1 -1
  2. package/dist/index.d.ts +11 -4
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +8856 -4559
  5. package/dist/index.js.map +1 -1
  6. package/dist/mask-preparation.worker.js +310 -164
  7. package/dist/mask-preparation.worker.js.map +1 -1
  8. package/dist/media/display-pixel-ratio.d.ts +15 -0
  9. package/dist/media/display-pixel-ratio.d.ts.map +1 -0
  10. package/dist/media/engine-import-failure.d.ts +16 -0
  11. package/dist/media/engine-import-failure.d.ts.map +1 -0
  12. package/dist/media/media-condition-probe.d.ts +51 -0
  13. package/dist/media/media-condition-probe.d.ts.map +1 -0
  14. package/dist/media/media-conditions.d.ts +28 -0
  15. package/dist/media/media-conditions.d.ts.map +1 -0
  16. package/dist/media/media-errors.d.ts +6 -0
  17. package/dist/media/media-errors.d.ts.map +1 -1
  18. package/dist/media/media-normalization.d.ts.map +1 -1
  19. package/dist/media/media-probe.d.ts.map +1 -1
  20. package/dist/media/media-source.d.ts +17 -0
  21. package/dist/media/media-source.d.ts.map +1 -1
  22. package/dist/media/mediabunny-media-source.d.ts.map +1 -1
  23. package/dist/media/video-engine-media-source.d.ts +44 -0
  24. package/dist/media/video-engine-media-source.d.ts.map +1 -0
  25. package/dist/render-preparation/mask-frame-artifact.d.ts +46 -12
  26. package/dist/render-preparation/mask-frame-artifact.d.ts.map +1 -1
  27. package/dist/render-preparation/mask-frame-compositor.d.ts +5 -5
  28. package/dist/render-preparation/mask-frame-compositor.d.ts.map +1 -1
  29. package/dist/render-preparation/mask-frame-preparer.d.ts.map +1 -1
  30. package/dist/render-preparation/mask-preparation-worker-count.d.ts +4 -4
  31. package/dist/render-preparation/mask-preparation-worker-protocol.d.ts +12 -3
  32. package/dist/render-preparation/mask-preparation-worker-protocol.d.ts.map +1 -1
  33. package/dist/render-preparation/prepared-render-window.d.ts +23 -0
  34. package/dist/render-preparation/prepared-render-window.d.ts.map +1 -1
  35. package/dist/render-preparation/prepared-window-timeline.d.ts +2 -6
  36. package/dist/render-preparation/prepared-window-timeline.d.ts.map +1 -1
  37. package/dist/renderers/mask-palette.d.ts +14 -0
  38. package/dist/renderers/mask-palette.d.ts.map +1 -0
  39. package/dist/renderers/mask-vertex.d.ts +14 -0
  40. package/dist/renderers/mask-vertex.d.ts.map +1 -0
  41. package/dist/renderers/media-renderer-core.d.ts.map +1 -1
  42. package/dist/renderers/media-renderer-scene.d.ts +37 -0
  43. package/dist/renderers/media-renderer-scene.d.ts.map +1 -1
  44. package/dist/renderers/media-renderer-state.d.ts +11 -1
  45. package/dist/renderers/media-renderer-state.d.ts.map +1 -1
  46. package/dist/renderers/media-renderer-transport.d.ts +59 -0
  47. package/dist/renderers/media-renderer-transport.d.ts.map +1 -0
  48. package/dist/renderers/pixi-box-layer.d.ts +5 -0
  49. package/dist/renderers/pixi-box-layer.d.ts.map +1 -1
  50. package/dist/renderers/pixi-focus-layer.d.ts +18 -2
  51. package/dist/renderers/pixi-focus-layer.d.ts.map +1 -1
  52. package/dist/renderers/pixi-frame-present.d.ts +77 -0
  53. package/dist/renderers/pixi-frame-present.d.ts.map +1 -0
  54. package/dist/renderers/pixi-id-mask-shader.d.ts +12 -2
  55. package/dist/renderers/pixi-id-mask-shader.d.ts.map +1 -1
  56. package/dist/renderers/pixi-interaction-layer.d.ts.map +1 -1
  57. package/dist/renderers/pixi-interaction-presentation-layer.d.ts +13 -2
  58. package/dist/renderers/pixi-interaction-presentation-layer.d.ts.map +1 -1
  59. package/dist/renderers/pixi-mask-halo.d.ts +24 -0
  60. package/dist/renderers/pixi-mask-halo.d.ts.map +1 -1
  61. package/dist/renderers/pixi-mask-layer.d.ts +71 -8
  62. package/dist/renderers/pixi-mask-layer.d.ts.map +1 -1
  63. package/dist/renderers/pixi-media-scene.d.ts +67 -0
  64. package/dist/renderers/pixi-media-scene.d.ts.map +1 -1
  65. package/dist/renderers/pixi-polygon-layer.d.ts +7 -2
  66. package/dist/renderers/pixi-polygon-layer.d.ts.map +1 -1
  67. package/dist/renderers/pixi-region-coverage-mask.d.ts +91 -0
  68. package/dist/renderers/pixi-region-coverage-mask.d.ts.map +1 -0
  69. package/dist/renderers/pixi-region-effect.d.ts +42 -0
  70. package/dist/renderers/pixi-region-effect.d.ts.map +1 -0
  71. package/dist/renderers/pixi-region-layer.d.ts +68 -2
  72. package/dist/renderers/pixi-region-layer.d.ts.map +1 -1
  73. package/dist/renderers/pixi-vector-layer.d.ts.map +1 -1
  74. package/dist/renderers/prepared-annotation-window.d.ts +47 -0
  75. package/dist/renderers/prepared-annotation-window.d.ts.map +1 -0
  76. package/dist/renderers/presented-frame-channel.d.ts +107 -0
  77. package/dist/renderers/presented-frame-channel.d.ts.map +1 -0
  78. package/dist/renderers/scene-render-scheduler.d.ts +20 -0
  79. package/dist/renderers/scene-render-scheduler.d.ts.map +1 -0
  80. package/dist/sessions/media-session-defaults.d.ts +10 -6
  81. package/dist/sessions/media-session-defaults.d.ts.map +1 -1
  82. package/dist/sessions/media-session-media.d.ts.map +1 -1
  83. package/dist/sessions/media-session-state.d.ts.map +1 -1
  84. package/dist/sessions/media-session.d.ts.map +1 -1
  85. package/dist/tracking.worker.js +58 -3
  86. package/dist/tracking.worker.js.map +1 -1
  87. package/dist/types/media-conditions.d.ts +149 -0
  88. package/dist/types/media-conditions.d.ts.map +1 -0
  89. package/dist/types/media-normalization.d.ts +34 -0
  90. package/dist/types/media-normalization.d.ts.map +1 -1
  91. package/dist/types/media-renderer.d.ts +31 -1
  92. package/dist/types/media-renderer.d.ts.map +1 -1
  93. package/dist/types/media-session.d.ts +89 -8
  94. package/dist/types/media-session.d.ts.map +1 -1
  95. package/dist/types/render-preparation.d.ts +101 -4
  96. package/dist/types/render-preparation.d.ts.map +1 -1
  97. package/dist/web-video-engine/analysis-session.d.ts +76 -0
  98. package/dist/web-video-engine/analysis-session.d.ts.map +1 -0
  99. package/dist/web-video-engine/analysis.d.ts +7 -0
  100. package/dist/web-video-engine/analysis.d.ts.map +1 -0
  101. package/dist/web-video-engine/analysis.js +1678 -0
  102. package/dist/web-video-engine/analysis.js.map +1 -0
  103. package/dist/web-video-engine/cache-budget.d.ts +19 -0
  104. package/dist/web-video-engine/cache-budget.d.ts.map +1 -0
  105. package/dist/web-video-engine/canvas-sink-scrub-cursor.d.ts +90 -0
  106. package/dist/web-video-engine/canvas-sink-scrub-cursor.d.ts.map +1 -0
  107. package/dist/web-video-engine/clock.d.ts +83 -0
  108. package/dist/web-video-engine/clock.d.ts.map +1 -0
  109. package/dist/web-video-engine/constants.d.ts +253 -0
  110. package/dist/web-video-engine/constants.d.ts.map +1 -0
  111. package/dist/web-video-engine/create-scrub-cursor.d.ts +62 -0
  112. package/dist/web-video-engine/create-scrub-cursor.d.ts.map +1 -0
  113. package/dist/web-video-engine/decode-resolution.d.ts +115 -0
  114. package/dist/web-video-engine/decode-resolution.d.ts.map +1 -0
  115. package/dist/web-video-engine/decode-scheduler.d.ts +356 -0
  116. package/dist/web-video-engine/decode-scheduler.d.ts.map +1 -0
  117. package/dist/web-video-engine/decode-session.d.ts +276 -0
  118. package/dist/web-video-engine/decode-session.d.ts.map +1 -0
  119. package/dist/web-video-engine/decode-source.d.ts +250 -0
  120. package/dist/web-video-engine/decode-source.d.ts.map +1 -0
  121. package/dist/web-video-engine/diagnostics-store.d.ts +18 -0
  122. package/dist/web-video-engine/diagnostics-store.d.ts.map +1 -0
  123. package/dist/web-video-engine/diagnostics.d.ts +316 -0
  124. package/dist/web-video-engine/diagnostics.d.ts.map +1 -0
  125. package/dist/web-video-engine/embedded-engine-worker.d.ts +2 -0
  126. package/dist/web-video-engine/embedded-engine-worker.d.ts.map +1 -0
  127. package/dist/web-video-engine/engine-core.d.ts +258 -0
  128. package/dist/web-video-engine/engine-core.d.ts.map +1 -0
  129. package/dist/web-video-engine/engine.d.ts +26 -0
  130. package/dist/web-video-engine/engine.d.ts.map +1 -0
  131. package/dist/web-video-engine/engine.js +873 -0
  132. package/dist/web-video-engine/engine.js.map +1 -0
  133. package/dist/web-video-engine/engine.worker.d.ts +2 -0
  134. package/dist/web-video-engine/engine.worker.d.ts.map +1 -0
  135. package/dist/web-video-engine/engine.worker.js +31320 -0
  136. package/dist/web-video-engine/engine.worker.js.map +1 -0
  137. package/dist/web-video-engine/frame-cache.d.ts +129 -0
  138. package/dist/web-video-engine/frame-cache.d.ts.map +1 -0
  139. package/dist/web-video-engine/frame-extractor.d.ts +28 -0
  140. package/dist/web-video-engine/frame-extractor.d.ts.map +1 -0
  141. package/dist/web-video-engine/frame-timeline-GINI8Gum.js +560 -0
  142. package/dist/web-video-engine/frame-timeline-GINI8Gum.js.map +1 -0
  143. package/dist/web-video-engine/frame-timeline.d.ts +71 -0
  144. package/dist/web-video-engine/frame-timeline.d.ts.map +1 -0
  145. package/dist/web-video-engine/frame-walker.d.ts +74 -0
  146. package/dist/web-video-engine/frame-walker.d.ts.map +1 -0
  147. package/dist/web-video-engine/index.d.ts +3 -0
  148. package/dist/web-video-engine/index.d.ts.map +1 -0
  149. package/dist/web-video-engine/index.js +3 -0
  150. package/dist/web-video-engine/index.js.map +1 -0
  151. package/dist/web-video-engine/key-packet.d.ts +65 -0
  152. package/dist/web-video-engine/key-packet.d.ts.map +1 -0
  153. package/dist/web-video-engine/keyframe-index.d.ts +91 -0
  154. package/dist/web-video-engine/keyframe-index.d.ts.map +1 -0
  155. package/dist/web-video-engine/mirror-store.d.ts +56 -0
  156. package/dist/web-video-engine/mirror-store.d.ts.map +1 -0
  157. package/dist/web-video-engine/renderer.d.ts +94 -0
  158. package/dist/web-video-engine/renderer.d.ts.map +1 -0
  159. package/dist/web-video-engine/rotation.d.ts +35 -0
  160. package/dist/web-video-engine/rotation.d.ts.map +1 -0
  161. package/dist/web-video-engine/scrub-controller.d.ts +376 -0
  162. package/dist/web-video-engine/scrub-controller.d.ts.map +1 -0
  163. package/dist/web-video-engine/scrub-cursor.d.ts +342 -0
  164. package/dist/web-video-engine/scrub-cursor.d.ts.map +1 -0
  165. package/dist/web-video-engine/scrub-trajectory.d.ts +30 -0
  166. package/dist/web-video-engine/scrub-trajectory.d.ts.map +1 -0
  167. package/dist/web-video-engine/source-residency.d.ts +57 -0
  168. package/dist/web-video-engine/source-residency.d.ts.map +1 -0
  169. package/dist/web-video-engine/trace-recorder.d.ts +164 -0
  170. package/dist/web-video-engine/trace-recorder.d.ts.map +1 -0
  171. package/dist/web-video-engine/types.d.ts +204 -0
  172. package/dist/web-video-engine/types.d.ts.map +1 -0
  173. package/dist/web-video-engine/video-engine.d.ts +426 -0
  174. package/dist/web-video-engine/video-engine.d.ts.map +1 -0
  175. package/dist/web-video-engine/webgpu-renderer.d.ts +62 -0
  176. package/dist/web-video-engine/webgpu-renderer.d.ts.map +1 -0
  177. package/dist/web-video-engine/worker-bridge.d.ts +12 -0
  178. package/dist/web-video-engine/worker-bridge.d.ts.map +1 -0
  179. package/dist/web-video-engine/worker-dispatch.d.ts +17 -0
  180. package/dist/web-video-engine/worker-dispatch.d.ts.map +1 -0
  181. package/dist/web-video-engine/worker-protocol.d.ts +267 -0
  182. package/dist/web-video-engine/worker-protocol.d.ts.map +1 -0
  183. package/node_modules/supervision-js-core/dist/detections/buffered-detection-timeline.d.ts.map +1 -1
  184. package/node_modules/supervision-js-core/dist/detections/composite-detection-frame-source.d.ts.map +1 -1
  185. package/node_modules/supervision-js-core/dist/index.d.ts +4 -3
  186. package/node_modules/supervision-js-core/dist/index.d.ts.map +1 -1
  187. package/node_modules/supervision-js-core/dist/index.js +1075 -266
  188. package/node_modules/supervision-js-core/dist/index.js.map +1 -1
  189. package/node_modules/supervision-js-core/dist/styles/default-annotation-presentation.d.ts.map +1 -1
  190. package/node_modules/supervision-js-core/dist/styles/interaction-style.d.ts +4 -36
  191. package/node_modules/supervision-js-core/dist/styles/interaction-style.d.ts.map +1 -1
  192. package/node_modules/supervision-js-core/dist/styles/polyline-style.d.ts +5 -0
  193. package/node_modules/supervision-js-core/dist/styles/polyline-style.d.ts.map +1 -1
  194. package/node_modules/supervision-js-core/dist/types/annotation-renderer.d.ts +92 -7
  195. package/node_modules/supervision-js-core/dist/types/annotation-renderer.d.ts.map +1 -1
  196. package/node_modules/supervision-js-core/dist/types/detection-timeline.d.ts +179 -17
  197. package/node_modules/supervision-js-core/dist/types/detection-timeline.d.ts.map +1 -1
  198. package/node_modules/supervision-js-core/dist/types/media-rendering.d.ts +78 -2
  199. package/node_modules/supervision-js-core/dist/types/media-rendering.d.ts.map +1 -1
  200. package/node_modules/supervision-js-core/dist/types/polyline-style.d.ts +2 -0
  201. package/node_modules/supervision-js-core/dist/types/polyline-style.d.ts.map +1 -1
  202. package/node_modules/supervision-js-core/dist/types/session-lifecycle.d.ts +16 -0
  203. package/node_modules/supervision-js-core/dist/types/session-lifecycle.d.ts.map +1 -1
  204. package/node_modules/supervision-js-core/dist/utils/detection-conversions.d.ts.map +1 -1
  205. package/node_modules/supervision-js-core/dist/utils/detection-frames.d.ts +5 -0
  206. package/node_modules/supervision-js-core/dist/utils/detection-frames.d.ts.map +1 -1
  207. package/node_modules/supervision-js-core/dist/utils/detection-masks.d.ts +9 -0
  208. package/node_modules/supervision-js-core/dist/utils/detection-masks.d.ts.map +1 -1
  209. package/node_modules/supervision-js-core/dist/utils/detection-ranges.d.ts +18 -0
  210. package/node_modules/supervision-js-core/dist/utils/detection-ranges.d.ts.map +1 -0
  211. package/node_modules/supervision-js-core/dist/utils/id-mask-frame.d.ts +15 -2
  212. package/node_modules/supervision-js-core/dist/utils/id-mask-frame.d.ts.map +1 -1
  213. package/node_modules/supervision-js-core/dist/utils/wait-bound.d.ts +7 -0
  214. package/node_modules/supervision-js-core/dist/utils/wait-bound.d.ts.map +1 -0
  215. package/package.json +22 -1
@@ -161,6 +161,26 @@ export interface MediaSourceState {
161
161
  /**
162
162
  * Current renderer state.
163
163
  */
164
+ /**
165
+ * What a playback gate holds back.
166
+ *
167
+ * A source the renderer pulls samples from can be held between any two frames,
168
+ * because the renderer decides when each one is drawn. A source that presents
169
+ * its own frames owns the playhead, so holding it means stopping the producer
170
+ * and starting it again, which the detection gate does and the
171
+ * render-preparation gate does not.
172
+ */
173
+ export declare enum PlaybackGateReach {
174
+ /** No gate: the picture moves and unprepared layers are absent from it. */
175
+ Off = "off",
176
+ /**
177
+ * Playback waits to begin, and stops again at any frame whose artifacts are
178
+ * missing, until they arrive or the gate's own wait bound gives up on them.
179
+ */
180
+ EveryFrame = "everyFrame",
181
+ /** Playback waits to begin; frames after that are not held. */
182
+ StartOfPlayback = "startOfPlayback"
183
+ }
164
184
  export interface MediaRendererState {
165
185
  readonly rendererBackend: string | null;
166
186
  readonly playbackState: MediaRendererPlaybackState;
@@ -174,6 +194,60 @@ export interface MediaRendererState {
174
194
  readonly activeDetectionFrameTime: number | null;
175
195
  readonly activeDetectionFrameIndex: number | null;
176
196
  readonly activeDetectionCount: number;
197
+ /**
198
+ * Detection frame the mask raster on screen belongs to, null when no mask is
199
+ * up. It names `activeDetectionFrameTime`, or the frame beside it while that
200
+ * frame's own raster is still being prepared, and never anything further off
201
+ * than that.
202
+ *
203
+ * Optional so a host holding a state it built before this field existed still
204
+ * satisfies the type.
205
+ */
206
+ readonly drawnMaskFrameTime?: number | null;
207
+ /**
208
+ * How far the playback gate reaches on the source this renderer opened.
209
+ * The same option means different things to the two kinds of source, and this
210
+ * reports which one a host got.
211
+ */
212
+ readonly playbackGateReach?: PlaybackGateReach;
213
+ /**
214
+ * Whether the raster on screen belongs to a frame other than the one the rest
215
+ * of the annotations were drawn from, which is the neighbouring frame and no
216
+ * further. It goes true where drawing nothing would have blinked the mask off
217
+ * for a frame instead.
218
+ */
219
+ readonly maskHeldStale?: boolean;
220
+ /**
221
+ * Whether the playhead has been moved to a frame that is not on screen yet.
222
+ * `playbackState` cannot answer this: it keeps reporting what the transport
223
+ * settled on before the seek, so a seek of any length reads as paused or
224
+ * playing.
225
+ *
226
+ * A scrub sets this on every tick, so a host that draws it owes the viewer a
227
+ * delay before it appears, and owes them `scrubbing` too: a viewer dragging
228
+ * the playhead is not waiting for the picture, they are leading it.
229
+ *
230
+ * It answers for the transport, which settles one message before the frame it
231
+ * landed on reaches this thread. In that window the picture on screen is the
232
+ * cached stand-in the seek painted on its way out, which can be a quarter of a
233
+ * second from the frame requested, while this already reads false. A host that
234
+ * needs "is the right picture up" should compare the presented frame's own
235
+ * media time; reading a position the instant a seek resolves can return a
236
+ * frame that was never asked for.
237
+ *
238
+ * Optional so a host holding a state it built before this field existed still
239
+ * satisfies the type.
240
+ */
241
+ readonly seeking?: boolean;
242
+ /**
243
+ * Whether a drag is open on the playhead. True from the first scrub of a
244
+ * gesture until the seek that lands it, which is what separates a viewer
245
+ * leading the picture from one waiting on it.
246
+ *
247
+ * Optional so a host holding a state it built before this field existed still
248
+ * satisfies the type.
249
+ */
250
+ readonly scrubbing?: boolean;
177
251
  readonly detectionBuffer: DetectionBufferState;
178
252
  readonly lastFrameRenderTimings: MediaFrameRenderTimings | null;
179
253
  readonly source: MediaSourceState;
@@ -234,8 +308,10 @@ export interface MediaRendererQuality {
234
308
  /**
235
309
  * Caps render resolution relative to device pixels.
236
310
  *
237
- * Use `undefined` or a non-positive value to restore native device
238
- * resolution.
311
+ * Unset, non-finite, or non-positive takes the library's own ceiling of 2,
312
+ * which is what keeps the presentation surface, the mask rasters drawn onto
313
+ * it, and the decode under both on one pixel grid. Pass
314
+ * `window.devicePixelRatio` to rasterize at the display's full ratio.
239
315
  */
240
316
  readonly maxDevicePixelRatio?: number;
241
317
  }
@@ -1 +1 @@
1
- {"version":3,"file":"media-rendering.d.ts","sourceRoot":"","sources":["../../src/types/media-rendering.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"media-rendering.d.ts","sourceRoot":"","sources":["../../src/types/media-rendering.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,8 @@ export type PolylineStyleContext = AnnotationStyleContext;
5
5
  export interface PolylineDrawInstruction {
6
6
  readonly points: readonly Point[];
7
7
  readonly stroke: BoxStrokeStyle;
8
+ /** Drawn under `stroke` so the path reads over any media beneath it. */
9
+ readonly shadowStroke?: BoxStrokeStyle;
8
10
  }
9
11
  export interface PolylineStyle {
10
12
  resolve(detection: Detection, context: PolylineStyleContext): PolylineDrawInstruction | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"polyline-style.d.ts","sourceRoot":"","sources":["../../src/types/polyline-style.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAE3D,MAAM,MAAM,oBAAoB,GAAG,sBAAsB,CAAC;AAE1D,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,MAAM,EAAE,SAAS,KAAK,EAAE,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;CACjC;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,CACL,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,oBAAoB,GAC5B,uBAAuB,GAAG,SAAS,CAAC;CACxC"}
1
+ {"version":3,"file":"polyline-style.d.ts","sourceRoot":"","sources":["../../src/types/polyline-style.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAE3D,MAAM,MAAM,oBAAoB,GAAG,sBAAsB,CAAC;AAE1D,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,MAAM,EAAE,SAAS,KAAK,EAAE,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,wEAAwE;IACxE,QAAQ,CAAC,YAAY,CAAC,EAAE,cAAc,CAAC;CACxC;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,CACL,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,oBAAoB,GAC5B,uBAAuB,GAAG,SAAS,CAAC;CACxC"}
@@ -1,3 +1,4 @@
1
+ import type { MediaErrorKind } from "#types/media-rendering";
1
2
  /**
2
3
  * Media-session operating mode.
3
4
  *
@@ -34,6 +35,13 @@ export declare enum MediaSessionStatus {
34
35
  * Subsystem currently affecting session readiness or presentation.
35
36
  */
36
37
  export declare enum MediaSessionActivityKind {
38
+ /**
39
+ * Playback is held waiting for a producer to emit detections for the frame
40
+ * about to be shown, which is a wait on inference rather than on transfer or
41
+ * decode. `DetectionsBuffering` is the transfer of detections that already
42
+ * exist, and `PlaybackBuffering` is the wait for media bytes.
43
+ */
44
+ DetectionsAwaitingCoverage = "detectionsAwaitingCoverage",
37
45
  DetectionsBuffering = "detectionsBuffering",
38
46
  DetectionsLoading = "detectionsLoading",
39
47
  Error = "error",
@@ -69,6 +77,14 @@ export interface MediaSessionActivity {
69
77
  */
70
78
  readonly blockingPresentation: boolean;
71
79
  readonly detail?: string | null;
80
+ /**
81
+ * Stable failure classification when this activity reports an error.
82
+ *
83
+ * Prefer this over `errorMessage` for control flow: messages are diagnostic
84
+ * text and may name vendor internals. Absent when the reporting subsystem
85
+ * does not classify its failures.
86
+ */
87
+ readonly errorKind?: MediaErrorKind | null;
72
88
  readonly errorMessage?: string | null;
73
89
  readonly kind: MediaSessionActivityKind;
74
90
  readonly label: string;
@@ -1 +1 @@
1
- {"version":3,"file":"session-lifecycle.d.ts","sourceRoot":"","sources":["../../src/types/session-lifecycle.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,oBAAY,gBAAgB;IAC1B;;;OAGG;IACH,IAAI,SAAS;IACb;;;OAGG;IACH,MAAM,WAAW;CAClB;AAED;;GAEG;AACH,oBAAY,kBAAkB;IAC5B,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,KAAK,UAAU;IACf,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,UAAU,eAAe;IACzB,KAAK,UAAU;CAChB;AAED;;GAEG;AACH,oBAAY,wBAAwB;IAClC,mBAAmB,wBAAwB;IAC3C,iBAAiB,sBAAsB;IACvC,KAAK,UAAU;IACf,gBAAgB,qBAAqB;IACrC,YAAY,iBAAiB;IAC7B,iBAAiB,sBAAsB;IACvC,eAAe,oBAAoB;CACpC;AAED;;GAEG;AACH,oBAAY,0BAA0B;IACpC,KAAK,UAAU;IACf,OAAO,YAAY;IACnB,OAAO,YAAY;CACpB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B;;OAEG;IACH,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACnC;;;OAGG;IACH,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAC;IACvC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,QAAQ,CAAC,IAAI,EAAE,wBAAwB,CAAC;IACxC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,0BAA0B,CAAC;CAC7C;AAED;;;;;GAKG;AACH,MAAM,WAAW,0BAA0B,CACzC,MAAM,EACN,SAAS,EACT,cAAc,GAAG,OAAO,EACxB,kBAAkB,GAAG,OAAO;IAE5B,QAAQ,CAAC,UAAU,EAAE,SAAS,oBAAoB,EAAE,CAAC;IACrD,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,aAAa,EAAE,cAAc,GAAG,IAAI,CAAC;IAC9C;;OAEG;IACH,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;IAClC;;;OAGG;IACH,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAC;IACtC,QAAQ,CAAC,iBAAiB,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACtD,QAAQ,CAAC,QAAQ,EAAE,SAAS,GAAG,IAAI,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;CACrC;AAED,MAAM,MAAM,yBAAyB,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;AACxE,MAAM,MAAM,4BAA4B,GAAG,MAAM,IAAI,CAAC"}
1
+ {"version":3,"file":"session-lifecycle.d.ts","sourceRoot":"","sources":["../../src/types/session-lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAE7D;;;;;;GAMG;AACH,oBAAY,gBAAgB;IAC1B;;;OAGG;IACH,IAAI,SAAS;IACb;;;OAGG;IACH,MAAM,WAAW;CAClB;AAED;;GAEG;AACH,oBAAY,kBAAkB;IAC5B,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,KAAK,UAAU;IACf,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,UAAU,eAAe;IACzB,KAAK,UAAU;CAChB;AAED;;GAEG;AACH,oBAAY,wBAAwB;IAClC;;;;;OAKG;IACH,0BAA0B,+BAA+B;IACzD,mBAAmB,wBAAwB;IAC3C,iBAAiB,sBAAsB;IACvC,KAAK,UAAU;IACf,gBAAgB,qBAAqB;IACrC,YAAY,iBAAiB;IAC7B,iBAAiB,sBAAsB;IACvC,eAAe,oBAAoB;CACpC;AAED;;GAEG;AACH,oBAAY,0BAA0B;IACpC,KAAK,UAAU;IACf,OAAO,YAAY;IACnB,OAAO,YAAY;CACpB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B;;OAEG;IACH,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACnC;;;OAGG;IACH,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAC;IACvC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC;;;;;;OAMG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,cAAc,GAAG,IAAI,CAAC;IAC3C,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,QAAQ,CAAC,IAAI,EAAE,wBAAwB,CAAC;IACxC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,0BAA0B,CAAC;CAC7C;AAED;;;;;GAKG;AACH,MAAM,WAAW,0BAA0B,CACzC,MAAM,EACN,SAAS,EACT,cAAc,GAAG,OAAO,EACxB,kBAAkB,GAAG,OAAO;IAE5B,QAAQ,CAAC,UAAU,EAAE,SAAS,oBAAoB,EAAE,CAAC;IACrD,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,aAAa,EAAE,cAAc,GAAG,IAAI,CAAC;IAC9C;;OAEG;IACH,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;IAClC;;;OAGG;IACH,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAC;IACtC,QAAQ,CAAC,iBAAiB,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACtD,QAAQ,CAAC,QAAQ,EAAE,SAAS,GAAG,IAAI,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;CACrC;AAED,MAAM,MAAM,yBAAyB,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;AACxE,MAAM,MAAM,4BAA4B,GAAG,MAAM,IAAI,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"detection-conversions.d.ts","sourceRoot":"","sources":["../../src/utils/detection-conversions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EAET,KAAK,EACL,eAAe,EACf,IAAI,EACL,MAAM,mBAAmB,CAAC;AAS3B,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,eAAe,CAYzD;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,CAExE;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,eAAe,GAC1B,UAAU,CAqBZ;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,SAAS,KAAK,EAAE,EACxB,UAAU,EAAE,eAAe,GAC1B,UAAU,CA+CZ;AAED,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,CAI5E;AAED,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,CAI5E;AAED,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,CAMzE;AAED,wBAAgB,6BAA6B,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,CAoB7E;AAED,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,eAAe,GAC1B,SAAS,CAYX;AAED,wBAAgB,6BAA6B,CAC3C,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,eAAe,GAC1B,SAAS,CAYX;AAED,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,SAAS,SAAS,EAAE,GAC/B,SAAS,GAAG,IAAI,CA8BlB;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CAC3C,UAAU,EAAE,SAAS,SAAS,EAAE,EAChC,OAAO,GAAE;IACP,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAClB,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,UAAU,EAAE,MAAM,KACf,MAAM,GAAG,MAAM,CAAC;CACjB,GACL,SAAS,EAAE,CAkCb"}
1
+ {"version":3,"file":"detection-conversions.d.ts","sourceRoot":"","sources":["../../src/utils/detection-conversions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EAET,KAAK,EACL,eAAe,EACf,IAAI,EACL,MAAM,mBAAmB,CAAC;AAS3B,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,eAAe,CAYzD;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,CAExE;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,eAAe,GAC1B,UAAU,CAkBZ;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,SAAS,KAAK,EAAE,EACxB,UAAU,EAAE,eAAe,GAC1B,UAAU,CA+CZ;AAED,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,CAI5E;AAED,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,CAI5E;AAED,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,CAMzE;AAED,wBAAgB,6BAA6B,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,CAoB7E;AAED,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,eAAe,GAC1B,SAAS,CAYX;AAED,wBAAgB,6BAA6B,CAC3C,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,eAAe,GAC1B,SAAS,CAYX;AAED,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,SAAS,SAAS,EAAE,GAC/B,SAAS,GAAG,IAAI,CA8BlB;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CAC3C,UAAU,EAAE,SAAS,SAAS,EAAE,EAChC,OAAO,GAAE;IACP,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAClB,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,UAAU,EAAE,MAAM,KACf,MAAM,GAAG,MAAM,CAAC;CACjB,GACL,SAAS,EAAE,CAkCb"}
@@ -6,6 +6,11 @@ export interface DecodedDetectionMask {
6
6
  readonly data: Uint8Array;
7
7
  }
8
8
  export declare function copySortedDetectionFrames(detectionFrames: readonly DetectionFrame[] | undefined): DetectionFrame[];
9
+ /**
10
+ * One frame's deep copy, for a caller that already knows which frames it is
11
+ * keeping and only needs the ones it does not hold.
12
+ */
13
+ export declare function copyDetectionFrame(frame: DetectionFrame): DetectionFrame;
9
14
  export declare function validateDetectionFrames(detectionFrames: readonly DetectionFrame[]): void;
10
15
  export declare function filterDetectionFramesForRange(detectionFrames: readonly DetectionFrame[], startTime: number, endTime: number): DetectionFrame[];
11
16
  export declare function selectDetectionFrame(detectionFrames: readonly DetectionFrame[], mediaTime: number, options?: DetectionFrameSelectionOptions): DetectionFrame | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"detection-frames.d.ts","sourceRoot":"","sources":["../../src/utils/detection-frames.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,aAAa,EACnB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAEL,KAAK,8BAA8B,EACpC,MAAM,2BAA2B,CAAC;AAEnC,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;CAC3B;AAOD,wBAAgB,yBAAyB,CACvC,eAAe,EAAE,SAAS,cAAc,EAAE,GAAG,SAAS,GACrD,cAAc,EAAE,CAgDlB;AAmCD,wBAAgB,uBAAuB,CACrC,eAAe,EAAE,SAAS,cAAc,EAAE,GACzC,IAAI,CA2IN;AAsDD,wBAAgB,6BAA6B,CAC3C,eAAe,EAAE,SAAS,cAAc,EAAE,EAC1C,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GACd,cAAc,EAAE,CAIlB;AAED,wBAAgB,oBAAoB,CAClC,eAAe,EAAE,SAAS,cAAc,EAAE,EAC1C,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,8BAAmC,GAC3C,cAAc,GAAG,SAAS,CAe5B;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,aAAa,GAClB,oBAAoB,CAkCtB;AAoFD,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,cAAc,EACrB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,WAOhB;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,MAAM,YA4BvD;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,UA0BlE"}
1
+ {"version":3,"file":"detection-frames.d.ts","sourceRoot":"","sources":["../../src/utils/detection-frames.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,aAAa,EACnB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAEL,KAAK,8BAA8B,EACpC,MAAM,2BAA2B,CAAC;AAEnC,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;CAC3B;AAqBD,wBAAgB,yBAAyB,CACvC,eAAe,EAAE,SAAS,cAAc,EAAE,GAAG,SAAS,GACrD,cAAc,EAAE,CAMlB;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,cAAc,GAAG,cAAc,CA0CxE;AA2FD,wBAAgB,uBAAuB,CACrC,eAAe,EAAE,SAAS,cAAc,EAAE,GACzC,IAAI,CA8KN;AAmED,wBAAgB,6BAA6B,CAC3C,eAAe,EAAE,SAAS,cAAc,EAAE,EAC1C,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GACd,cAAc,EAAE,CAIlB;AAED,wBAAgB,oBAAoB,CAClC,eAAe,EAAE,SAAS,cAAc,EAAE,EAC1C,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,8BAAmC,GAC3C,cAAc,GAAG,SAAS,CAc5B;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,aAAa,GAClB,oBAAoB,CAkCtB;AAiJD,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,cAAc,EACrB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,WAOhB;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,MAAM,YA4BvD;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,UA0BlE"}
@@ -28,4 +28,13 @@ export declare function computeDetectionMaskRect(mask: DetectionMask): Rect | un
28
28
  export declare function detectMaskBorders(data: Uint8Array, width: number, height: number): Uint8Array;
29
29
  export declare function extractMaskContour(data: Uint8Array, width: number, height: number): readonly Point[] | undefined;
30
30
  export declare function extractMaskRectRuns(data: Uint8Array, width: number, height: number): readonly MaskRectRun[] | undefined;
31
+ /**
32
+ * The rect runs of a compressed-RLE mask, without holding the mask's raster.
33
+ *
34
+ * A mask is the size of the whole frame, so reading a silhouette that covers a
35
+ * fraction of one percent of it otherwise costs a megabytes-wide allocation and
36
+ * a pass over every pixel. The counts carry the occupied box, so the raster and
37
+ * the pass are that box.
38
+ */
39
+ export declare function extractDetectionMaskRectRuns(mask: DetectionMask): readonly MaskRectRun[] | undefined;
31
40
  //# sourceMappingURL=detection-masks.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"detection-masks.d.ts","sourceRoot":"","sources":["../../src/utils/detection-masks.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,KAAK,EACV,KAAK,IAAI,EACT,KAAK,WAAW,EACjB,MAAM,mBAAmB,CAAC;AAM3B,oBAAY,0BAA0B;IACpC,UAAU,eAAe;IACzB,cAAc,mBAAmB;CAClC;AAED,6EAA6E;AAC7E,MAAM,WAAW,6BAA6B;IAC5C,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;CAChC;AAED,MAAM,MAAM,WAAW,GAAG,WAAW,CAAC;AAEtC,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,MAAM,EAAE,IAAI,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;CAC9B;AAED,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,aAAa,CA6Bf;AAED,iFAAiF;AACjF,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,iBAAiB,CAmDnB;AAED,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,aAAa,EACnB,KAAK,CAAC,EAAE,6BAA6B,GACpC,MAAM,CAER;AAED,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,OAAO,GAAE;IACP,QAAQ,CAAC,KAAK,CAAC,EAAE,6BAA6B,CAAC;IAC/C,QAAQ,CAAC,MAAM,CAAC,EAAE,0BAA0B,CAAC;CACzC,GACL,aAAa,CAsBf;AAED,yEAAyE;AACzE,wBAAgB,oCAAoC,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE3E;AAED,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,IAAI,GAAG,IAAI,CAkCb;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,aAAa,GAClB,IAAI,GAAG,SAAS,CAIlB;AAED,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,UAAU,CA4BZ;AAED,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,SAAS,KAAK,EAAE,GAAG,SAAS,CA0B9B;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,SAAS,WAAW,EAAE,GAAG,SAAS,CAkDpC"}
1
+ {"version":3,"file":"detection-masks.d.ts","sourceRoot":"","sources":["../../src/utils/detection-masks.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,KAAK,EACV,KAAK,IAAI,EACT,KAAK,WAAW,EACjB,MAAM,mBAAmB,CAAC;AAO3B,oBAAY,0BAA0B;IACpC,UAAU,eAAe;IACzB,cAAc,mBAAmB;CAClC;AAED,6EAA6E;AAC7E,MAAM,WAAW,6BAA6B;IAC5C,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;CAChC;AAED,MAAM,MAAM,WAAW,GAAG,WAAW,CAAC;AAEtC,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,MAAM,EAAE,IAAI,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;CAC9B;AAED,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,aAAa,CA6Bf;AAED,iFAAiF;AACjF,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,iBAAiB,CAmDnB;AAED,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,aAAa,EACnB,KAAK,CAAC,EAAE,6BAA6B,GACpC,MAAM,CAER;AAED,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,OAAO,GAAE;IACP,QAAQ,CAAC,KAAK,CAAC,EAAE,6BAA6B,CAAC;IAC/C,QAAQ,CAAC,MAAM,CAAC,EAAE,0BAA0B,CAAC;CACzC,GACL,aAAa,CAsBf;AAED,yEAAyE;AACzE,wBAAgB,oCAAoC,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE3E;AAED,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,IAAI,GAAG,IAAI,CAkCb;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,aAAa,GAClB,IAAI,GAAG,SAAS,CAIlB;AAED,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,UAAU,CA4BZ;AAED,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,SAAS,KAAK,EAAE,GAAG,SAAS,CA0B9B;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,SAAS,WAAW,EAAE,GAAG,SAAS,CAIpC;AAED;;;;;;;GAOG;AACH,wBAAgB,4BAA4B,CAC1C,IAAI,EAAE,aAAa,GAClB,SAAS,WAAW,EAAE,GAAG,SAAS,CAwDpC"}
@@ -0,0 +1,18 @@
1
+ import type { DetectionFrameSourceVersionRange } from "#types/detection-timeline";
2
+ /**
3
+ * Slack allowed when comparing two range ends.
4
+ *
5
+ * Range bounds are computed from frame times and durations, so an end that
6
+ * should meet another exactly can miss it by a float's last bits.
7
+ */
8
+ export declare const RANGE_EPSILON_SECONDS = 0.000001;
9
+ /**
10
+ * Whether the available ranges together span the whole of `range`.
11
+ *
12
+ * Detections arrive a batch at a time, and a source that has not coalesced its
13
+ * ranges holds several that abut. Asking each range on its own whether it spans
14
+ * the window reports a window that is entirely covered as uncovered, so the
15
+ * walk below spends ranges in order and asks how far their union reaches.
16
+ */
17
+ export declare function isRangeCovered(range: DetectionFrameSourceVersionRange, availableRanges: readonly DetectionFrameSourceVersionRange[]): boolean;
18
+ //# sourceMappingURL=detection-ranges.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"detection-ranges.d.ts","sourceRoot":"","sources":["../../src/utils/detection-ranges.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,2BAA2B,CAAC;AAElF;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,WAAO,CAAC;AAE1C;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,gCAAgC,EACvC,eAAe,EAAE,SAAS,gCAAgC,EAAE,WA6B7D"}
@@ -1,5 +1,11 @@
1
1
  import type { MaskDrawInstruction } from "#types/mask-style";
2
- export declare const MAX_ID_MASK_PALETTE_ENTRIES = 64;
2
+ /**
3
+ * Palette slots an id raster can name, one of them the background. A GLSL
4
+ * fragment stage is guaranteed only 224 uniform vectors, and a palette entry
5
+ * costs 2.25 of them, so this stays a multiple of four and well inside that
6
+ * budget; past it a frame draws from the RGBA composite instead.
7
+ */
8
+ export declare const MAX_ID_MASK_PALETTE_ENTRIES = 80;
3
9
  export declare const MAX_ID_MASK_STROKE_WIDTH = 16;
4
10
  export interface IdMaskInstruction extends MaskDrawInstruction {
5
11
  readonly detectionIndex: number;
@@ -14,5 +20,12 @@ export interface IdMaskFrame {
14
20
  readonly strokeWidths: Float32Array<ArrayBuffer>;
15
21
  readonly width: number;
16
22
  }
17
- export declare function createIdMaskFrame(instructions: readonly IdMaskInstruction[]): IdMaskFrame | undefined;
23
+ export interface IdMaskFrameOptions {
24
+ /**
25
+ * Widest raster to cook. A value at or above the instructions' own width
26
+ * cooks at their width, and a smaller one keeps their aspect ratio.
27
+ */
28
+ readonly maxWidth?: number;
29
+ }
30
+ export declare function createIdMaskFrame(instructions: readonly IdMaskInstruction[], options?: IdMaskFrameOptions): IdMaskFrame | undefined;
18
31
  //# sourceMappingURL=id-mask-frame.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"id-mask-frame.d.ts","sourceRoot":"","sources":["../../src/utils/id-mask-frame.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAG7D,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAC9C,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAE3C,MAAM,WAAW,iBAAkB,SAAQ,mBAAmB;IAC5D,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;IACvC,QAAQ,CAAC,WAAW,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC;IAChD,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,aAAa,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC;IAClD,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC;IACjD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,SAAS,iBAAiB,EAAE,GACzC,WAAW,GAAG,SAAS,CA6EzB"}
1
+ {"version":3,"file":"id-mask-frame.d.ts","sourceRoot":"","sources":["../../src/utils/id-mask-frame.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAG7D;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAC9C,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAE3C,MAAM,WAAW,iBAAkB,SAAQ,mBAAmB;IAC5D,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;IACvC,QAAQ,CAAC,WAAW,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC;IAChD,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,aAAa,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC;IAClD,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC;IACjD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,SAAS,iBAAiB,EAAE,EAC1C,OAAO,GAAE,kBAAuB,GAC/B,WAAW,GAAG,SAAS,CAiFzB"}
@@ -0,0 +1,7 @@
1
+ export interface WaitBound {
2
+ readonly cancel: () => void;
3
+ /** Resolves false once `timeoutMs` has passed, so a race reads as unmet. */
4
+ readonly expired: Promise<false>;
5
+ }
6
+ export declare function startWaitBound(timeoutMs: number): WaitBound;
7
+ //# sourceMappingURL=wait-bound.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wait-bound.d.ts","sourceRoot":"","sources":["../../src/utils/wait-bound.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC;IAC5B,4EAA4E;IAC5E,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;CAClC;AAED,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAO3D"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "supervision",
3
- "version": "0.1.7",
3
+ "version": "0.2.0-next.0",
4
4
  "description": "Browser-native computer vision media rendering and annotation engine.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -36,10 +36,31 @@
36
36
  "types": "./dist/editing.d.ts",
37
37
  "import": "./dist/editing.js"
38
38
  },
39
+ "./web-video-engine": {
40
+ "types": "./dist/web-video-engine/index.d.ts",
41
+ "import": "./dist/web-video-engine/index.js",
42
+ "default": "./dist/web-video-engine/index.js"
43
+ },
44
+ "./web-video-engine/analysis": {
45
+ "types": "./dist/web-video-engine/analysis.d.ts",
46
+ "import": "./dist/web-video-engine/analysis.js",
47
+ "default": "./dist/web-video-engine/analysis.js"
48
+ },
49
+ "./web-video-engine/worker": "./dist/web-video-engine/engine.worker.js",
39
50
  "./render-preparation-worker": "./dist/mask-preparation.worker.js",
40
51
  "./detection-post-processing-worker": "./dist/tracking.worker.js"
41
52
  },
42
53
  "imports": {
54
+ "#web-video-engine": {
55
+ "types": "./dist/web-video-engine/engine.d.ts",
56
+ "import": "./dist/web-video-engine/engine.js",
57
+ "default": "./dist/web-video-engine/engine.js"
58
+ },
59
+ "#web-video-engine/analysis": {
60
+ "types": "./dist/web-video-engine/analysis.d.ts",
61
+ "import": "./dist/web-video-engine/analysis.js",
62
+ "default": "./dist/web-video-engine/analysis.js"
63
+ },
43
64
  "#editing/*": {
44
65
  "types": "./dist/editing/*.d.ts",
45
66
  "import": "./dist/editing/*.js"