supervision 0.2.0-next.0 → 0.2.0-next.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/dist/constants/media-renderer.d.ts +3 -0
- package/dist/constants/media-renderer.d.ts.map +1 -1
- package/dist/index.d.ts +5 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1722 -1395
- package/dist/index.js.map +1 -1
- package/dist/mask-preparation.worker.js +109 -31
- package/dist/mask-preparation.worker.js.map +1 -1
- package/dist/media/media-frame-clock.d.ts +4 -0
- package/dist/media/media-frame-clock.d.ts.map +1 -0
- package/dist/media/media-source-state.d.ts.map +1 -1
- package/dist/media/media-source.d.ts +6 -0
- package/dist/media/media-source.d.ts.map +1 -1
- package/dist/media/video-engine-media-source.d.ts +17 -7
- package/dist/media/video-engine-media-source.d.ts.map +1 -1
- package/dist/media/video-engine-media-source.js +3 -0
- package/dist/media/video-engine-media-source.js.map +1 -0
- package/dist/playback/media-playback-controller.d.ts +7 -1
- package/dist/playback/media-playback-controller.d.ts.map +1 -1
- package/dist/render-preparation/mask-frame-artifact.d.ts +2 -0
- package/dist/render-preparation/mask-frame-artifact.d.ts.map +1 -1
- package/dist/render-preparation/mask-frame-compositor.d.ts +7 -0
- package/dist/render-preparation/mask-frame-compositor.d.ts.map +1 -1
- package/dist/render-preparation/mask-preparation-worker-protocol.d.ts +1 -0
- package/dist/render-preparation/mask-preparation-worker-protocol.d.ts.map +1 -1
- package/dist/render-preparation/prepared-render-window.d.ts +21 -2
- package/dist/render-preparation/prepared-render-window.d.ts.map +1 -1
- package/dist/render-preparation/prepared-window-timeline.d.ts +1 -0
- package/dist/render-preparation/prepared-window-timeline.d.ts.map +1 -1
- package/dist/renderers/injected-pixi.d.ts +38 -0
- package/dist/renderers/injected-pixi.d.ts.map +1 -0
- package/dist/renderers/media-frame-navigation.d.ts +17 -0
- package/dist/renderers/media-frame-navigation.d.ts.map +1 -0
- package/dist/renderers/media-renderer-core.d.ts +9 -0
- package/dist/renderers/media-renderer-core.d.ts.map +1 -1
- package/dist/renderers/media-renderer-scene.d.ts +17 -5
- package/dist/renderers/media-renderer-scene.d.ts.map +1 -1
- package/dist/renderers/media-renderer-state.d.ts +9 -0
- package/dist/renderers/media-renderer-state.d.ts.map +1 -1
- package/dist/renderers/media-renderer-transport.d.ts +19 -3
- package/dist/renderers/media-renderer-transport.d.ts.map +1 -1
- package/dist/renderers/pixi-focus-layer.d.ts +1 -0
- package/dist/renderers/pixi-focus-layer.d.ts.map +1 -1
- package/dist/renderers/pixi-frame-present.d.ts +1 -1
- package/dist/renderers/pixi-frame-present.d.ts.map +1 -1
- package/dist/renderers/pixi-id-mask-shader.d.ts +4 -33
- package/dist/renderers/pixi-id-mask-shader.d.ts.map +1 -1
- package/dist/renderers/pixi-interaction-presentation-layer.d.ts +0 -1
- package/dist/renderers/pixi-interaction-presentation-layer.d.ts.map +1 -1
- package/dist/renderers/pixi-mask-halo.d.ts +4 -33
- package/dist/renderers/pixi-mask-halo.d.ts.map +1 -1
- package/dist/renderers/pixi-mask-layer.d.ts +28 -29
- package/dist/renderers/pixi-mask-layer.d.ts.map +1 -1
- package/dist/renderers/pixi-media-scene.d.ts.map +1 -1
- package/dist/renderers/pixi-polygon-layer.d.ts +2 -0
- package/dist/renderers/pixi-polygon-layer.d.ts.map +1 -1
- package/dist/renderers/pixi-region-coverage-mask.d.ts +4 -33
- package/dist/renderers/pixi-region-coverage-mask.d.ts.map +1 -1
- package/dist/renderers/pixi-region-layer.d.ts +6 -31
- package/dist/renderers/pixi-region-layer.d.ts.map +1 -1
- package/dist/renderers/pixi-shader-lifecycle.d.ts +14 -0
- package/dist/renderers/pixi-shader-lifecycle.d.ts.map +1 -0
- package/dist/renderers/prepared-annotation-window.d.ts.map +1 -1
- package/dist/renderers/presented-frame-channel.d.ts +34 -1
- package/dist/renderers/presented-frame-channel.d.ts.map +1 -1
- package/dist/sessions/media-session-defaults.d.ts.map +1 -1
- package/dist/sessions/media-session-detections.d.ts.map +1 -1
- package/dist/sessions/media-session-state.d.ts.map +1 -1
- package/dist/sessions/media-session.d.ts.map +1 -1
- package/dist/tracking.worker.js +19 -5
- package/dist/tracking.worker.js.map +1 -1
- package/dist/types/media-frame-clock.d.ts +16 -0
- package/dist/types/media-frame-clock.d.ts.map +1 -0
- package/dist/types/media-frame-navigation.d.ts +28 -0
- package/dist/types/media-frame-navigation.d.ts.map +1 -0
- package/dist/types/media-renderer-display.d.ts +12 -0
- package/dist/types/media-renderer-display.d.ts.map +1 -0
- package/dist/types/media-renderer.d.ts +13 -0
- package/dist/types/media-renderer.d.ts.map +1 -1
- package/dist/types/media-session.d.ts +35 -32
- package/dist/types/media-session.d.ts.map +1 -1
- package/dist/types/render-preparation.d.ts +78 -28
- package/dist/types/render-preparation.d.ts.map +1 -1
- package/dist/video-engine-media-source-DR-x1UfK.js +483 -0
- package/dist/video-engine-media-source-DR-x1UfK.js.map +1 -0
- package/dist/web-video-engine/analysis-session.d.ts +0 -1
- package/dist/web-video-engine/analysis.d.ts +0 -1
- package/dist/web-video-engine/analysis.js +211 -23
- package/dist/web-video-engine/cache-budget.d.ts +0 -1
- package/dist/web-video-engine/canvas-sink-scrub-cursor.d.ts +6 -2
- package/dist/web-video-engine/clock.d.ts +0 -1
- package/dist/web-video-engine/constants.d.ts +9 -1
- package/dist/web-video-engine/create-scrub-cursor.d.ts +6 -3
- package/dist/web-video-engine/decode-resolution.d.ts +0 -1
- package/dist/web-video-engine/decode-scheduler.d.ts +26 -5
- package/dist/web-video-engine/decode-session.d.ts +11 -1
- package/dist/web-video-engine/decode-source.d.ts +11 -1
- package/dist/web-video-engine/diagnostics-store.d.ts +0 -1
- package/dist/web-video-engine/diagnostics.d.ts +19 -19
- package/dist/web-video-engine/embedded-engine-worker.d.ts +0 -1
- package/dist/web-video-engine/engine-core.d.ts +31 -11
- package/dist/web-video-engine/engine.d.ts +3 -4
- package/dist/web-video-engine/engine.js +175 -44
- package/dist/web-video-engine/engine.worker.d.ts +0 -1
- package/dist/web-video-engine/engine.worker.js +5712 -2947
- package/dist/web-video-engine/frame-cache.d.ts +121 -12
- package/dist/web-video-engine/frame-extractor.d.ts +0 -1
- package/dist/web-video-engine/{frame-timeline-GINI8Gum.js → frame-timeline-DreEwsRY.js} +83 -27
- package/dist/web-video-engine/frame-timeline.d.ts +10 -1
- package/dist/web-video-engine/frame-walker.d.ts +0 -1
- package/dist/web-video-engine/index.d.ts +12 -2
- package/dist/web-video-engine/index.d.ts.map +1 -1
- package/dist/web-video-engine/index.js +2 -2
- package/dist/web-video-engine/key-packet.d.ts +0 -1
- package/dist/web-video-engine/keyframe-index.d.ts +0 -1
- package/dist/web-video-engine/mirror-store.d.ts +0 -1
- package/dist/web-video-engine/pausable-deadline.d.ts +11 -0
- package/dist/web-video-engine/renderer.d.ts +0 -1
- package/dist/web-video-engine/rotation.d.ts +0 -1
- package/dist/web-video-engine/scrub-controller.d.ts +8 -5
- package/dist/web-video-engine/scrub-cursor.d.ts +15 -7
- package/dist/web-video-engine/scrub-trajectory.d.ts +0 -1
- package/dist/web-video-engine/source-residency.d.ts +35 -1
- package/dist/web-video-engine/trace-recorder.d.ts +0 -1
- package/dist/web-video-engine/types.d.ts +18 -22
- package/dist/web-video-engine/video-engine.d.ts +39 -17
- package/dist/web-video-engine/webgpu-renderer.d.ts +0 -1
- package/dist/web-video-engine/worker-bridge.d.ts +0 -1
- package/dist/web-video-engine/worker-dispatch.d.ts +0 -1
- package/dist/web-video-engine/worker-protocol.d.ts +38 -15
- package/node_modules/supervision-js-core/dist/detections/buffered-detection-timeline.d.ts.map +1 -1
- package/node_modules/supervision-js-core/dist/index.d.ts +2 -2
- package/node_modules/supervision-js-core/dist/index.d.ts.map +1 -1
- package/node_modules/supervision-js-core/dist/index.js +182 -68
- package/node_modules/supervision-js-core/dist/index.js.map +1 -1
- package/node_modules/supervision-js-core/dist/types/detection-timeline.d.ts +20 -3
- package/node_modules/supervision-js-core/dist/types/detection-timeline.d.ts.map +1 -1
- package/node_modules/supervision-js-core/dist/types/media-rendering.d.ts +28 -26
- package/node_modules/supervision-js-core/dist/types/media-rendering.d.ts.map +1 -1
- package/node_modules/supervision-js-core/dist/types/session-lifecycle.d.ts +16 -0
- package/node_modules/supervision-js-core/dist/types/session-lifecycle.d.ts.map +1 -1
- package/node_modules/supervision-js-core/dist/utils/detection-masks.d.ts.map +1 -1
- package/node_modules/supervision-js-core/dist/utils/id-mask-frame.d.ts +19 -0
- package/node_modules/supervision-js-core/dist/utils/id-mask-frame.d.ts.map +1 -1
- package/package.json +3 -3
- package/dist/media/media-condition-probe.d.ts +0 -51
- package/dist/media/media-condition-probe.d.ts.map +0 -1
- package/dist/media/media-conditions.d.ts +0 -28
- package/dist/media/media-conditions.d.ts.map +0 -1
- package/dist/types/media-conditions.d.ts +0 -149
- package/dist/types/media-conditions.d.ts.map +0 -1
- package/dist/web-video-engine/analysis-session.d.ts.map +0 -1
- package/dist/web-video-engine/analysis.d.ts.map +0 -1
- package/dist/web-video-engine/analysis.js.map +0 -1
- package/dist/web-video-engine/cache-budget.d.ts.map +0 -1
- package/dist/web-video-engine/canvas-sink-scrub-cursor.d.ts.map +0 -1
- package/dist/web-video-engine/clock.d.ts.map +0 -1
- package/dist/web-video-engine/constants.d.ts.map +0 -1
- package/dist/web-video-engine/create-scrub-cursor.d.ts.map +0 -1
- package/dist/web-video-engine/decode-resolution.d.ts.map +0 -1
- package/dist/web-video-engine/decode-scheduler.d.ts.map +0 -1
- package/dist/web-video-engine/decode-session.d.ts.map +0 -1
- package/dist/web-video-engine/decode-source.d.ts.map +0 -1
- package/dist/web-video-engine/diagnostics-store.d.ts.map +0 -1
- package/dist/web-video-engine/diagnostics.d.ts.map +0 -1
- package/dist/web-video-engine/embedded-engine-worker.d.ts.map +0 -1
- package/dist/web-video-engine/engine-core.d.ts.map +0 -1
- package/dist/web-video-engine/engine.d.ts.map +0 -1
- package/dist/web-video-engine/engine.js.map +0 -1
- package/dist/web-video-engine/engine.worker.d.ts.map +0 -1
- package/dist/web-video-engine/engine.worker.js.map +0 -1
- package/dist/web-video-engine/frame-cache.d.ts.map +0 -1
- package/dist/web-video-engine/frame-extractor.d.ts.map +0 -1
- package/dist/web-video-engine/frame-timeline-GINI8Gum.js.map +0 -1
- package/dist/web-video-engine/frame-timeline.d.ts.map +0 -1
- package/dist/web-video-engine/frame-walker.d.ts.map +0 -1
- package/dist/web-video-engine/key-packet.d.ts.map +0 -1
- package/dist/web-video-engine/keyframe-index.d.ts.map +0 -1
- package/dist/web-video-engine/mirror-store.d.ts.map +0 -1
- package/dist/web-video-engine/renderer.d.ts.map +0 -1
- package/dist/web-video-engine/rotation.d.ts.map +0 -1
- package/dist/web-video-engine/scrub-controller.d.ts.map +0 -1
- package/dist/web-video-engine/scrub-cursor.d.ts.map +0 -1
- package/dist/web-video-engine/scrub-trajectory.d.ts.map +0 -1
- package/dist/web-video-engine/source-residency.d.ts.map +0 -1
- package/dist/web-video-engine/trace-recorder.d.ts.map +0 -1
- package/dist/web-video-engine/types.d.ts.map +0 -1
- package/dist/web-video-engine/video-engine.d.ts.map +0 -1
- package/dist/web-video-engine/webgpu-renderer.d.ts.map +0 -1
- package/dist/web-video-engine/worker-bridge.d.ts.map +0 -1
- package/dist/web-video-engine/worker-dispatch.d.ts.map +0 -1
- package/dist/web-video-engine/worker-protocol.d.ts.map +0 -1
|
@@ -148,6 +148,8 @@ export interface DetectionBufferOptions extends DetectionFrameSelectionOptions {
|
|
|
148
148
|
}
|
|
149
149
|
export interface DetectionTimelineContext {
|
|
150
150
|
readonly duration: number | null;
|
|
151
|
+
/** First playable timestamp on the same media clock as `duration`. */
|
|
152
|
+
readonly firstTimestamp?: number;
|
|
151
153
|
readonly loop: boolean;
|
|
152
154
|
}
|
|
153
155
|
/**
|
|
@@ -180,6 +182,9 @@ export interface DetectionPlaybackGateOptions {
|
|
|
180
182
|
* Detection lead required ahead of the playback time before an enabled gate
|
|
181
183
|
* lets playback continue. Defaults to none, which asks only that the frame
|
|
182
184
|
* about to be presented is covered.
|
|
185
|
+
*
|
|
186
|
+
* The render-preparation gate has a field with the same name, but there it is
|
|
187
|
+
* a ceiling that can shorten a preparation stop rather than a coverage floor.
|
|
183
188
|
*/
|
|
184
189
|
readonly requiredAheadSeconds?: number;
|
|
185
190
|
/**
|
|
@@ -220,9 +225,9 @@ export interface DetectionFrameRetentionOptions {
|
|
|
220
225
|
/**
|
|
221
226
|
* Per-call preparation context.
|
|
222
227
|
*
|
|
223
|
-
*
|
|
224
|
-
*
|
|
225
|
-
*
|
|
228
|
+
* A gated prepare reads `duration` and `firstTimestamp` to bound coverage at
|
|
229
|
+
* the end of media. They also remain per-call fallbacks for timelines whose
|
|
230
|
+
* host has not supplied the complete clock through
|
|
226
231
|
* {@link BufferedDetectionTimeline.setTimelineContext}.
|
|
227
232
|
*/
|
|
228
233
|
export interface DetectionBufferPrepareOptions {
|
|
@@ -407,6 +412,18 @@ export interface ChunkedDetectionFrameSourceOptions {
|
|
|
407
412
|
*/
|
|
408
413
|
export interface BufferedDetectionTimeline {
|
|
409
414
|
prepare(mediaTime: number, options?: DetectionBufferPrepareOptions): Promise<void>;
|
|
415
|
+
/**
|
|
416
|
+
* Whether `prepare(mediaTime)` still has to put or keep that time in the hot
|
|
417
|
+
* buffer.
|
|
418
|
+
*
|
|
419
|
+
* Source coverage and hot-buffer coverage are separate: a finite source can
|
|
420
|
+
* advertise its complete range while the currently loaded window is
|
|
421
|
+
* elsewhere. An older load can also be about to replace a buffer that still
|
|
422
|
+
* answers the requested time. Push renderers use this answer to keep a newly
|
|
423
|
+
* presented frame behind its matching detections without preparing every
|
|
424
|
+
* already-hot frame.
|
|
425
|
+
*/
|
|
426
|
+
needsBufferPrepare?(mediaTime: number): boolean;
|
|
410
427
|
/**
|
|
411
428
|
* Whether a gated `prepare` at `mediaTime` would wait, answered without
|
|
412
429
|
* starting the wait.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detection-timeline.d.ts","sourceRoot":"","sources":["../../src/types/detection-timeline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EACxB,cAAc,EACf,MAAM,mBAAmB,CAAC;AAE3B,oBAAY,qBAAqB;IAC/B,IAAI,SAAS;IACb,OAAO,YAAY;IACnB;;;;OAIG;IACH,gBAAgB,qBAAqB;IACrC,KAAK,UAAU;IACf,KAAK,UAAU;IACf,SAAS,cAAc;CACxB;AAED;;GAEG;AACH,oBAAY,2BAA2B;IACrC;;;;;;;;;;;;;OAaG;IACH,QAAQ,aAAa;IAErB;;;;;;;;;;;;OAYG;IACH,iBAAiB,sBAAsB;CACxC;AAED,MAAM,WAAW,8BAA8B;IAC7C;;OAEG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,2BAA2B,CAAC;IACrD;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;;;OAMG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC;CACxC;AAED,MAAM,WAAW,gCAAgC;IAC/C;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;GAMG;AACH,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,SAAS,gCAAgC,EAAE,CAAC;IAC7D,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;CAClC;AAED,MAAM,WAAW,sBAAuB,SAAQ,8BAA8B;IAC5E;;;;;;;;;;;;;;OAcG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,CAAC,MAAM,OAAO,CAAC,CAAC;IAC7C;;OAEG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IACrC;;OAEG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IACtC;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IACzC;;;;;;;;;;;;;;;;OAgBG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,4BAA4B,CAAC;CACtD;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;CACxB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,4BAA4B;IAC3C;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B
|
|
1
|
+
{"version":3,"file":"detection-timeline.d.ts","sourceRoot":"","sources":["../../src/types/detection-timeline.ts"],"names":[],"mappings":"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"}
|
|
@@ -46,7 +46,7 @@ export declare enum MediaRendererPlaybackState {
|
|
|
46
46
|
* kinds may be added over time, so treat unrecognized values like `Unknown`.
|
|
47
47
|
*/
|
|
48
48
|
export declare enum MediaErrorKind {
|
|
49
|
-
/** The media could not be opened or read
|
|
49
|
+
/** The media could not be opened or read, or was refused before any read. */
|
|
50
50
|
Unreadable = "unreadable",
|
|
51
51
|
/** The container or codec is not supported by this platform. */
|
|
52
52
|
UnsupportedFormat = "unsupportedFormat",
|
|
@@ -132,6 +132,12 @@ export interface MediaRendererAssetError {
|
|
|
132
132
|
*/
|
|
133
133
|
export interface MediaSourceState {
|
|
134
134
|
readonly status: MediaSourceStatus;
|
|
135
|
+
/**
|
|
136
|
+
* True while the renderer is waiting on a read it cannot draw without.
|
|
137
|
+
* Prefetch that runs behind a moving picture is not a wait and leaves this
|
|
138
|
+
* false, so this is set only where the picture has stopped for the source.
|
|
139
|
+
*/
|
|
140
|
+
readonly awaitingRead?: boolean;
|
|
135
141
|
readonly canRead: boolean | null;
|
|
136
142
|
readonly formatName: string | null;
|
|
137
143
|
readonly formatMimeType: string | null;
|
|
@@ -153,8 +159,7 @@ export interface MediaSourceState {
|
|
|
153
159
|
* Stable failure classification when `status` is `Error`, otherwise `null`.
|
|
154
160
|
*
|
|
155
161
|
* Prefer this over `errorMessage` for control flow. Messages are diagnostic
|
|
156
|
-
* text and may name vendor internals.
|
|
157
|
-
* against the previous shape stay assignable.
|
|
162
|
+
* text and may name vendor internals.
|
|
158
163
|
*/
|
|
159
164
|
readonly errorKind?: MediaErrorKind | null;
|
|
160
165
|
}
|
|
@@ -167,8 +172,8 @@ export interface MediaSourceState {
|
|
|
167
172
|
* A source the renderer pulls samples from can be held between any two frames,
|
|
168
173
|
* because the renderer decides when each one is drawn. A source that presents
|
|
169
174
|
* its own frames owns the playhead, so holding it means stopping the producer
|
|
170
|
-
* and starting it again,
|
|
171
|
-
*
|
|
175
|
+
* and starting it again, and a gate that stops one has to bound its own wait
|
|
176
|
+
* or a producer nothing answers for never runs again.
|
|
172
177
|
*/
|
|
173
178
|
export declare enum PlaybackGateReach {
|
|
174
179
|
/** No gate: the picture moves and unprepared layers are absent from it. */
|
|
@@ -177,14 +182,18 @@ export declare enum PlaybackGateReach {
|
|
|
177
182
|
* Playback waits to begin, and stops again at any frame whose artifacts are
|
|
178
183
|
* missing, until they arrive or the gate's own wait bound gives up on them.
|
|
179
184
|
*/
|
|
180
|
-
EveryFrame = "everyFrame"
|
|
181
|
-
/** Playback waits to begin; frames after that are not held. */
|
|
182
|
-
StartOfPlayback = "startOfPlayback"
|
|
185
|
+
EveryFrame = "everyFrame"
|
|
183
186
|
}
|
|
184
187
|
export interface MediaRendererState {
|
|
185
188
|
readonly rendererBackend: string | null;
|
|
186
189
|
readonly playbackState: MediaRendererPlaybackState;
|
|
187
190
|
readonly fit: MediaRendererFit;
|
|
191
|
+
/**
|
|
192
|
+
* Media time of the pixels currently composited, or `null` before the first
|
|
193
|
+
* frame reaches the scene. Unlike `currentTime`, this does not move when a
|
|
194
|
+
* producer advances its playhead ahead of the picture under load.
|
|
195
|
+
*/
|
|
196
|
+
readonly presentedTime?: number | null;
|
|
188
197
|
readonly currentTime: number;
|
|
189
198
|
readonly playbackRate: number;
|
|
190
199
|
readonly duration: number | null;
|
|
@@ -196,25 +205,24 @@ export interface MediaRendererState {
|
|
|
196
205
|
readonly activeDetectionCount: number;
|
|
197
206
|
/**
|
|
198
207
|
* Detection frame the mask raster on screen belongs to, null when no mask is
|
|
199
|
-
* up.
|
|
200
|
-
*
|
|
201
|
-
* than that.
|
|
202
|
-
*
|
|
203
|
-
* Optional so a host holding a state it built before this field existed still
|
|
204
|
-
* satisfies the type.
|
|
208
|
+
* up. A renderer should either name `activeDetectionFrameTime` or draw no
|
|
209
|
+
* raster; another value exposes a presentation invariant breach.
|
|
205
210
|
*/
|
|
206
211
|
readonly drawnMaskFrameTime?: number | null;
|
|
207
212
|
/**
|
|
208
|
-
* How far the playback
|
|
209
|
-
* The same option means different things to the two kinds of source, and this
|
|
210
|
-
* reports which one a host got.
|
|
213
|
+
* How far the active playback gates reach on the source this renderer opened.
|
|
211
214
|
*/
|
|
212
215
|
readonly playbackGateReach?: PlaybackGateReach;
|
|
216
|
+
/**
|
|
217
|
+
* The render-preparation gate stopped playback for artifacts that never
|
|
218
|
+
* arrived and gave up on them, so the picture is moving without them. False
|
|
219
|
+
* again once preparation covers the playhead.
|
|
220
|
+
*/
|
|
221
|
+
readonly renderPreparationGateAbandoned?: boolean;
|
|
213
222
|
/**
|
|
214
223
|
* Whether the raster on screen belongs to a frame other than the one the rest
|
|
215
|
-
* of the annotations were drawn from
|
|
216
|
-
*
|
|
217
|
-
* for a frame instead.
|
|
224
|
+
* of the annotations were drawn from. Renderers report the mismatch instead
|
|
225
|
+
* of hiding it so diagnostics can fail loudly.
|
|
218
226
|
*/
|
|
219
227
|
readonly maskHeldStale?: boolean;
|
|
220
228
|
/**
|
|
@@ -234,18 +242,12 @@ export interface MediaRendererState {
|
|
|
234
242
|
* needs "is the right picture up" should compare the presented frame's own
|
|
235
243
|
* media time; reading a position the instant a seek resolves can return a
|
|
236
244
|
* 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
245
|
*/
|
|
241
246
|
readonly seeking?: boolean;
|
|
242
247
|
/**
|
|
243
248
|
* Whether a drag is open on the playhead. True from the first scrub of a
|
|
244
249
|
* gesture until the seek that lands it, which is what separates a viewer
|
|
245
250
|
* 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
251
|
*/
|
|
250
252
|
readonly scrubbing?: boolean;
|
|
251
253
|
readonly detectionBuffer: DetectionBufferState;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"media-rendering.d.ts","sourceRoot":"","sources":["../../src/types/media-rendering.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE,oBAAY,gBAAgB;IAC1B;;OAEG;IACH,OAAO,YAAY;IACnB;;OAEG;IACH,KAAK,UAAU;CAChB;AAED;;GAEG;AACH,oBAAY,0BAA0B;IACpC,OAAO,YAAY;IACnB,KAAK,UAAU;IACf,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,SAAS,cAAc;CACxB;AAED;;;;;;GAMG;AACH,oBAAY,cAAc;IACxB,
|
|
1
|
+
{"version":3,"file":"media-rendering.d.ts","sourceRoot":"","sources":["../../src/types/media-rendering.ts"],"names":[],"mappings":"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"}
|
|
@@ -47,7 +47,23 @@ export declare enum MediaSessionActivityKind {
|
|
|
47
47
|
Error = "error",
|
|
48
48
|
MediaNormalizing = "mediaNormalizing",
|
|
49
49
|
MediaOpening = "mediaOpening",
|
|
50
|
+
/**
|
|
51
|
+
* The picture is waiting on media the source has not handed over yet, which
|
|
52
|
+
* is the bytes and their decode rather than anything downstream of them.
|
|
53
|
+
* `PlaybackBuffering` is what a transport reports once it has already
|
|
54
|
+
* stopped; this is reported from the read itself, including the reads a seek
|
|
55
|
+
* makes while the transport still reads as paused.
|
|
56
|
+
*/
|
|
57
|
+
MediaSourceReading = "mediaSourceReading",
|
|
50
58
|
PlaybackBuffering = "playbackBuffering",
|
|
59
|
+
/**
|
|
60
|
+
* The render-preparation gate held the picture for artifacts that never
|
|
61
|
+
* arrived and let it go. Nothing is blocked: the frames reaching the screen
|
|
62
|
+
* are the ones whose artifacts were given up on. What is waited on is
|
|
63
|
+
* preparation finishing another frame, which is what lets the gate hold the
|
|
64
|
+
* picture again; `RenderPreparing` covers the holds that are running.
|
|
65
|
+
*/
|
|
66
|
+
RenderPreparationAbandoned = "renderPreparationAbandoned",
|
|
51
67
|
RenderPreparing = "renderPreparing"
|
|
52
68
|
}
|
|
53
69
|
/**
|
|
@@ -1 +1 @@
|
|
|
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
|
+
{"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;;;;;;OAMG;IACH,kBAAkB,uBAAuB;IACzC,iBAAiB,sBAAsB;IACvC;;;;;;OAMG;IACH,0BAA0B,+BAA+B;IACzD,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-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;
|
|
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,CAalB;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,CAiDpC"}
|
|
@@ -16,6 +16,8 @@ export interface IdMaskFrame {
|
|
|
16
16
|
readonly hasStroke: boolean;
|
|
17
17
|
readonly height: number;
|
|
18
18
|
readonly maxStrokeWidth: number;
|
|
19
|
+
/** The frame-wide mask width every stroke on this raster is scaled against. */
|
|
20
|
+
readonly sourceWidth: number;
|
|
19
21
|
readonly strokePalette: Float32Array<ArrayBuffer>;
|
|
20
22
|
readonly strokeWidths: Float32Array<ArrayBuffer>;
|
|
21
23
|
readonly width: number;
|
|
@@ -28,4 +30,21 @@ export interface IdMaskFrameOptions {
|
|
|
28
30
|
readonly maxWidth?: number;
|
|
29
31
|
}
|
|
30
32
|
export declare function createIdMaskFrame(instructions: readonly IdMaskInstruction[], options?: IdMaskFrameOptions): IdMaskFrame | undefined;
|
|
33
|
+
/**
|
|
34
|
+
* A stroke is measured in texels of the raster it is drawn on, so a coarser
|
|
35
|
+
* raster measures it in coarser texels. A stroke of a texel or more keeps at
|
|
36
|
+
* least one, the thinnest line the shader can draw; a narrower one keeps its
|
|
37
|
+
* own width, which the shader draws as an inner boundary at any scale. The
|
|
38
|
+
* ceiling is the widest neighbourhood the shaders scan, so a wider stroke would
|
|
39
|
+
* be drawn at the ceiling anyway and every layer drawing the same annotation
|
|
40
|
+
* has to arrive at the same width.
|
|
41
|
+
*/
|
|
42
|
+
export declare function resolveIdMaskStrokeTexels(strokeWidth: number, maskWidth: number, rasterWidth: number): number;
|
|
43
|
+
/**
|
|
44
|
+
* The palette slot a detection index names, or undefined when the palette has
|
|
45
|
+
* no slot for it. Slot zero is the background, so the ids start at one and the
|
|
46
|
+
* last detection the palette can name sits one index below the last slot.
|
|
47
|
+
*/
|
|
48
|
+
export declare function resolveIdMaskPaletteId(detectionIndex: number): number | undefined;
|
|
49
|
+
export declare function writeIdMaskPaletteEntry(palette: Float32Array, detectionMaskId: number, color: number, alpha: number): void;
|
|
31
50
|
//# 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;;;;;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,
|
|
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,+EAA+E;IAC/E,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,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,CA+EzB;AAsGD;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CACvC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,UAQpB;AAmCD;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,cAAc,EAAE,MAAM,sBAM5D;AAED,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,YAAY,EACrB,eAAe,EAAE,MAAM,EACvB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,QAQd"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "supervision",
|
|
3
|
-
"version": "0.2.0-next.
|
|
3
|
+
"version": "0.2.0-next.2",
|
|
4
4
|
"description": "Browser-native computer vision media rendering and annotation engine.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -119,8 +119,8 @@
|
|
|
119
119
|
"typecheck": "tsc --noEmit -p tsconfig.json && tsc --noEmit -p tsconfig.test.json"
|
|
120
120
|
},
|
|
121
121
|
"dependencies": {
|
|
122
|
-
"mediabunny": "^1.
|
|
123
|
-
"pixi.js": "^8.
|
|
122
|
+
"mediabunny": "^1.55.5",
|
|
123
|
+
"pixi.js": "^8.20.1",
|
|
124
124
|
"supervision-js-core": "0.0.0"
|
|
125
125
|
},
|
|
126
126
|
"bundleDependencies": [
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { MediaIndexPlacement, type MediaConditionPolicy, type MediaConditionReport, type MediaTimingFacts } from "#types/media-conditions";
|
|
2
|
-
/** Bytes at `[start, end)`, however the caller gets them. */
|
|
3
|
-
export type MediaByteReader = (start: number, end: number) => Promise<Uint8Array>;
|
|
4
|
-
export interface MediaConditionProbeOptions extends MediaConditionPolicy {
|
|
5
|
-
/**
|
|
6
|
-
* How many packets of the track to measure timing over. The walk reads
|
|
7
|
-
* metadata only: on an ISO base media file the sample table is already in
|
|
8
|
-
* memory once the file opens, so raising this costs processing rather than
|
|
9
|
-
* bytes; on Matroska and MPEG-TS there is no such table and every packet
|
|
10
|
-
* costs a read of the media data itself.
|
|
11
|
-
*/
|
|
12
|
-
readonly samplePackets?: number;
|
|
13
|
-
/**
|
|
14
|
-
* Whether the bytes stand for a file that will be opened over a link. It is
|
|
15
|
-
* what makes a trailing index cost anything, and a probe run against a
|
|
16
|
-
* downloaded copy of a remote file has to be told.
|
|
17
|
-
*/
|
|
18
|
-
readonly remote?: boolean;
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Measures a source once and says which conversion conditions hold.
|
|
22
|
-
*
|
|
23
|
-
* Deliberately cheap, because "convert only when necessary" is worth nothing if
|
|
24
|
-
* finding out costs what converting would. Nothing here decodes a frame or
|
|
25
|
-
* reads a byte of media data on an indexed container: the container's own box
|
|
26
|
-
* headers answer where the index sits, and the packet walk runs metadata-only
|
|
27
|
-
* over a bounded prefix.
|
|
28
|
-
*/
|
|
29
|
-
export declare function probeMediaConditions(source: Blob, options?: MediaConditionProbeOptions): Promise<MediaConditionReport>;
|
|
30
|
-
/**
|
|
31
|
-
* Where an ISO base media file keeps its frame index, read from the top-level
|
|
32
|
-
* box headers alone.
|
|
33
|
-
*
|
|
34
|
-
* Each header states the size of its own box, so the walk hops from one to the
|
|
35
|
-
* next and never reads a box's contents: eight to sixteen bytes per box, and no
|
|
36
|
-
* more boxes than it takes to see `moov` or `moof`. Over a link that is a
|
|
37
|
-
* handful of range requests whatever the file weighs.
|
|
38
|
-
*/
|
|
39
|
-
export declare function readIndexPlacement(read: MediaByteReader, size: number): Promise<MediaIndexPlacement>;
|
|
40
|
-
/**
|
|
41
|
-
* Turns a walk of packet timestamps into the timing facts, in ticks.
|
|
42
|
-
*
|
|
43
|
-
* Decode order is not presentation order, so the table is sorted before its
|
|
44
|
-
* gaps are read. A walk that stopped at the cap has read every packet up to a
|
|
45
|
-
* decode position and no further, which leaves the tail of the sorted table
|
|
46
|
-
* missing frames that sit between ones it did read; the deepest reordering seen
|
|
47
|
-
* bounds how much of that tail is untrustworthy, and it is dropped. A walk that
|
|
48
|
-
* ran to the end of the track has no such tail.
|
|
49
|
-
*/
|
|
50
|
-
export declare function summarizeTiming(decodeOrderTicks: readonly number[], tickRate: number, sampleComplete: boolean): MediaTimingFacts;
|
|
51
|
-
//# sourceMappingURL=media-condition-probe.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"media-condition-probe.d.ts","sourceRoot":"","sources":["../../src/media/media-condition-probe.ts"],"names":[],"mappings":"AACA,OAAO,EACL,mBAAmB,EAEnB,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACtB,MAAM,yBAAyB,CAAC;AAEjC,6DAA6D;AAC7D,MAAM,MAAM,eAAe,GAAG,CAC5B,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,KACR,OAAO,CAAC,UAAU,CAAC,CAAC;AAEzB,MAAM,WAAW,0BAA2B,SAAQ,oBAAoB;IACtE;;;;;;OAMG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC;;;;OAIG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;CAC3B;AAWD;;;;;;;;GAQG;AACH,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,IAAI,EACZ,OAAO,GAAE,0BAA+B,GACvC,OAAO,CAAC,oBAAoB,CAAC,CAyB/B;AAED;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,eAAe,EACrB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,mBAAmB,CAAC,CAiE9B;AAkGD;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAC7B,gBAAgB,EAAE,SAAS,MAAM,EAAE,EACnC,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,OAAO,GACtB,gBAAgB,CA2BlB"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { type ConversionFrameEffectReport, type MediaConditionFacts, type MediaConditionPolicy, type MediaConditionReport, type MediaTimingFacts } from "#types/media-conditions";
|
|
2
|
-
import { type MediaNormalizationVideoOptions } from "#types/media-normalization";
|
|
3
|
-
/**
|
|
4
|
-
* Which conditions a source's measured facts hold, and what to do about each.
|
|
5
|
-
*
|
|
6
|
-
* Pure: everything it reasons over was measured once by the probe. The two
|
|
7
|
-
* verdicts are separate because the conditions are: a source whose frames do
|
|
8
|
-
* not arrive on a steady grid plays perfectly and cannot be addressed by frame
|
|
9
|
-
* index, and answering that with one verdict would either refuse a clip that
|
|
10
|
-
* plays or hand out indices that name the wrong picture.
|
|
11
|
-
*/
|
|
12
|
-
export declare function evaluateMediaConditions(facts: MediaConditionFacts, policy?: MediaConditionPolicy): MediaConditionReport;
|
|
13
|
-
/**
|
|
14
|
-
* What a conversion would do to the frame sequence, judged against the options
|
|
15
|
-
* as {@link normalizeMedia} will actually run them rather than as they were
|
|
16
|
-
* written: leaving the rate unstated does not keep the source's timing here,
|
|
17
|
-
* it takes the 30 hertz default.
|
|
18
|
-
*
|
|
19
|
-
* A stated rate is only safe on a source that already runs at exactly that
|
|
20
|
-
* rate. On anything else the conversion writes a different number of pictures
|
|
21
|
-
* at different times, and a detection carrying a source frame index then names
|
|
22
|
-
* a picture that was never at that position.
|
|
23
|
-
*/
|
|
24
|
-
export declare function describeConversionFrameEffect(options: {
|
|
25
|
-
readonly video?: MediaNormalizationVideoOptions;
|
|
26
|
-
readonly timing?: MediaTimingFacts | null;
|
|
27
|
-
}): ConversionFrameEffectReport;
|
|
28
|
-
//# sourceMappingURL=media-conditions.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"media-conditions.d.ts","sourceRoot":"","sources":["../../src/media/media-conditions.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,2BAA2B,EAEhC,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACtB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAEL,KAAK,8BAA8B,EACpC,MAAM,4BAA4B,CAAC;AAoBpC;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,mBAAmB,EAC1B,MAAM,GAAE,oBAAyB,GAChC,oBAAoB,CA2FtB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,6BAA6B,CAAC,OAAO,EAAE;IACrD,QAAQ,CAAC,KAAK,CAAC,EAAE,8BAA8B,CAAC;IAChD,QAAQ,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;CAC3C,GAAG,2BAA2B,CA4C9B"}
|
|
@@ -1,149 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Where a container keeps the table that says which byte range holds which
|
|
3
|
-
* frame.
|
|
4
|
-
*/
|
|
5
|
-
export declare enum MediaIndexPlacement {
|
|
6
|
-
/** Before the media data, so an open reads it in the first bytes. */
|
|
7
|
-
Front = "front",
|
|
8
|
-
/** After the media data, so an open over a link seeks to the end first. */
|
|
9
|
-
End = "end",
|
|
10
|
-
/** One index per fragment, spread through the file. */
|
|
11
|
-
Fragmented = "fragmented",
|
|
12
|
-
/** Not an ISO base media file, which is the only layout this probe reads. */
|
|
13
|
-
Unknown = "unknown"
|
|
14
|
-
}
|
|
15
|
-
/** A fact about a source that conversion could be a response to. */
|
|
16
|
-
export declare enum MediaConditionCode {
|
|
17
|
-
/** The demuxer does not read this file's container. */
|
|
18
|
-
ContainerUnreadable = "containerUnreadable",
|
|
19
|
-
/** The container opened and the demuxer parsed no track out of it. */
|
|
20
|
-
VideoTrackUnreadable = "videoTrackUnreadable",
|
|
21
|
-
/** The container's tracks read and none of them carries video. */
|
|
22
|
-
NoVideoTrack = "noVideoTrack",
|
|
23
|
-
/** A video track the demuxer cannot name a codec for, so no decoder can be
|
|
24
|
-
* configured for it whatever the browser supports. */
|
|
25
|
-
CodecUnnamed = "codecUnnamed",
|
|
26
|
-
/** The codec is named and this browser has no decoder for it. */
|
|
27
|
-
CodecUndecodable = "codecUndecodable",
|
|
28
|
-
/**
|
|
29
|
-
* Frames do not arrive on a steady grid: two share a presentation timestamp,
|
|
30
|
-
* or the gaps between them take more values than a timebase's own rounding
|
|
31
|
-
* explains. Frame indices reconstructed as `round(time * rate)` name the
|
|
32
|
-
* wrong frame on such a source.
|
|
33
|
-
*/
|
|
34
|
-
UnstableFrameTiming = "unstableFrameTiming",
|
|
35
|
-
/** The frame index sits after the media data, so opening over a link pays a
|
|
36
|
-
* seek to the end of the file before the first frame. */
|
|
37
|
-
IndexAtEnd = "indexAtEnd",
|
|
38
|
-
/** The file carries one index per fragment rather than one for the whole. */
|
|
39
|
-
IndexFragmented = "indexFragmented",
|
|
40
|
-
/** The first frame's presentation timestamp is not zero, so media time and
|
|
41
|
-
* elapsed time are different numbers on this source. */
|
|
42
|
-
NonZeroStart = "nonZeroStart"
|
|
43
|
-
}
|
|
44
|
-
/** What a condition stands in the way of. */
|
|
45
|
-
export declare enum MediaConditionScope {
|
|
46
|
-
/** Getting a picture on screen at all. */
|
|
47
|
-
Playback = "playback",
|
|
48
|
-
/** Naming the frame on screen by index, which is how detections are paired. */
|
|
49
|
-
FrameIndexing = "frameIndexing"
|
|
50
|
-
}
|
|
51
|
-
/** What to do about a condition. */
|
|
52
|
-
export declare enum MediaConditionResponse {
|
|
53
|
-
/** Open the source as it is. */
|
|
54
|
-
None = "none",
|
|
55
|
-
/** Copy the coded frames into another container without re-encoding them. */
|
|
56
|
-
RemuxFirst = "remuxFirst",
|
|
57
|
-
/** Re-encode, and open the result once it is finished. */
|
|
58
|
-
ConvertFirst = "convertFirst",
|
|
59
|
-
/** Re-encode, and open the prefix as it is written. */
|
|
60
|
-
ConvertProgressively = "convertProgressively",
|
|
61
|
-
/** Do not open it, and say why. */
|
|
62
|
-
Refuse = "refuse"
|
|
63
|
-
}
|
|
64
|
-
/** Whether a response leaves the frame sequence detections index intact. */
|
|
65
|
-
export declare enum ConversionFrameEffect {
|
|
66
|
-
/** Every source frame comes out, at its own presentation time. */
|
|
67
|
-
Preserved = "preserved",
|
|
68
|
-
/** The output carries a different frame sequence from the source, so a
|
|
69
|
-
* detection indexed against the source names a different picture. */
|
|
70
|
-
Resampled = "resampled"
|
|
71
|
-
}
|
|
72
|
-
/** What the container's own layout says, read from its box headers. */
|
|
73
|
-
export interface MediaContainerFacts {
|
|
74
|
-
readonly indexPlacement: MediaIndexPlacement;
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* Frame timing measured over a bounded prefix of the track's packets, in the
|
|
78
|
-
* container's own integer tick grain.
|
|
79
|
-
*/
|
|
80
|
-
export interface MediaTimingFacts {
|
|
81
|
-
readonly tickRate: number;
|
|
82
|
-
readonly sampledPacketCount: number;
|
|
83
|
-
/** True when the sample reached the end of the track rather than the cap, so
|
|
84
|
-
* the verdict covers every frame rather than a prefix. */
|
|
85
|
-
readonly sampleComplete: boolean;
|
|
86
|
-
/** Pairs of frames sharing one presentation timestamp. */
|
|
87
|
-
readonly duplicateTimestampCount: number;
|
|
88
|
-
/** How many different gaps separate neighbouring frames. A constant-rate
|
|
89
|
-
* source has one, or two where the timebase cannot state the rate exactly. */
|
|
90
|
-
readonly distinctGapCount: number;
|
|
91
|
-
readonly minGapTicks: number;
|
|
92
|
-
readonly medianGapTicks: number;
|
|
93
|
-
readonly maxGapTicks: number;
|
|
94
|
-
readonly firstTimestampTicks: number;
|
|
95
|
-
}
|
|
96
|
-
/** Everything the conditions are read from. Held as data so the reasoning is
|
|
97
|
-
* pure: the probe measures a source once and passes the facts in. */
|
|
98
|
-
export interface MediaConditionFacts {
|
|
99
|
-
/** Null when the container never opened. */
|
|
100
|
-
readonly container: MediaContainerFacts | null;
|
|
101
|
-
readonly trackCount: number;
|
|
102
|
-
readonly videoTrackCount: number;
|
|
103
|
-
/** Null on a video track the demuxer cannot name a codec for. */
|
|
104
|
-
readonly codec: string | null;
|
|
105
|
-
/** Null where no decoder could be asked, which is every realm without
|
|
106
|
-
* WebCodecs. Absent support is `false`, not `null`. */
|
|
107
|
-
readonly canDecode: boolean | null;
|
|
108
|
-
/** Null when no video track was reached. */
|
|
109
|
-
readonly timing: MediaTimingFacts | null;
|
|
110
|
-
/** Whether the bytes come over a link, which is what makes a trailing index
|
|
111
|
-
* cost anything. */
|
|
112
|
-
readonly remote: boolean;
|
|
113
|
-
}
|
|
114
|
-
export interface MediaCondition {
|
|
115
|
-
readonly code: MediaConditionCode;
|
|
116
|
-
readonly scope: MediaConditionScope;
|
|
117
|
-
readonly response: MediaConditionResponse;
|
|
118
|
-
/** What the response does to the frame sequence. Absent where the response
|
|
119
|
-
* presents nothing, so no sequence survives to compare. */
|
|
120
|
-
readonly frameEffect: ConversionFrameEffect | null;
|
|
121
|
-
readonly detail: string;
|
|
122
|
-
}
|
|
123
|
-
/** How the caller intends to open whatever comes out. */
|
|
124
|
-
export interface MediaConditionPolicy {
|
|
125
|
-
/**
|
|
126
|
-
* Whether the caller can open a conversion's prefix while the rest is still
|
|
127
|
-
* being written. Such a source opens only at its beginning and cannot be
|
|
128
|
-
* seeked into, so this is true only where playback starts at zero.
|
|
129
|
-
*/
|
|
130
|
-
readonly progressiveConversion?: boolean;
|
|
131
|
-
}
|
|
132
|
-
export interface MediaConditionReport {
|
|
133
|
-
readonly facts: MediaConditionFacts;
|
|
134
|
-
readonly conditions: readonly MediaCondition[];
|
|
135
|
-
/** The strongest response among the conditions standing in the way of a
|
|
136
|
-
* picture. */
|
|
137
|
-
readonly playback: MediaConditionResponse;
|
|
138
|
-
/** The strongest response among the conditions standing in the way of naming
|
|
139
|
-
* the frame on screen by index. */
|
|
140
|
-
readonly frameIndexing: MediaConditionResponse;
|
|
141
|
-
}
|
|
142
|
-
export interface ConversionFrameEffectReport {
|
|
143
|
-
readonly effect: ConversionFrameEffect;
|
|
144
|
-
/** The rate the conversion will actually be run at, after the normalization
|
|
145
|
-
* defaults are applied. */
|
|
146
|
-
readonly resolvedFrameRate: number;
|
|
147
|
-
readonly detail: string;
|
|
148
|
-
}
|
|
149
|
-
//# sourceMappingURL=media-conditions.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"media-conditions.d.ts","sourceRoot":"","sources":["../../src/types/media-conditions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"analysis-session.d.ts","sourceRoot":"","sources":["../src/analysis-session.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,kBAAkB,EAGxB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAGpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C;;;;;;;;;;GAUG;AACH,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,WAAW,CAAC;IACpB;;;;;OAKG;IACH,cAAc,CAAC,EAAE,wBAAwB,CAAC;IAC1C,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,2EAA2E;IAC3E,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAoB;IACzC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;IAC9C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAiB;IACvC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAsB;IACpD,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,EAAE,kBAAkB;IAOtC,yEAAyE;WAC5D,IAAI,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IAIrE,IAAI,QAAQ,IAAI,gBAAgB,CAS/B;IAED;;;;OAIG;IACH,kBAAkB,CAChB,MAAM,SAAI,EACV,IAAI,GAAE,MAA6B,GAClC,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC;IAI7B;;;;OAIG;IACG,aAAa,CACjB,WAAW,EAAE,SAAS,MAAM,EAAE,GAC7B,OAAO,CAAC,cAAc,EAAE,CAAC;IAS5B;;;;;;;;OAQG;IACI,kBAAkB,CACvB,WAAW,EAAE,SAAS,MAAM,EAAE,GAC7B,cAAc,CAAC,cAAc,GAAG,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC;IAqBjD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAK5B,OAAO,CAAC,SAAS;CASlB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"analysis.d.ts","sourceRoot":"","sources":["../src/analysis.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,YAAY,EACV,gBAAgB,EAChB,eAAe,EACf,cAAc,GACf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACzD,YAAY,EACV,iBAAiB,EACjB,cAAc,EACd,WAAW,GACZ,MAAM,gBAAgB,CAAC;AACxB,YAAY,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC"}
|