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
|
@@ -12,10 +12,9 @@ export type Fps = number & {
|
|
|
12
12
|
};
|
|
13
13
|
/**
|
|
14
14
|
* Paints since the source loaded, monotonic within it and reset on source swap.
|
|
15
|
-
* It counts paints, not frames
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
* travels only as the media timestamp on the paint event.
|
|
15
|
+
* It counts paints, not source frames: two paints of one media position can
|
|
16
|
+
* take two sequence numbers. Source-frame identity is carried separately by
|
|
17
|
+
* the presented frame's frameId and media timestamp.
|
|
19
18
|
*/
|
|
20
19
|
export type PaintSeq = number & {
|
|
21
20
|
readonly __paintSeq: unique symbol;
|
|
@@ -52,9 +51,11 @@ export interface BlobVideoSource {
|
|
|
52
51
|
}
|
|
53
52
|
export interface StreamVideoSource {
|
|
54
53
|
kind: SourceKind.Stream;
|
|
54
|
+
/** The load transfers this stream to the worker, which detaches this side's
|
|
55
|
+
* reference: afterwards the worker holds the only readable end. */
|
|
55
56
|
stream: ReadableStream<Uint8Array>;
|
|
56
|
-
/** Declared container type.
|
|
57
|
-
*
|
|
57
|
+
/** Declared container type. Nothing reads it: the demuxer sniffs the bytes,
|
|
58
|
+
* and no metadata surface carries it back out. */
|
|
58
59
|
mimeType: string;
|
|
59
60
|
}
|
|
60
61
|
/**
|
|
@@ -91,7 +92,7 @@ export declare enum PlaybackStatus {
|
|
|
91
92
|
Ended = "ENDED",
|
|
92
93
|
Errored = "ERRORED"
|
|
93
94
|
}
|
|
94
|
-
export declare enum
|
|
95
|
+
export declare enum WebVideoEngineErrorCode {
|
|
95
96
|
DecodeUnsupported = "DECODE_UNSUPPORTED",
|
|
96
97
|
SourceUnreadable = "SOURCE_UNREADABLE",
|
|
97
98
|
/**
|
|
@@ -118,28 +119,27 @@ export declare enum VideoEngineErrorCode {
|
|
|
118
119
|
/**
|
|
119
120
|
* The decoder cannot decode this source at all: it refused to configure, it
|
|
120
121
|
* errored, or it acknowledged decode requests and never produced a frame.
|
|
121
|
-
* Distinct from BackendCrashed
|
|
122
|
-
*
|
|
123
|
-
*
|
|
124
|
-
* decoder session the machine has.
|
|
122
|
+
* Distinct from BackendCrashed; this one survives every rebuild, so the
|
|
123
|
+
* runtime stops rebuilding and says so. The usual cause is outside the page:
|
|
124
|
+
* another tab holding every hardware decoder session the machine has.
|
|
125
125
|
*/
|
|
126
126
|
DecoderStalled = "DECODER_STALLED",
|
|
127
127
|
/** A playback rate outside the forward range the engine supports. */
|
|
128
128
|
RateUnsupported = "RATE_UNSUPPORTED"
|
|
129
129
|
}
|
|
130
130
|
/**
|
|
131
|
-
* Thrown by createScrubCursor /
|
|
132
|
-
* or the source is unreadable. Branch on `error.code` (
|
|
131
|
+
* Thrown by createScrubCursor / WebVideoEngine.load when decode is unsupported
|
|
132
|
+
* or the source is unreadable. Branch on `error.code` (WebVideoEngineErrorCode)
|
|
133
133
|
* to differentiate decode failures from network failures.
|
|
134
134
|
*/
|
|
135
|
-
export declare class
|
|
136
|
-
readonly code:
|
|
135
|
+
export declare class WebVideoEngineError extends Error {
|
|
136
|
+
readonly code: WebVideoEngineErrorCode;
|
|
137
137
|
readonly cause?: unknown;
|
|
138
|
-
constructor(code:
|
|
138
|
+
constructor(code: WebVideoEngineErrorCode, message: string, cause?: unknown);
|
|
139
139
|
}
|
|
140
140
|
/** Shared by the facade and the core so a host gets the same refusal wherever
|
|
141
141
|
* its canvas is caught. */
|
|
142
|
-
export declare function canvasBindingRefused():
|
|
142
|
+
export declare function canvasBindingRefused(): WebVideoEngineError;
|
|
143
143
|
/**
|
|
144
144
|
* Validates a requested playback rate and returns it. The facade and the core
|
|
145
145
|
* both call it, so a rate is refused at whichever boundary it arrives at and
|
|
@@ -153,7 +153,7 @@ export declare function canvasBindingRefused(): VideoEngineError;
|
|
|
153
153
|
export declare function resolvePlaybackRate(rate: number): number;
|
|
154
154
|
export interface PlaybackState {
|
|
155
155
|
status: PlaybackStatus;
|
|
156
|
-
error:
|
|
156
|
+
error: WebVideoEngineError | null;
|
|
157
157
|
}
|
|
158
158
|
export interface VideoMetadata {
|
|
159
159
|
durationMs: number;
|
|
@@ -182,9 +182,6 @@ export interface EngineReadySnapshot extends VideoMetadata {
|
|
|
182
182
|
* succeeded. A host knows what it asked for; only the engine knows what it
|
|
183
183
|
* got, and the three kinds differ in what they can do afterwards — a stream
|
|
184
184
|
* cannot be rewound or reopened, and only a URL is fetched.
|
|
185
|
-
*
|
|
186
|
-
* Optional so a host holding a snapshot it built before this field existed
|
|
187
|
-
* still satisfies the type.
|
|
188
185
|
*/
|
|
189
186
|
readonly byteSource?: SourceKind;
|
|
190
187
|
}
|
|
@@ -201,4 +198,3 @@ export interface EngineReadySnapshot extends VideoMetadata {
|
|
|
201
198
|
* readout does not wake on status and vice versa.
|
|
202
199
|
*/
|
|
203
200
|
export type EngineChannel = "time" | "frame" | "state" | "duration" | "seeking" | "rate";
|
|
204
|
-
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { DecodeResolutionStrategy } from "./decode-resolution";
|
|
1
|
+
import type { DecodeResolutionStrategy, DisplayBoxResolutionOptions } from "./decode-resolution";
|
|
2
2
|
import type { DiagnosticsSnapshot, EngineDiagnostics } from "./diagnostics";
|
|
3
3
|
import { type FrameId, type FrameLanding } from "./frame-timeline";
|
|
4
4
|
import type { SeekIntent } from "./scrub-cursor";
|
|
@@ -11,8 +11,15 @@ import { type EngineCommand, type EngineEvent, type PresentedFrame, type SourceR
|
|
|
11
11
|
* published carries the first, and handing that back needs no conversion.
|
|
12
12
|
*/
|
|
13
13
|
export type SeekTarget = number | FrameId;
|
|
14
|
-
export interface
|
|
14
|
+
export interface WebVideoEngineOptions {
|
|
15
15
|
source: VideoSource;
|
|
16
|
+
/**
|
|
17
|
+
* Creates the worker that hosts decode and presentation. Omit it to use the
|
|
18
|
+
* embedded Blob worker. A host whose Content Security Policy disallows
|
|
19
|
+
* `blob:` workers can return a Worker created from the separately exported
|
|
20
|
+
* `supervision/web-video-engine/worker` URL instead.
|
|
21
|
+
*/
|
|
22
|
+
workerFactory?: () => Worker;
|
|
16
23
|
/**
|
|
17
24
|
* Who owns the pixels, fixed for the life of the engine. Default "canvas":
|
|
18
25
|
* the engine holds the display canvas bindCanvas transfers to it and paints
|
|
@@ -88,7 +95,7 @@ export interface EngineWorkerPort {
|
|
|
88
95
|
terminate(): void;
|
|
89
96
|
}
|
|
90
97
|
/**
|
|
91
|
-
* Main-thread facade for the worker-hosted video engine. Owns the worker
|
|
98
|
+
* Main-thread facade for the worker-hosted web video engine. Owns the worker
|
|
92
99
|
* (spawned lazily on the first command), the mirror store React reads through
|
|
93
100
|
* useSyncExternalStore, and the imperative handle. The decode + render loop runs
|
|
94
101
|
* in the worker (EngineCore); this class never touches a cursor or clock directly.
|
|
@@ -106,7 +113,7 @@ export interface EngineWorkerPort {
|
|
|
106
113
|
* Engine outlives a single React render. Recreate the engine only when the
|
|
107
114
|
* source identity changes.
|
|
108
115
|
*/
|
|
109
|
-
export declare class
|
|
116
|
+
export declare class WebVideoEngine {
|
|
110
117
|
private readonly options;
|
|
111
118
|
private readonly store;
|
|
112
119
|
private readonly diagnosticsStore;
|
|
@@ -116,6 +123,9 @@ export declare class VideoEngine {
|
|
|
116
123
|
private lastTrace;
|
|
117
124
|
private traceArmed;
|
|
118
125
|
private readonly pending;
|
|
126
|
+
private presentationVisible;
|
|
127
|
+
private listeningForPresentationVisibility;
|
|
128
|
+
private readonly onPresentationVisibilityChange;
|
|
119
129
|
private nextRequestId;
|
|
120
130
|
private metadata;
|
|
121
131
|
/** The loaded source's frame table, held here so a gesture is resolved to a
|
|
@@ -133,7 +143,11 @@ export declare class VideoEngine {
|
|
|
133
143
|
/** WebGPU support is a main-thread fact the worker cannot cheaply probe, so
|
|
134
144
|
* the facade fills it onto each diagnostics snapshot for the warning rules. */
|
|
135
145
|
private readonly webgpuAvailable;
|
|
136
|
-
constructor(options:
|
|
146
|
+
constructor(options: WebVideoEngineOptions, createWorker?: () => EngineWorkerPort);
|
|
147
|
+
/**
|
|
148
|
+
* Loads the configured source. A stream source is transferred on this call,
|
|
149
|
+
* so a repeat load has nothing left to hand over and rejects.
|
|
150
|
+
*/
|
|
137
151
|
load(): Promise<EngineReadySnapshot>;
|
|
138
152
|
/**
|
|
139
153
|
* Transfers the display canvas to the worker exactly once. The transfer is
|
|
@@ -145,6 +159,10 @@ export declare class VideoEngine {
|
|
|
145
159
|
*/
|
|
146
160
|
bindCanvas: (el: HTMLCanvasElement | null) => void;
|
|
147
161
|
play: () => Promise<void>;
|
|
162
|
+
/** Changes frames-mode display output without reopening the video. Resolves
|
|
163
|
+
* with true after worker delivery, or false for unchanged output dimensions.
|
|
164
|
+
* The host still acknowledges its actual presentation. */
|
|
165
|
+
setDisplay: (display: DisplayBoxResolutionOptions) => Promise<boolean>;
|
|
148
166
|
pause: () => void;
|
|
149
167
|
togglePlayback: () => void;
|
|
150
168
|
/**
|
|
@@ -248,8 +266,9 @@ export declare class VideoEngine {
|
|
|
248
266
|
/**
|
|
249
267
|
* Registers THE consumer of presented frames, in "frames" presentation mode.
|
|
250
268
|
* A second registration replaces the first, so at most one holder exists.
|
|
251
|
-
*
|
|
252
|
-
*
|
|
269
|
+
* After synchronously drawing the frame and its matching layers, the handler
|
|
270
|
+
* calls acknowledgePresentation(), then close(). A discarded frame is only
|
|
271
|
+
* closed. One left open pins a decoder buffer and stalls the decoder.
|
|
253
272
|
*
|
|
254
273
|
* There is deliberately no counterpart that reports the frame most recently
|
|
255
274
|
* presented. A frame readable apart from the message that carried it can be
|
|
@@ -271,7 +290,7 @@ export declare class VideoEngine {
|
|
|
271
290
|
* killed.
|
|
272
291
|
*
|
|
273
292
|
* The engine is inert afterwards. A fire-and-forget command is dropped and an
|
|
274
|
-
* awaitable one rejects with {@link
|
|
293
|
+
* awaitable one rejects with {@link WebVideoEngineErrorCode.Aborted}; neither
|
|
275
294
|
* starts another worker.
|
|
276
295
|
*/
|
|
277
296
|
dispose(): Promise<void>;
|
|
@@ -280,7 +299,7 @@ export declare class VideoEngine {
|
|
|
280
299
|
* handle keeps a stable identity for the lifetime of the engine (consumers
|
|
281
300
|
* may list it in useEffect deps).
|
|
282
301
|
*/
|
|
283
|
-
toHandle():
|
|
302
|
+
toHandle(): WebVideoEngineHandle;
|
|
284
303
|
private readonly isIdleBound;
|
|
285
304
|
private readonly getPlayheadBound;
|
|
286
305
|
private readonly getTimeMsBound;
|
|
@@ -315,13 +334,16 @@ export declare class VideoEngine {
|
|
|
315
334
|
/**
|
|
316
335
|
* Spawns the worker on first use and wires the state plane into the mirror
|
|
317
336
|
* store. Deferring the spawn keeps construction side-effect-free, so a
|
|
318
|
-
*
|
|
337
|
+
* WebVideoEngine built during render (e.g. a useState initializer) never leaks
|
|
319
338
|
* a worker when React discards a duplicate.
|
|
320
339
|
*/
|
|
321
340
|
private ensurePort;
|
|
322
341
|
private request;
|
|
323
342
|
private post;
|
|
324
343
|
private rejectAllPending;
|
|
344
|
+
private startPresentationVisibilityTracking;
|
|
345
|
+
private stopPresentationVisibilityTracking;
|
|
346
|
+
private syncPresentationVisibility;
|
|
325
347
|
/**
|
|
326
348
|
* The frame a target names.
|
|
327
349
|
*
|
|
@@ -337,10 +359,9 @@ export declare class VideoEngine {
|
|
|
337
359
|
private requireTimeline;
|
|
338
360
|
private measureViewport;
|
|
339
361
|
}
|
|
340
|
-
/**
|
|
341
|
-
*
|
|
342
|
-
*
|
|
343
|
-
*/
|
|
362
|
+
/** Receives one presented frame and owns it. After drawing its pixels and
|
|
363
|
+
* matching layers, call acknowledgePresentation(), then close(). If it is
|
|
364
|
+
* discarded before display, only close it. */
|
|
344
365
|
export type PresentedFrameHandler = (presented: PresentedFrame) => void;
|
|
345
366
|
/**
|
|
346
367
|
* Imperative handle exposed to React via useImperativeHandle. Stable identity
|
|
@@ -351,7 +372,8 @@ export type PresentedFrameHandler = (presented: PresentedFrame) => void;
|
|
|
351
372
|
* consumer that latches onto the handle does not also depend on the shape of
|
|
352
373
|
* getPlaybackState.
|
|
353
374
|
*/
|
|
354
|
-
export interface
|
|
375
|
+
export interface WebVideoEngineHandle {
|
|
376
|
+
setDisplay(display: DisplayBoxResolutionOptions): Promise<boolean>;
|
|
355
377
|
play(): Promise<void>;
|
|
356
378
|
pause(): void;
|
|
357
379
|
togglePlayback(): void;
|
|
@@ -399,7 +421,8 @@ export interface VideoEngineHandle {
|
|
|
399
421
|
/**
|
|
400
422
|
* Registers the single consumer of presented frames ("frames" presentation
|
|
401
423
|
* mode). Registering again replaces the previous consumer. The handler owns
|
|
402
|
-
* each frame
|
|
424
|
+
* each frame; a displayed frame is acknowledged before it is closed, while a
|
|
425
|
+
* discarded frame is only closed.
|
|
403
426
|
*/
|
|
404
427
|
onPresentedFrame(handler: PresentedFrameHandler): void;
|
|
405
428
|
subscribe(channel: EngineChannel, listener: () => void): () => void;
|
|
@@ -423,4 +446,3 @@ export interface VideoEngineHandle {
|
|
|
423
446
|
/** Latest broadcast snapshot, or null before the first push. */
|
|
424
447
|
getLatestDiagnostics(): DiagnosticsSnapshot | null;
|
|
425
448
|
}
|
|
426
|
-
//# sourceMappingURL=video-engine.d.ts.map
|
|
@@ -14,4 +14,3 @@ import { type EngineCommand, type EngineEvent } from "./worker-protocol";
|
|
|
14
14
|
*/
|
|
15
15
|
export type PostEngineEvent = (event: EngineEvent) => void;
|
|
16
16
|
export declare function handleEngineCommand(engine: EngineCore, command: EngineCommand, post: PostEngineEvent): Promise<void>;
|
|
17
|
-
//# sourceMappingURL=worker-dispatch.d.ts.map
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import type { FrameId, FrameLanding } from "./frame-timeline";
|
|
2
2
|
import type { FrameQuality, SeekIntent } from "./scrub-cursor";
|
|
3
|
-
import type { DecodeResolutionStrategy } from "./decode-resolution";
|
|
3
|
+
import type { DecodeResolutionStrategy, DisplayBoxResolutionOptions } from "./decode-resolution";
|
|
4
4
|
import type { DiagnosticsSnapshot, EngineDiagnostics } from "./diagnostics";
|
|
5
5
|
import type { Rotation } from "./rotation";
|
|
6
6
|
import type { EngineTrace } from "./trace-recorder";
|
|
7
|
-
import {
|
|
8
|
-
import type { EngineReadySnapshot, PlaybackStatus, PresentationMode, UrlSourceReadConfig,
|
|
7
|
+
import { WebVideoEngineError } from "./types";
|
|
8
|
+
import type { EngineReadySnapshot, PlaybackStatus, PresentationMode, UrlSourceReadConfig, WebVideoEngineErrorCode, VideoSource } from "./types";
|
|
9
9
|
import type { MirrorStore } from "./mirror-store";
|
|
10
10
|
/**
|
|
11
|
-
* Wire contract between the main-thread
|
|
11
|
+
* Wire contract between the main-thread WebVideoEngine facade and the dedicated
|
|
12
12
|
* worker that hosts the decode + render loop. Three planes cross the boundary:
|
|
13
13
|
*
|
|
14
14
|
* - Control plane: EngineCommand, main -> worker. Fire-and-forget commands
|
|
@@ -23,19 +23,21 @@ import type { MirrorStore } from "./mirror-store";
|
|
|
23
23
|
* paints nothing and every frame that earns the screen crosses as a
|
|
24
24
|
* PresentedFrameEvent, its VideoFrame on that message's transfer list.
|
|
25
25
|
*
|
|
26
|
-
* Everything here is structured-clone safe
|
|
27
|
-
*
|
|
28
|
-
*
|
|
26
|
+
* Everything here is structured-clone safe apart from three transferables: the
|
|
27
|
+
* OffscreenCanvas on bindCanvas, the VideoFrame on a presented-frame event, and
|
|
28
|
+
* a stream source's ReadableStream on the load command. Nothing else is a class
|
|
29
|
+
* instance and nothing is a closure, which is what lets the decode strategy and
|
|
30
|
+
* source descriptors travel as plain data.
|
|
29
31
|
*/
|
|
30
32
|
export type RequestId = number;
|
|
31
|
-
/** A
|
|
33
|
+
/** A WebVideoEngineError flattened to its clone-safe fields. cause is dropped at
|
|
32
34
|
* the boundary; consumers branch on code, not on the original cause chain. */
|
|
33
35
|
export interface SerializedEngineError {
|
|
34
|
-
readonly code:
|
|
36
|
+
readonly code: WebVideoEngineErrorCode;
|
|
35
37
|
readonly message: string;
|
|
36
38
|
}
|
|
37
|
-
export declare function serializeEngineError(error:
|
|
38
|
-
export declare function deserializeEngineError(error: SerializedEngineError | null):
|
|
39
|
+
export declare function serializeEngineError(error: WebVideoEngineError): SerializedEngineError;
|
|
40
|
+
export declare function deserializeEngineError(error: SerializedEngineError | null): WebVideoEngineError | null;
|
|
39
41
|
/** Canvas-box measurement taken on the main thread (layout lives there) and
|
|
40
42
|
* shipped to the worker so a viewport decode strategy can size the sink. */
|
|
41
43
|
export interface SerializedViewport {
|
|
@@ -43,7 +45,7 @@ export interface SerializedViewport {
|
|
|
43
45
|
readonly devicePixelRatio: number;
|
|
44
46
|
}
|
|
45
47
|
/**
|
|
46
|
-
* The serializable subset of
|
|
48
|
+
* The serializable subset of WebVideoEngineOptions the worker needs to build the
|
|
47
49
|
* engine. Omits `clock` (a class instance the worker constructs itself) and
|
|
48
50
|
* `source` (carried separately on the load command).
|
|
49
51
|
*/
|
|
@@ -77,6 +79,9 @@ export interface BindCanvasCommand {
|
|
|
77
79
|
}
|
|
78
80
|
export type FireAndForgetCommand = BindCanvasCommand | {
|
|
79
81
|
readonly type: "unbindCanvas";
|
|
82
|
+
} | {
|
|
83
|
+
readonly type: "setPresentationVisibility";
|
|
84
|
+
readonly visible: boolean;
|
|
80
85
|
} | {
|
|
81
86
|
readonly type: "scrub";
|
|
82
87
|
readonly frameIndex: number;
|
|
@@ -85,6 +90,11 @@ export type FireAndForgetCommand = BindCanvasCommand | {
|
|
|
85
90
|
readonly type: "pause";
|
|
86
91
|
} | {
|
|
87
92
|
readonly type: "togglePlayback";
|
|
93
|
+
} | {
|
|
94
|
+
readonly type: "acknowledgePresentedFrame";
|
|
95
|
+
readonly paintSeq: number;
|
|
96
|
+
readonly frameId: FrameId;
|
|
97
|
+
readonly navigationGeneration: number;
|
|
88
98
|
} | {
|
|
89
99
|
readonly type: "beginInteractiveSeek";
|
|
90
100
|
} | {
|
|
@@ -102,6 +112,10 @@ export type FireAndForgetCommand = BindCanvasCommand | {
|
|
|
102
112
|
readonly type: "traceDisarm";
|
|
103
113
|
};
|
|
104
114
|
export type AwaitableCommand = {
|
|
115
|
+
readonly type: "setDisplay";
|
|
116
|
+
readonly requestId: RequestId;
|
|
117
|
+
readonly display: DisplayBoxResolutionOptions;
|
|
118
|
+
} | {
|
|
105
119
|
readonly type: "load";
|
|
106
120
|
readonly requestId: RequestId;
|
|
107
121
|
readonly config: EngineLoadConfig;
|
|
@@ -193,6 +207,7 @@ export type ResponseEvent = {
|
|
|
193
207
|
readonly type: "ack";
|
|
194
208
|
readonly requestId: RequestId;
|
|
195
209
|
readonly landing?: FrameLanding;
|
|
210
|
+
readonly outputChanged?: boolean;
|
|
196
211
|
} | {
|
|
197
212
|
readonly type: "stats";
|
|
198
213
|
readonly requestId: RequestId;
|
|
@@ -224,8 +239,10 @@ export interface DiagnosticsEvent {
|
|
|
224
239
|
* Identity rides in the same message as the pixels and is reachable nowhere
|
|
225
240
|
* else, so what a consumer holds and what it believes it holds cannot drift.
|
|
226
241
|
*/
|
|
227
|
-
|
|
242
|
+
interface PresentedFramePayload {
|
|
228
243
|
readonly paintSeq: number;
|
|
244
|
+
/** Navigation epoch in which the worker selected these pixels. */
|
|
245
|
+
readonly navigationGeneration: number;
|
|
229
246
|
/** Which frame of the source these pixels are. */
|
|
230
247
|
readonly frameId: FrameId;
|
|
231
248
|
/** `frameId.ticks / tickRate`, the one seconds value anyone publishes. */
|
|
@@ -244,13 +261,19 @@ export interface PresentedFrame {
|
|
|
244
261
|
* restated alongside it. */
|
|
245
262
|
readonly frame: VideoFrame;
|
|
246
263
|
}
|
|
264
|
+
/** A frame delivered to the host. Acknowledging means its pixels and matching
|
|
265
|
+
* layers reached the host surface. A frame discarded before display is closed
|
|
266
|
+
* without being acknowledged. */
|
|
267
|
+
export interface PresentedFrame extends Omit<PresentedFramePayload, "navigationGeneration"> {
|
|
268
|
+
acknowledgePresentation(): void;
|
|
269
|
+
}
|
|
247
270
|
/**
|
|
248
271
|
* The pixel plane, worker -> main. A fourth EngineEvent arm, neither a
|
|
249
272
|
* MirrorEvent nor a ResponseEvent: it is the only channel a presented frame has,
|
|
250
273
|
* and the VideoFrame rides this message's transfer list, so the worker's
|
|
251
274
|
* reference is detached the moment it is posted.
|
|
252
275
|
*/
|
|
253
|
-
export interface PresentedFrameEvent extends
|
|
276
|
+
export interface PresentedFrameEvent extends PresentedFramePayload {
|
|
254
277
|
readonly type: "presentedFrame";
|
|
255
278
|
}
|
|
256
279
|
export type EngineEvent = MirrorEvent | ResponseEvent | DiagnosticsEvent | PresentedFrameEvent;
|
|
@@ -264,4 +287,4 @@ export declare function isMirrorEvent(event: EngineEvent): event is MirrorEvent;
|
|
|
264
287
|
* wake, so replaying an idempotent event is a no-op.
|
|
265
288
|
*/
|
|
266
289
|
export declare function applyMirrorEvent(store: MirrorStore, event: MirrorEvent): void;
|
|
267
|
-
|
|
290
|
+
export {};
|
package/node_modules/supervision-js-core/dist/detections/buffered-detection-timeline.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buffered-detection-timeline.d.ts","sourceRoot":"","sources":["../../src/detections/buffered-detection-timeline.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,yBAAyB,EAC9B,KAAK,sBAAsB,EAE3B,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EAG1B,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAuDxD;;;;;GAKG;AACH,wBAAgB,yCAAyC,CACvD,QAAQ,EAAE,yBAAyB,GAClC,SAAS,cAAc,EAAE,CAI3B;AAED,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE;IACP,QAAQ,CAAC,MAAM,EAAE,oBAAoB,CAAC;CACvC,GAAG,sBAAsB,GACzB,yBAAyB,
|
|
1
|
+
{"version":3,"file":"buffered-detection-timeline.d.ts","sourceRoot":"","sources":["../../src/detections/buffered-detection-timeline.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,yBAAyB,EAC9B,KAAK,sBAAsB,EAE3B,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EAG1B,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAuDxD;;;;;GAKG;AACH,wBAAgB,yCAAyC,CACvD,QAAQ,EAAE,yBAAyB,GAClC,SAAS,cAAc,EAAE,CAI3B;AAED,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE;IACP,QAAQ,CAAC,MAAM,EAAE,oBAAoB,CAAC;CACvC,GAAG,sBAAsB,GACzB,yBAAyB,CA07B3B;AAED,wBAAgB,8BAA8B,IAAI,oBAAoB,CAWrE"}
|
|
@@ -40,7 +40,7 @@ export { createDefaultAnnotationPresentation, type DefaultAnnotationPresentation
|
|
|
40
40
|
export { annotationRendererKinds, annotationRenderers, type AnnotationRenderer, type AnnotationRendererFactory, type AnnotationRendererKind, type BoxAnnotationRenderer, type BoxCornerAnnotationRenderer, type EllipseAnnotationRenderer, type KeypointAnnotationRenderer, type LabelAnnotationRenderer, type MaskAnnotationRenderer, type MaskHaloAnnotationRenderer, type MarkerAnnotationRenderer, type PolygonAnnotationRenderer, type PolylineAnnotationRenderer, RegionRendererComposeMode, RegionRendererCoverageKind, RegionRendererMediaEffectKind, RegionRendererRegionKind, RegionRendererSizeSpace, RegionRendererSourceKind, type RegionAnnotationRenderer, type RegionRendererAssetReference, type RegionRendererAssetSource, type RegionRendererBoundsRegion, type RegionRendererCompose, type RegionRendererMaskCoverage, type RegionRendererBlurEffect, type RegionRendererMediaEffect, type RegionRendererPixelateEffect, type RegionRendererPolygonCoverage, type RegionRendererKeypointAnchorRegion, type RegionRendererMediaSource, type RegionRendererRegion, type RegionRendererRelativeTransform, type RegionRendererSize, type RegionRendererSizedTransform, type RegionRendererSource, type RegionRendererTarget, type RegionRendererTargetContext, type RegionRendererTargetValue, type RegionRendererTransform, } from "#types/annotation-renderer";
|
|
41
41
|
export { type ClosedMarkerDrawInstruction, type CrossMarkerDrawInstruction, type MarkerDrawInstruction, type MarkerStyle, type MarkerStyleContext, } from "#types/marker-style";
|
|
42
42
|
export { resolveAnnotationRendererPresentation } from "#styles/annotation-renderer-presentation";
|
|
43
|
-
export { resolveAnnotationRendererStyleFields } from "#styles/annotation-renderer-registry";
|
|
43
|
+
export { resolveAnnotationRendererStyleFields, type AnnotationRendererStyleField, } from "#styles/annotation-renderer-registry";
|
|
44
44
|
export { createSourceAwarePresentation, type PresentationStyleSet, type SourceAwarePresentationOptions, type SourcePresentation, type SourcePresentationEntry, } from "#styles/source-presentation";
|
|
45
45
|
export { resolveStyleValue } from "#styles/style-value";
|
|
46
46
|
export { copySortedDetectionFrames, decodeCompressedRleMask, decodeCompressedRleCounts, detectionFrameOverlapsRange, encodeCompressedRleCounts, filterDetectionFramesForRange, selectDetectionFrame, validateDetectionFrames, type DecodedDetectionMask, } from "#utils/detection-frames";
|
|
@@ -50,7 +50,7 @@ export { projectDetectionFrame, projectDetectionFrames, } from "#utils/detection
|
|
|
50
50
|
export { centerRectToTopLeftRect, containsPoint, distanceToSegment, getDetectionRect, getPointsRect, pointInPolygon, polygonArea, rectArea, topLeftRectToCenterRect, } from "#utils/geometry";
|
|
51
51
|
export { canReuseMaskStyleArtifacts, resolveMaskStyleOpacity, } from "#utils/mask-style";
|
|
52
52
|
export { DEFAULT_DETECTION_CLASS_STYLES, DEFAULT_DETECTION_COLOR_SEQUENCE, SUPERVISION_ROBOFLOW_COLOR, normalizeDetectionClassName, resolveDetectionClassColorStyle, type DetectionClassColorStyle, } from "#utils/color-palette";
|
|
53
|
-
export { MAX_ID_MASK_PALETTE_ENTRIES, MAX_ID_MASK_STROKE_WIDTH, createIdMaskFrame, type IdMaskFrame, type IdMaskInstruction, } from "#utils/id-mask-frame";
|
|
53
|
+
export { MAX_ID_MASK_PALETTE_ENTRIES, MAX_ID_MASK_STROKE_WIDTH, createIdMaskFrame, resolveIdMaskPaletteId, resolveIdMaskStrokeTexels, writeIdMaskPaletteEntry, type IdMaskFrame, type IdMaskInstruction, } from "#utils/id-mask-frame";
|
|
54
54
|
export { resolveEllipseSegmentCount, resolveMarkerGeometry, sampleEllipseArc, } from "#utils/shape-geometry";
|
|
55
55
|
export type { BoxCornerDrawInstruction, BoxCornerStyle, BoxCornerStyleContext, } from "#types/box-corner-style";
|
|
56
56
|
export type { EllipseGeometry, MarkerGeometry, MarkerGeometryInput, SampledShapePath, } from "#utils/shape-geometry";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|