supervision 0.2.0-next.1 → 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/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +508 -127
- package/dist/index.js.map +1 -1
- 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.d.ts +6 -0
- package/dist/media/media-source.d.ts.map +1 -1
- package/dist/media/video-engine-media-source.d.ts.map +1 -1
- package/dist/media/video-engine-media-source.js +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/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.map +1 -1
- package/dist/renderers/media-renderer-scene.d.ts +1 -0
- package/dist/renderers/media-renderer-scene.d.ts.map +1 -1
- package/dist/renderers/media-renderer-transport.d.ts +4 -1
- package/dist/renderers/media-renderer-transport.d.ts.map +1 -1
- package/dist/renderers/pixi-media-scene.d.ts.map +1 -1
- package/dist/renderers/prepared-annotation-window.d.ts.map +1 -1
- package/dist/renderers/presented-frame-channel.d.ts +8 -6
- 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.d.ts.map +1 -1
- 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 +15 -5
- package/dist/types/media-session.d.ts.map +1 -1
- package/dist/types/render-preparation.d.ts +8 -5
- package/dist/types/render-preparation.d.ts.map +1 -1
- package/dist/{video-engine-media-source-CUXnOJOV.js → video-engine-media-source-DR-x1UfK.js} +35 -2
- package/dist/video-engine-media-source-DR-x1UfK.js.map +1 -0
- package/dist/web-video-engine/analysis.js +16 -0
- package/dist/web-video-engine/canvas-sink-scrub-cursor.d.ts +6 -1
- package/dist/web-video-engine/decode-scheduler.d.ts +8 -2
- package/dist/web-video-engine/decode-session.d.ts +5 -2
- package/dist/web-video-engine/decode-source.d.ts +2 -0
- package/dist/web-video-engine/engine-core.d.ts +9 -0
- package/dist/web-video-engine/engine.js +103 -11
- package/dist/web-video-engine/engine.worker.js +492 -31
- package/dist/web-video-engine/frame-cache.d.ts +2 -0
- package/dist/web-video-engine/pausable-deadline.d.ts +11 -0
- package/dist/web-video-engine/scrub-controller.d.ts +8 -4
- package/dist/web-video-engine/scrub-cursor.d.ts +3 -0
- package/dist/web-video-engine/video-engine.d.ts +12 -1
- package/dist/web-video-engine/worker-protocol.d.ts +9 -1
- package/node_modules/supervision-js-core/dist/detections/buffered-detection-timeline.d.ts.map +1 -1
- package/node_modules/supervision-js-core/dist/index.js +77 -41
- package/node_modules/supervision-js-core/dist/index.js.map +1 -1
- package/node_modules/supervision-js-core/dist/types/detection-timeline.d.ts +8 -3
- package/node_modules/supervision-js-core/dist/types/detection-timeline.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/video-engine-media-source-CUXnOJOV.js.map +0 -1
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/** Exact presentation timing in seconds for zero-based indexed media frames. */
|
|
2
|
+
export interface MediaFrameClock {
|
|
3
|
+
readonly frameCount: number;
|
|
4
|
+
readonly firstTimestamp: number;
|
|
5
|
+
/** Exclusive end of the final frame on the media timeline, in seconds. */
|
|
6
|
+
readonly endTimestamp: number;
|
|
7
|
+
/** Playable span in seconds: endTimestamp minus firstTimestamp. */
|
|
8
|
+
readonly duration: number;
|
|
9
|
+
/** Start time of a frame in presentation order. Invalid indices throw. */
|
|
10
|
+
timeAt(frameIndex: number): number;
|
|
11
|
+
/** Duration of one frame, including variable-rate and final frames. */
|
|
12
|
+
durationAt(frameIndex: number): number;
|
|
13
|
+
/** Frame covering a finite media time, clamped at the source's ends. */
|
|
14
|
+
indexAtOrBefore(mediaTime: number): number;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=media-frame-clock.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"media-frame-clock.d.ts","sourceRoot":"","sources":["../../src/types/media-frame-clock.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,0EAA0E;IAC1E,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,mEAAmE;IACnE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,0EAA0E;IAC1E,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC;IACnC,uEAAuE;IACvE,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC;IACvC,wEAAwE;IACxE,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC;CAC5C"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/** Exact frame identity and timing after navigation has landed. */
|
|
2
|
+
export interface MediaFrameLanding {
|
|
3
|
+
readonly index: number;
|
|
4
|
+
readonly mediaTime: number;
|
|
5
|
+
readonly duration: number;
|
|
6
|
+
}
|
|
7
|
+
export type MediaFrameScrubSettlement = {
|
|
8
|
+
readonly status: "landed";
|
|
9
|
+
readonly frame: MediaFrameLanding;
|
|
10
|
+
} | {
|
|
11
|
+
readonly status: "superseded";
|
|
12
|
+
};
|
|
13
|
+
export interface MediaFrameScrub {
|
|
14
|
+
readonly target: MediaFrameLanding;
|
|
15
|
+
readonly settled: Promise<MediaFrameScrubSettlement>;
|
|
16
|
+
}
|
|
17
|
+
/** Optional exact-frame navigation for media sources with an indexed clock. */
|
|
18
|
+
export interface MediaFrameNavigation {
|
|
19
|
+
/** Move to a frame and resolve after that exact frame is presented. */
|
|
20
|
+
moveToFrame(index: number): Promise<MediaFrameLanding>;
|
|
21
|
+
/** Move to the frame covering a media time and resolve after it is presented. */
|
|
22
|
+
moveToTime(seconds: number): Promise<MediaFrameLanding>;
|
|
23
|
+
/** Start a frame scrub and observe whether it lands or is superseded. */
|
|
24
|
+
scrubToFrame(index: number): MediaFrameScrub;
|
|
25
|
+
/** Start a time scrub and observe whether it lands or is superseded. */
|
|
26
|
+
scrubToTime(seconds: number): MediaFrameScrub;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=media-frame-navigation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"media-frame-navigation.d.ts","sourceRoot":"","sources":["../../src/types/media-frame-navigation.ts"],"names":[],"mappings":"AAAA,mEAAmE;AACnE,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,MAAM,yBAAyB,GACjC;IAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAA;CAAE,GAChE;IAAE,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAA;CAAE,CAAC;AAEtC,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,yBAAyB,CAAC,CAAC;CACtD;AAED,+EAA+E;AAC/E,MAAM,WAAW,oBAAoB;IACnC,uEAAuE;IACvE,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACvD,iFAAiF;IACjF,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACxD,yEAAyE;IACzE,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe,CAAC;IAC7C,wEAAwE;IACxE,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,CAAC;CAC/C"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/** Display geometry used to size a media source's presentation output. */
|
|
2
|
+
export interface MediaRendererDisplay {
|
|
3
|
+
/** Width of the presentation box in CSS pixels. */
|
|
4
|
+
boxWidth: number;
|
|
5
|
+
/** Height of the presentation box in CSS pixels. */
|
|
6
|
+
boxHeight: number;
|
|
7
|
+
/** Pixel ratio of the display containing the presentation box. */
|
|
8
|
+
devicePixelRatio: number;
|
|
9
|
+
/** Optional ceiling on the display pixel ratio. */
|
|
10
|
+
maxDevicePixelRatio?: number;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=media-renderer-display.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"media-renderer-display.d.ts","sourceRoot":"","sources":["../../src/types/media-renderer-display.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,MAAM,WAAW,oBAAoB;IACnC,mDAAmD;IACnD,QAAQ,EAAE,MAAM,CAAC;IACjB,oDAAoD;IACpD,SAAS,EAAE,MAAM,CAAC;IAClB,kEAAkE;IAClE,gBAAgB,EAAE,MAAM,CAAC;IACzB,mDAAmD;IACnD,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B"}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
|
+
import type { MediaRendererDisplay } from "#types/media-renderer-display";
|
|
1
2
|
import type { DetectionBufferOptions, DetectionFrameSource, MediaFrameDiagnostics, MediaRendererDiagnosticsOptions, MediaRendererFit, MediaRendererPresentation, MediaRendererState, MediaRendererStateController, MediaSourceState } from "supervision-js-core";
|
|
2
3
|
import type { PreparedAnnotationWindowSnapshot } from "#renderers/prepared-annotation-window";
|
|
3
4
|
import type { DetectionFrame } from "supervision-js-core";
|
|
4
5
|
import type { DetectionPickResult, DetectionSelectionOptions, MediaInteractionOptions } from "supervision-js-core";
|
|
5
6
|
import type { DecodedMediaSource } from "#media/media-source";
|
|
6
7
|
import type { RenderPreparationOptions } from "#types/render-preparation";
|
|
8
|
+
import type { MediaFrameClock } from "#types/media-frame-clock";
|
|
9
|
+
import type { MediaFrameNavigation } from "#types/media-frame-navigation";
|
|
7
10
|
import type { AnnotationEditingEngine, PreviewOverlayData } from "supervision-js-core";
|
|
8
11
|
import type { MaskBrushPreviewOptions } from "../editing";
|
|
9
12
|
export { MediaRendererFit, MediaRendererPlaybackState, MediaSourceStatus, } from "supervision-js-core";
|
|
@@ -124,6 +127,16 @@ export interface DetectionLabelBounds {
|
|
|
124
127
|
* preparation and detection buffering yourself.
|
|
125
128
|
*/
|
|
126
129
|
export interface MediaRenderer extends MediaRendererStateController {
|
|
130
|
+
/** Exact frame timing when the source provides an index; null otherwise. */
|
|
131
|
+
readonly frameClock?: MediaFrameClock | null;
|
|
132
|
+
/** Indexed moves and observable scrub landings for push-based indexed sources. */
|
|
133
|
+
readonly frameNavigation?: MediaFrameNavigation | null;
|
|
134
|
+
/**
|
|
135
|
+
* Resize engine-backed display-box output without reopening the source.
|
|
136
|
+
* Resolves after the resized frame is presented; supersession rejects with AbortError.
|
|
137
|
+
* Available only on sources that support live output sizing.
|
|
138
|
+
*/
|
|
139
|
+
setDisplay?(display: MediaRendererDisplay): Promise<void>;
|
|
127
140
|
play(): Promise<void>;
|
|
128
141
|
pause(): void;
|
|
129
142
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"media-renderer.d.ts","sourceRoot":"","sources":["../../src/types/media-renderer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"media-renderer.d.ts","sourceRoot":"","sources":["../../src/types/media-renderer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
|
+
import type { MediaRendererDisplay } from "#types/media-renderer-display";
|
|
1
2
|
import type { ColdDetectionFrameStore, ColdDetectionFrameStoreWriteSummary, DetectionBufferOptions, DetectionFrameLiveOptions, DetectionFrameRetentionOptions, DetectionFrameSelectionOptions, DetectionPlaybackGateOptions, DetectionFrameSource, MediaSessionLifecycleState, MediaSessionMode, MediaSessionStateListener as CoreMediaSessionStateListener, MediaSessionStateUnsubscribe, WritableDetectionFrameSource } from "supervision-js-core";
|
|
2
3
|
import type { DetectionFrame } from "supervision-js-core";
|
|
3
4
|
import type { MediaInteractionOptions } from "supervision-js-core";
|
|
4
5
|
import type { MediaNormalizationInputMetadata, MediaNormalizationProgress, MediaNormalizationOptions, NormalizedMedia, ProgressiveNormalizedMedia } from "#types/media-normalization";
|
|
5
6
|
import type { DetectionTimelineOrigin, MediaFrameCapture, MediaFrameCaptureOptions, MediaFrameDiagnostics, MediaRenderer, MediaRendererFit, MediaRendererPresentation, MediaRendererQuality, MediaRendererOptions, MediaRendererSource, MediaRendererState, MediaSourceState } from "#types/media-renderer";
|
|
6
7
|
import type { RenderPreparationDiagnostics } from "#types/render-preparation";
|
|
8
|
+
import type { MediaFrameClock } from "#types/media-frame-clock";
|
|
9
|
+
import type { MediaFrameNavigation } from "#types/media-frame-navigation";
|
|
7
10
|
export { MediaSessionActivityKind, MediaSessionActivityStatus, MediaSessionMode, MediaSessionStatus, } from "supervision-js-core";
|
|
8
11
|
export type { MediaSessionActivity, MediaSessionStateUnsubscribe, } from "supervision-js-core";
|
|
9
12
|
/**
|
|
@@ -203,8 +206,9 @@ export interface MediaSessionOptions {
|
|
|
203
206
|
readonly detections?: MediaSessionDetectionOptions;
|
|
204
207
|
/**
|
|
205
208
|
* Buffered playback: hold the picture until the frame it is about to show has
|
|
206
|
-
* both its detections and its prepared annotation artifacts
|
|
207
|
-
*
|
|
209
|
+
* both its detections and its prepared annotation artifacts. Opening still
|
|
210
|
+
* presents an initial media frame so the session can accept future appends;
|
|
211
|
+
* these gates hold subsequent playback, not session creation.
|
|
208
212
|
*
|
|
209
213
|
* On by default. `false` starts playback at once and draws annotations as
|
|
210
214
|
* they land, which suits a host that cares about cadence more than overlays.
|
|
@@ -295,6 +299,12 @@ export interface MediaSessionDetectionWriteOptions {
|
|
|
295
299
|
* Public controller for one renderer-owned media item.
|
|
296
300
|
*/
|
|
297
301
|
export interface MediaSession {
|
|
302
|
+
/** Exact frame timing when the media source provides an index; null otherwise. */
|
|
303
|
+
readonly frameClock?: MediaFrameClock | null;
|
|
304
|
+
/** Indexed moves and observable scrub landings for push-based indexed sources. */
|
|
305
|
+
readonly frameNavigation?: MediaFrameNavigation | null;
|
|
306
|
+
/** Resize an engine-backed display-box source and await its presented output. */
|
|
307
|
+
setDisplay?(display: MediaRendererDisplay): Promise<void>;
|
|
298
308
|
/**
|
|
299
309
|
* Detection source used by the renderer. Present when the session was created
|
|
300
310
|
* with static frames, a source, or an appendable source.
|
|
@@ -303,7 +313,8 @@ export interface MediaSession {
|
|
|
303
313
|
readonly media: MediaSessionMediaState;
|
|
304
314
|
readonly renderer: MediaRenderer;
|
|
305
315
|
/**
|
|
306
|
-
* Append semantic detection frames to
|
|
316
|
+
* Append semantic detection frames to the selected writable source, supplied
|
|
317
|
+
* by the caller or created through `detections.appendable`.
|
|
307
318
|
*/
|
|
308
319
|
appendDetectionFrames(frames: readonly DetectionFrame[], options?: MediaSessionDetectionWriteOptions): Promise<ColdDetectionFrameStoreWriteSummary>;
|
|
309
320
|
/**
|
|
@@ -358,8 +369,7 @@ export interface MediaSession {
|
|
|
358
369
|
*/
|
|
359
370
|
export interface LiveMediaSession extends MediaSession {
|
|
360
371
|
/**
|
|
361
|
-
* Append the newest live detection frame to
|
|
362
|
-
* source.
|
|
372
|
+
* Append the newest live detection frame to the selected writable source.
|
|
363
373
|
*
|
|
364
374
|
* The frame stays active until the next live frame supersedes it, which is
|
|
365
375
|
* closed at the new frame's `mediaTime`. Use this for streams whose producer
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"media-session.d.ts","sourceRoot":"","sources":["../../src/types/media-session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EACvB,mCAAmC,EACnC,sBAAsB,EACtB,yBAAyB,EACzB,8BAA8B,EAC9B,8BAA8B,EAC9B,4BAA4B,EAC5B,oBAAoB,EACpB,0BAA0B,EAC1B,gBAAgB,EAChB,yBAAyB,IAAI,6BAA6B,EAC1D,4BAA4B,EAC5B,4BAA4B,EAC7B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,KAAK,EACV,+BAA+B,EAC/B,0BAA0B,EAC1B,yBAAyB,EACzB,eAAe,EACf,0BAA0B,EAC3B,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EACV,uBAAuB,EACvB,iBAAiB,EACjB,wBAAwB,EACxB,qBAAqB,EACrB,aAAa,EACb,gBAAgB,EAChB,yBAAyB,EACzB,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"media-session.d.ts","sourceRoot":"","sources":["../../src/types/media-session.ts"],"names":[],"mappings":"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"}
|
|
@@ -146,9 +146,9 @@ export interface RenderPreparationMaskFrameOptions {
|
|
|
146
146
|
export interface RenderPreparationPlaybackGateOptions {
|
|
147
147
|
/**
|
|
148
148
|
* Pause playback while required artifacts are unprepared. A session turns
|
|
149
|
-
* this on by default
|
|
150
|
-
*
|
|
151
|
-
* created directly leaves it off.
|
|
149
|
+
* this on by default for playback. Its initial opening frame may appear
|
|
150
|
+
* before annotations arrive. `playbackGate: false` on the session turns it
|
|
151
|
+
* off. A renderer created directly leaves it off.
|
|
152
152
|
*/
|
|
153
153
|
readonly enabled?: boolean;
|
|
154
154
|
/**
|
|
@@ -187,6 +187,9 @@ export interface RenderPreparationPlaybackGateOptions {
|
|
|
187
187
|
* timeline. Defaults to none, which asks only that the frame about to be
|
|
188
188
|
* presented is no longer pending.
|
|
189
189
|
*
|
|
190
|
+
* This is unrelated to the detection playback gate's field of the same name,
|
|
191
|
+
* which is a minimum coverage lead.
|
|
192
|
+
*
|
|
190
193
|
* It buys no cooked frames: how far ahead preparation cooks and how much of
|
|
191
194
|
* that it keeps are the prepared window's own prefetch and cache spans, sized
|
|
192
195
|
* by the session rather than by this. The gate reads them only as a second
|
|
@@ -298,8 +301,8 @@ export interface RenderPreparationOptions {
|
|
|
298
301
|
* reports the furthest any of its gates reaches.
|
|
299
302
|
*
|
|
300
303
|
* A renderer created directly leaves this off. `createMediaSession()` turns it
|
|
301
|
-
* on
|
|
302
|
-
* `playbackGate: false` to the session to opt out. See
|
|
304
|
+
* on for playback; the initial opening frame does not wait for future
|
|
305
|
+
* annotations. Pass `playbackGate: false` to the session to opt out. See
|
|
303
306
|
* {@link RenderPreparationPlaybackGateOptions}.
|
|
304
307
|
*/
|
|
305
308
|
readonly playbackGate?: RenderPreparationPlaybackGateOptions;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render-preparation.d.ts","sourceRoot":"","sources":["../../src/types/render-preparation.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,oBAAY,qBAAqB;IAC/B;;OAEG;IACH,IAAI,SAAS;IACb;;OAEG;IACH,UAAU,eAAe;IACzB;;;OAGG;IACH,MAAM,WAAW;CAClB;AAED;;GAEG;AACH,oBAAY,8BAA8B;IACxC,UAAU,eAAe;IACzB,MAAM,WAAW;CAClB;AAED;;GAEG;AACH,oBAAY,6BAA6B;IACvC,QAAQ,aAAa;IACrB,KAAK,UAAU;IACf,WAAW,gBAAgB;IAC3B,KAAK,UAAU;CAChB;AAED;;GAEG;AACH,oBAAY,6BAA6B;IACvC,iEAAiE;IACjE,SAAS,cAAc;IACvB,sEAAsE;IACtE,YAAY,iBAAiB;CAC9B;AAED;;GAEG;AACH,oBAAY,oCAAoC;IAC9C,QAAQ,aAAa;IACrB,KAAK,UAAU;IACf,OAAO,YAAY;IACnB,QAAQ,aAAa;CACtB;AAED;;;;;;;GAOG;AACH,oBAAY,+BAA+B;IACzC,2DAA2D;IAC3D,qBAAqB,0BAA0B;IAC/C,0EAA0E;IAC1E,oBAAoB,yBAAyB;CAC9C;AAED;;GAEG;AACH,MAAM,WAAW,oCAAoC;IACnD,QAAQ,CAAC,MAAM,EAAE,+BAA+B,CAAC;IACjD;;;;OAIG;IACH,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,YAAY,IAAI,MAAM,CAAC;CACxB;AAED;;;;GAIG;AACH,MAAM,WAAW,iCAAiC;IAChD;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE;QACjB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;QAClC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;KACvC,CAAC;IACF;;OAEG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IACrC;;OAEG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IACvC;;OAEG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IACrC;;OAEG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC;;OAEG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IACtC;;OAEG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,oCAAoC;IACnD;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;;;;;;;;;;OAaG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC;;;;;;OAMG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IACvC;;;;;;OAMG;IACH,QAAQ,CAAC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAC1C
|
|
1
|
+
{"version":3,"file":"render-preparation.d.ts","sourceRoot":"","sources":["../../src/types/render-preparation.ts"],"names":[],"mappings":"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"}
|
package/dist/{video-engine-media-source-CUXnOJOV.js → video-engine-media-source-DR-x1UfK.js}
RENAMED
|
@@ -108,6 +108,37 @@ function resolveDisplayPixelRatio(display) {
|
|
|
108
108
|
return Math.min(devicePixelRatio, ceiling);
|
|
109
109
|
}
|
|
110
110
|
|
|
111
|
+
function createMediaFrameClock(timeline) {
|
|
112
|
+
const { frameCount, tickRate } = timeline;
|
|
113
|
+
const firstTimestamp = timeline.timeAt(0);
|
|
114
|
+
const endTimestamp = timeline.endTicksAt(frameCount - 1) / tickRate;
|
|
115
|
+
const validateIndex = (index) => {
|
|
116
|
+
if (!Number.isInteger(index) || index < 0 || index >= frameCount) {
|
|
117
|
+
throw new RangeError(`Frame index must be between 0 and ${frameCount - 1}.`);
|
|
118
|
+
}
|
|
119
|
+
};
|
|
120
|
+
return Object.freeze({
|
|
121
|
+
frameCount,
|
|
122
|
+
firstTimestamp,
|
|
123
|
+
endTimestamp,
|
|
124
|
+
duration: endTimestamp - firstTimestamp,
|
|
125
|
+
timeAt(index) {
|
|
126
|
+
validateIndex(index);
|
|
127
|
+
return timeline.timeAt(index);
|
|
128
|
+
},
|
|
129
|
+
durationAt(index) {
|
|
130
|
+
validateIndex(index);
|
|
131
|
+
return (timeline.endTicksAt(index) - timeline.ticksAt(index)) / tickRate;
|
|
132
|
+
},
|
|
133
|
+
indexAtOrBefore(mediaTime) {
|
|
134
|
+
if (!Number.isFinite(mediaTime)) {
|
|
135
|
+
throw new RangeError("Media time must be finite.");
|
|
136
|
+
}
|
|
137
|
+
return timeline.indexAtOrBefore(mediaTime);
|
|
138
|
+
},
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
|
|
111
142
|
const VIDEO_ENGINE_ENTRY = "supervision/web-video-engine";
|
|
112
143
|
const VIDEO_ENGINE_ANALYSIS_ENTRY = `${VIDEO_ENGINE_ENTRY}/analysis`;
|
|
113
144
|
/**
|
|
@@ -196,7 +227,7 @@ async function openWebVideoEngineMediaSource(options) {
|
|
|
196
227
|
let engine;
|
|
197
228
|
let retainedFrames;
|
|
198
229
|
try {
|
|
199
|
-
const { WebVideoEngine, displayBoxResolution } = await importEngineEntry();
|
|
230
|
+
const { WebVideoEngine, displayBoxResolution, FrameTimeline } = await importEngineEntry();
|
|
200
231
|
const { display, frameDecodeStrategy, ...engineOptions } = options;
|
|
201
232
|
engine = new WebVideoEngine({
|
|
202
233
|
decodeStrategy: display ? displayBoxResolution(display) : undefined,
|
|
@@ -216,6 +247,8 @@ async function openWebVideoEngineMediaSource(options) {
|
|
|
216
247
|
});
|
|
217
248
|
return {
|
|
218
249
|
engine: openedEngine,
|
|
250
|
+
setDisplay: (display) => openedEngine.setDisplay(display),
|
|
251
|
+
frameClock: createMediaFrameClock(FrameTimeline.from(snapshot.timeline)),
|
|
219
252
|
input: {
|
|
220
253
|
dispose() {
|
|
221
254
|
retainedFrames?.dispose();
|
|
@@ -447,4 +480,4 @@ function resolveFrameDuration(nativeFps) {
|
|
|
447
480
|
}
|
|
448
481
|
|
|
449
482
|
export { MediaSourceError as M, createWebVideoEngineMediaRendererSource as c, getMediaErrorKind as g, isMediaSourceError as i, openWebVideoEngineMediaSource as o, resolveDisplayPixelRatio as r, toMediaSourceError as t };
|
|
450
|
-
//# sourceMappingURL=video-engine-media-source-
|
|
483
|
+
//# sourceMappingURL=video-engine-media-source-DR-x1UfK.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"video-engine-media-source-DR-x1UfK.js","sources":["../src/media/media-errors.ts","../src/media/display-pixel-ratio.ts","../src/media/media-frame-clock.ts","../src/media/engine-import-failure.ts","../src/media/video-engine-media-source.ts"],"sourcesContent":[null,null,null,null,null],"names":[],"mappings":"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"}
|
|
@@ -408,6 +408,19 @@ class DecodeSession {
|
|
|
408
408
|
return queued.timestampS;
|
|
409
409
|
return this.reachable;
|
|
410
410
|
}
|
|
411
|
+
async resizeOutput({ width, height }) {
|
|
412
|
+
await this.exclusive(async () => {
|
|
413
|
+
if (this.closed || this.outputWidth === undefined)
|
|
414
|
+
return;
|
|
415
|
+
if (this.outputWidth === width && this.outputHeight === height)
|
|
416
|
+
return;
|
|
417
|
+
this.quiesce();
|
|
418
|
+
this.outputWidth = width;
|
|
419
|
+
this.outputHeight = height;
|
|
420
|
+
this.exhausted = true;
|
|
421
|
+
this.epoch++;
|
|
422
|
+
});
|
|
423
|
+
}
|
|
411
424
|
/** The frame at or before `targetS`, or null when nothing precedes it. */
|
|
412
425
|
async frameAt(targetS) {
|
|
413
426
|
const landed = await this.exclusive(() => this.land(targetS));
|
|
@@ -1013,6 +1026,9 @@ function presentationSessionSource(source, timeline) {
|
|
|
1013
1026
|
? sampleAtPresentationTime(sample, timeline.fromSourceTime(sample.timestamp))
|
|
1014
1027
|
: null;
|
|
1015
1028
|
return {
|
|
1029
|
+
...(source.resizeOutput
|
|
1030
|
+
? { resizeOutput: source.resizeOutput.bind(source) }
|
|
1031
|
+
: {}),
|
|
1016
1032
|
async frameAt(targetS) {
|
|
1017
1033
|
return wrap(await source.frameAt(timeline.toSourceTime(targetS)));
|
|
1018
1034
|
},
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type AnySourceHandle } from "./decode-source";
|
|
2
2
|
import type { FrameId } from "./frame-timeline";
|
|
3
|
+
import type { DecodeDimensions } from "./decode-resolution";
|
|
3
4
|
import { type ScrubCursor, ScrubCursorState, type ScrubFrame, type ScrubFrameListener, type ScrubTrackInfo } from "./scrub-cursor";
|
|
4
5
|
import { type Sec } from "./types";
|
|
5
6
|
/**
|
|
@@ -23,7 +24,9 @@ import { type Sec } from "./types";
|
|
|
23
24
|
*/
|
|
24
25
|
export declare class CanvasSinkScrubCursor implements ScrubCursor {
|
|
25
26
|
private readonly provider;
|
|
26
|
-
private
|
|
27
|
+
private trackInfo;
|
|
28
|
+
private outputGeneration;
|
|
29
|
+
private readonly outputReads;
|
|
27
30
|
private readonly disposeSource;
|
|
28
31
|
/**
|
|
29
32
|
* Forward-playback iterator. Lives only between attachPlay and detachPlay so
|
|
@@ -50,6 +53,8 @@ export declare class CanvasSinkScrubCursor implements ScrubCursor {
|
|
|
50
53
|
get state(): ScrubCursorState;
|
|
51
54
|
get track(): ScrubTrackInfo;
|
|
52
55
|
get isIdle(): boolean;
|
|
56
|
+
resizeOutput({ width, height }: DecodeDimensions): Promise<boolean>;
|
|
57
|
+
private trackOutputRead;
|
|
53
58
|
open(): Promise<void>;
|
|
54
59
|
/** No cache to read; the scheduler is the caching backend. */
|
|
55
60
|
peekCached(): ScrubFrame | null;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { DecodeDimensions } from "./decode-resolution";
|
|
1
2
|
import { type AnySourceHandle } from "./decode-source";
|
|
2
3
|
import { FrameCache } from "./frame-cache";
|
|
3
4
|
import type { FrameId } from "./frame-timeline";
|
|
@@ -66,9 +67,12 @@ export declare function boundedKeyframeTimestamps(keyframesS: readonly number[])
|
|
|
66
67
|
*/
|
|
67
68
|
export declare class DecodeScheduler implements ScrubCursor {
|
|
68
69
|
private provider;
|
|
69
|
-
private
|
|
70
|
+
private cache;
|
|
70
71
|
private keyframeIndex;
|
|
71
|
-
private
|
|
72
|
+
private trackInfo;
|
|
73
|
+
private outputGeneration;
|
|
74
|
+
private resizingOutput;
|
|
75
|
+
private readonly outputReads;
|
|
72
76
|
private readonly exactTolMs;
|
|
73
77
|
private readonly previewTolMs;
|
|
74
78
|
private readonly now;
|
|
@@ -152,6 +156,7 @@ export declare class DecodeScheduler implements ScrubCursor {
|
|
|
152
156
|
get track(): ScrubTrackInfo;
|
|
153
157
|
get playReadAhead(): number;
|
|
154
158
|
get isIdle(): boolean;
|
|
159
|
+
resizeOutput({ width, height }: DecodeDimensions): Promise<boolean>;
|
|
155
160
|
open(): Promise<void>;
|
|
156
161
|
/**
|
|
157
162
|
* The first frame, on the seed ceiling and its own attempt budget.
|
|
@@ -269,6 +274,7 @@ export declare class DecodeScheduler implements ScrubCursor {
|
|
|
269
274
|
* decoder having a bad moment from one that will never answer again.
|
|
270
275
|
*/
|
|
271
276
|
private withDecodeWatchdog;
|
|
277
|
+
private trackOutputRead;
|
|
272
278
|
/**
|
|
273
279
|
* The same watchdog over a container metadata read. Deliberately unbooked:
|
|
274
280
|
* the keyframe probe never touches the decoder, so its answer is no evidence
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { DecodeDimensions } from "./decode-resolution";
|
|
1
2
|
import { type Rotation } from "./rotation";
|
|
2
3
|
import type { VideoSampleLike } from "./scrub-cursor";
|
|
3
4
|
/**
|
|
@@ -64,6 +65,7 @@ export declare function sessionDrivable(config: VideoDecoderConfig): boolean;
|
|
|
64
65
|
* wraps it stays fake-injectable under test.
|
|
65
66
|
*/
|
|
66
67
|
export interface SessionFrameSource {
|
|
68
|
+
resizeOutput?(dimensions: DecodeDimensions): Promise<void>;
|
|
67
69
|
frameAt(targetS: number): Promise<VideoSampleLike | null>;
|
|
68
70
|
framesFrom(startS: number): AsyncGenerator<VideoSampleLike, void, unknown>;
|
|
69
71
|
framesCovering(startS: number, endS: number): AsyncGenerator<VideoSampleLike, void, unknown>;
|
|
@@ -149,8 +151,8 @@ export declare class DecodeSession implements SessionFrameSource {
|
|
|
149
151
|
private epoch;
|
|
150
152
|
private readonly outputTimeoutMs;
|
|
151
153
|
private readonly rotation;
|
|
152
|
-
private
|
|
153
|
-
private
|
|
154
|
+
private outputWidth;
|
|
155
|
+
private outputHeight;
|
|
154
156
|
private readonly snapshotFrame;
|
|
155
157
|
constructor(options: DecodeSessionOptions);
|
|
156
158
|
/** Times the session has configured the decoder onto an anchor. */
|
|
@@ -163,6 +165,7 @@ export declare class DecodeSession implements SessionFrameSource {
|
|
|
163
165
|
* when there is one, since those are still servable, else the last position
|
|
164
166
|
* handed out. */
|
|
165
167
|
get reachableFromS(): number;
|
|
168
|
+
resizeOutput({ width, height }: DecodeDimensions): Promise<void>;
|
|
166
169
|
/** The frame at or before `targetS`, or null when nothing precedes it. */
|
|
167
170
|
frameAt(targetS: number): Promise<VideoSampleLike | null>;
|
|
168
171
|
/**
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { BlobSource, ReadableStreamSource, UrlSource } from "mediabunny";
|
|
2
2
|
import type { CreateScrubCursorOptions } from "./create-scrub-cursor";
|
|
3
3
|
import { type SessionFrameSource } from "./decode-session";
|
|
4
|
+
import { type DecodeDimensions } from "./decode-resolution";
|
|
4
5
|
import type { SourceResidency } from "./source-residency";
|
|
5
6
|
import type { KeyframeProbe } from "./keyframe-index";
|
|
6
7
|
import { type ScrubTrackInfo, type VideoSampleLike } from "./scrub-cursor";
|
|
@@ -97,6 +98,7 @@ export type DecodedFrame = {
|
|
|
97
98
|
* which the scheduler reports so a human can see which machinery is decoding.
|
|
98
99
|
*/
|
|
99
100
|
export interface FrameProvider {
|
|
101
|
+
resizeOutput?(dimensions: DecodeDimensions): Promise<void>;
|
|
100
102
|
readonly decodePath: DecodePath;
|
|
101
103
|
readonly track: ScrubTrackInfo;
|
|
102
104
|
readonly keyframeProbe: KeyframeProbe;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { type MediaClock } from "./clock";
|
|
2
|
+
import { type DisplayBoxResolutionOptions } from "./decode-resolution";
|
|
2
3
|
import type { FrameId, FrameLanding } from "./frame-timeline";
|
|
3
4
|
import { type EngineDiagnostics } from "./diagnostics";
|
|
4
5
|
import { type SeekIntent } from "./scrub-cursor";
|
|
@@ -38,6 +39,8 @@ export interface EngineCoreOptions {
|
|
|
38
39
|
* the core never emits a competing time that would yank a settled playhead.
|
|
39
40
|
*/
|
|
40
41
|
export declare class EngineCore {
|
|
42
|
+
private decodeStrategy;
|
|
43
|
+
private displayResize;
|
|
41
44
|
private readonly emit;
|
|
42
45
|
private readonly emitDiagnostics;
|
|
43
46
|
private readonly emitPresentedFrame;
|
|
@@ -96,6 +99,8 @@ export declare class EngineCore {
|
|
|
96
99
|
private lastHostFrame;
|
|
97
100
|
/** Rejects an older refresh that completes after a newer one in one epoch. */
|
|
98
101
|
private lastHostPaintSeq;
|
|
102
|
+
/** Main-thread visibility pauses only the wait for host presentation. */
|
|
103
|
+
private presentationVisible;
|
|
99
104
|
/** Mirrors WebVideoEngine's interactive-seek latch: true when a drag paused a
|
|
100
105
|
* playing engine, so endInteractiveSeek knows to resume. */
|
|
101
106
|
private resumeAfterInteractiveSeek;
|
|
@@ -122,6 +127,8 @@ export declare class EngineCore {
|
|
|
122
127
|
*/
|
|
123
128
|
setCanvas(canvas: OffscreenCanvas | null, viewport?: SerializedViewport): void;
|
|
124
129
|
load(config: EngineLoadConfig): Promise<EngineReadySnapshot>;
|
|
130
|
+
setDisplay(display: DisplayBoxResolutionOptions): Promise<boolean>;
|
|
131
|
+
private afterDisplayResize;
|
|
125
132
|
play(): void;
|
|
126
133
|
pause(): void;
|
|
127
134
|
togglePlayback(): void;
|
|
@@ -186,6 +193,8 @@ export declare class EngineCore {
|
|
|
186
193
|
private observeSeekIdle;
|
|
187
194
|
private handleEnded;
|
|
188
195
|
private awaitSeekLanding;
|
|
196
|
+
/** Main-thread document visibility; decoding/watchdogs remain active. */
|
|
197
|
+
setPresentationVisibility(visible: boolean): void;
|
|
189
198
|
private isCurrentSeek;
|
|
190
199
|
private forgetSeekLanding;
|
|
191
200
|
private abandonAwaitedSeek;
|