@glissade/export-web 0.10.1-pre.1 → 0.11.0-pre.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +0 -7
- package/dist/index.js +9 -9
- package/package.json +7 -4
package/dist/index.d.ts
CHANGED
|
@@ -15,13 +15,6 @@ declare class MediabunnyVideoFrameSource implements VideoFrameSource {
|
|
|
15
15
|
private frameIndex;
|
|
16
16
|
warm(fromT: number, toT: number): Promise<void>;
|
|
17
17
|
getFrameSync(mediaT: number): HTMLCanvasElement | OffscreenCanvas;
|
|
18
|
-
/**
|
|
19
|
-
* Test-only introspection (§5.4): the number of decoded frames currently
|
|
20
|
-
* held, so the lookahead/eviction bound (MAX_CACHED_FRAMES) is assertable
|
|
21
|
-
* without reaching into the private cache.
|
|
22
|
-
* @internal — not part of the public API surface (api-extractor strips it).
|
|
23
|
-
*/
|
|
24
|
-
cachedFrameCount(): number;
|
|
25
18
|
close(): void;
|
|
26
19
|
}
|
|
27
20
|
//#endregion
|
package/dist/index.js
CHANGED
|
@@ -11,6 +11,14 @@ import { Canvas2DBackend } from "@glissade/backend-canvas2d";
|
|
|
11
11
|
*/
|
|
12
12
|
const DEFAULT_LOOKAHEAD_FRAMES = 10;
|
|
13
13
|
const MAX_CACHED_FRAMES = 64;
|
|
14
|
+
/**
|
|
15
|
+
* Test-only introspection (§5.4): a module-private registry mapping each source
|
|
16
|
+
* to a reader of its decoded-frame cache size, so the lookahead/eviction bound
|
|
17
|
+
* (MAX_CACHED_FRAMES) is assertable WITHOUT a public class method on the source.
|
|
18
|
+
* Not re-exported from index.ts — import `__cachedFrameCount` directly from
|
|
19
|
+
* this module in tests.
|
|
20
|
+
*/
|
|
21
|
+
const cacheSizeReaders = /* @__PURE__ */ new WeakMap();
|
|
14
22
|
var MediabunnyVideoFrameSource = class MediabunnyVideoFrameSource {
|
|
15
23
|
fps;
|
|
16
24
|
duration;
|
|
@@ -22,6 +30,7 @@ var MediabunnyVideoFrameSource = class MediabunnyVideoFrameSource {
|
|
|
22
30
|
this.fps = fps;
|
|
23
31
|
this.duration = duration;
|
|
24
32
|
this.label = label;
|
|
33
|
+
cacheSizeReaders.set(this, () => this.cache.size);
|
|
25
34
|
}
|
|
26
35
|
static async open(src, label = typeof src === "string" ? src : "blob") {
|
|
27
36
|
const track = await new Input({
|
|
@@ -66,15 +75,6 @@ var MediabunnyVideoFrameSource = class MediabunnyVideoFrameSource {
|
|
|
66
75
|
if (!hit) throw new ColdAssetError(this.label, `frame ${idx} not decoded`, mediaT);
|
|
67
76
|
return hit;
|
|
68
77
|
}
|
|
69
|
-
/**
|
|
70
|
-
* Test-only introspection (§5.4): the number of decoded frames currently
|
|
71
|
-
* held, so the lookahead/eviction bound (MAX_CACHED_FRAMES) is assertable
|
|
72
|
-
* without reaching into the private cache.
|
|
73
|
-
* @internal — not part of the public API surface (api-extractor strips it).
|
|
74
|
-
*/
|
|
75
|
-
cachedFrameCount() {
|
|
76
|
-
return this.cache.size;
|
|
77
|
-
}
|
|
78
78
|
close() {
|
|
79
79
|
this.cache.clear();
|
|
80
80
|
}
|
package/package.json
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@glissade/export-web",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.11.0-pre.0",
|
|
4
4
|
"description": "glissade in-browser export: WebCodecs VideoEncoder + Mediabunny muxing, OfflineAudioContext audio mix. Frame-accurate, faster than realtime, no server.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
|
+
"engines": {
|
|
7
|
+
"node": ">=20.19"
|
|
8
|
+
},
|
|
6
9
|
"type": "module",
|
|
7
10
|
"sideEffects": false,
|
|
8
11
|
"exports": {
|
|
@@ -16,9 +19,9 @@
|
|
|
16
19
|
],
|
|
17
20
|
"dependencies": {
|
|
18
21
|
"mediabunny": "^1.0.0",
|
|
19
|
-
"@glissade/backend-canvas2d": "0.
|
|
20
|
-
"@glissade/core": "0.
|
|
21
|
-
"@glissade/scene": "0.
|
|
22
|
+
"@glissade/backend-canvas2d": "0.11.0-pre.0",
|
|
23
|
+
"@glissade/core": "0.11.0-pre.0",
|
|
24
|
+
"@glissade/scene": "0.11.0-pre.0"
|
|
22
25
|
},
|
|
23
26
|
"repository": {
|
|
24
27
|
"type": "git",
|