frameyard 0.8.0 → 0.10.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/CHANGELOG.md +177 -14
- package/GLOSSARY.md +112 -2
- package/README.md +302 -265
- package/dist/assets/integrations.d.ts +8 -4
- package/dist/assets/integrations.d.ts.map +1 -1
- package/dist/assets/integrations.js +8 -4
- package/dist/assets/integrations.js.map +1 -1
- package/dist/assets/provenance.d.ts +2 -2
- package/dist/assets/provenance.d.ts.map +1 -1
- package/dist/assets/provenance.js +5 -3
- package/dist/assets/provenance.js.map +1 -1
- package/dist/assets/tts-supertonic.d.ts +28 -0
- package/dist/assets/tts-supertonic.d.ts.map +1 -0
- package/dist/assets/tts-supertonic.js +156 -0
- package/dist/assets/tts-supertonic.js.map +1 -0
- package/dist/assets/tts.d.ts +18 -6
- package/dist/assets/tts.d.ts.map +1 -1
- package/dist/assets/tts.js +219 -97
- package/dist/assets/tts.js.map +1 -1
- package/dist/cli.js +1685 -93
- package/dist/cli.js.map +1 -1
- package/dist/composition/format.d.ts +1 -1
- package/dist/composition/format.d.ts.map +1 -1
- package/dist/composition/format.js +1 -1
- package/dist/composition/format.js.map +1 -1
- package/dist/context.d.ts +82 -0
- package/dist/context.d.ts.map +1 -0
- package/dist/context.js +277 -0
- package/dist/context.js.map +1 -0
- package/dist/contracts.d.ts +25 -0
- package/dist/contracts.d.ts.map +1 -1
- package/dist/contracts.js.map +1 -1
- package/dist/doctor.d.ts +14 -1
- package/dist/doctor.d.ts.map +1 -1
- package/dist/doctor.js +166 -7
- package/dist/doctor.js.map +1 -1
- package/dist/errors.d.ts +1 -1
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js.map +1 -1
- package/dist/fonts/add.d.ts +41 -0
- package/dist/fonts/add.d.ts.map +1 -0
- package/dist/fonts/add.js +259 -0
- package/dist/fonts/add.js.map +1 -0
- package/dist/fonts/binary.d.ts +4 -0
- package/dist/fonts/binary.d.ts.map +1 -0
- package/dist/fonts/binary.js +21 -0
- package/dist/fonts/binary.js.map +1 -0
- package/dist/fonts/css.d.ts +4 -0
- package/dist/fonts/css.d.ts.map +1 -0
- package/dist/fonts/css.js +50 -0
- package/dist/fonts/css.js.map +1 -0
- package/dist/fonts/fontsource.d.ts +107 -0
- package/dist/fonts/fontsource.d.ts.map +1 -0
- package/dist/fonts/fontsource.js +565 -0
- package/dist/fonts/fontsource.js.map +1 -0
- package/dist/fonts/index.d.ts +11 -0
- package/dist/fonts/index.d.ts.map +1 -0
- package/dist/fonts/index.js +11 -0
- package/dist/fonts/index.js.map +1 -0
- package/dist/fonts/install.d.ts +24 -0
- package/dist/fonts/install.d.ts.map +1 -0
- package/dist/fonts/install.js +145 -0
- package/dist/fonts/install.js.map +1 -0
- package/dist/fonts/manifest.d.ts +21 -0
- package/dist/fonts/manifest.d.ts.map +1 -0
- package/dist/fonts/manifest.js +96 -0
- package/dist/fonts/manifest.js.map +1 -0
- package/dist/fonts/options.d.ts +9 -0
- package/dist/fonts/options.d.ts.map +1 -0
- package/dist/fonts/options.js +66 -0
- package/dist/fonts/options.js.map +1 -0
- package/dist/fonts/schema.d.ts +4 -0
- package/dist/fonts/schema.d.ts.map +1 -0
- package/dist/fonts/schema.js +316 -0
- package/dist/fonts/schema.js.map +1 -0
- package/dist/fonts/summary.d.ts +16 -0
- package/dist/fonts/summary.d.ts.map +1 -0
- package/dist/fonts/summary.js +22 -0
- package/dist/fonts/summary.js.map +1 -0
- package/dist/fonts/types.d.ts +56 -0
- package/dist/fonts/types.d.ts.map +1 -0
- package/dist/fonts/types.js +8 -0
- package/dist/fonts/types.js.map +1 -0
- package/dist/fonts/verify.d.ts +33 -0
- package/dist/fonts/verify.d.ts.map +1 -0
- package/dist/fonts/verify.js +200 -0
- package/dist/fonts/verify.js.map +1 -0
- package/dist/html/validate.d.ts.map +1 -1
- package/dist/html/validate.js +59 -0
- package/dist/html/validate.js.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/inspect.d.ts +61 -0
- package/dist/inspect.d.ts.map +1 -0
- package/dist/inspect.js +325 -0
- package/dist/inspect.js.map +1 -0
- package/dist/lint.d.ts +63 -0
- package/dist/lint.d.ts.map +1 -0
- package/dist/lint.js +265 -0
- package/dist/lint.js.map +1 -0
- package/dist/policy.d.ts +69 -0
- package/dist/policy.d.ts.map +1 -0
- package/dist/policy.js +361 -0
- package/dist/policy.js.map +1 -0
- package/dist/preview/fonts/LICENSE-figtree.txt +93 -0
- package/dist/preview/fonts/LICENSE-space-mono.txt +93 -0
- package/dist/preview/fonts/README.md +23 -0
- package/dist/preview/fonts/figtree-latin-wght-normal.woff2 +0 -0
- package/dist/preview/fonts/space-mono-latin-400-normal.woff2 +0 -0
- package/dist/preview/fonts/space-mono-latin-700-normal.woff2 +0 -0
- package/dist/preview/main.js +5 -2
- package/dist/preview/main.js.map +1 -1
- package/dist/preview/timeline-data.d.ts +17 -69
- package/dist/preview/timeline-data.d.ts.map +1 -1
- package/dist/preview/timeline-host.d.ts.map +1 -1
- package/dist/preview/timeline-host.js +70 -45
- package/dist/preview/timeline-host.js.map +1 -1
- package/dist/preview/timeline-main.d.ts.map +1 -1
- package/dist/preview/timeline-main.js +88 -27
- package/dist/preview/timeline-main.js.map +1 -1
- package/dist/project.d.ts +10 -3
- package/dist/project.d.ts.map +1 -1
- package/dist/project.js +20 -17
- package/dist/project.js.map +1 -1
- package/dist/renderer/audio.d.ts +6 -0
- package/dist/renderer/audio.d.ts.map +1 -1
- package/dist/renderer/audio.js +3 -1
- package/dist/renderer/audio.js.map +1 -1
- package/dist/renderer/browser.d.ts.map +1 -1
- package/dist/renderer/browser.js +13 -0
- package/dist/renderer/browser.js.map +1 -1
- package/dist/renderer/concurrency.d.ts +6 -0
- package/dist/renderer/concurrency.d.ts.map +1 -0
- package/dist/renderer/concurrency.js +27 -0
- package/dist/renderer/concurrency.js.map +1 -0
- package/dist/renderer/ffmpeg.d.ts +104 -5
- package/dist/renderer/ffmpeg.d.ts.map +1 -1
- package/dist/renderer/ffmpeg.js +580 -67
- package/dist/renderer/ffmpeg.js.map +1 -1
- package/dist/renderer/index.js +1 -1
- package/dist/renderer/index.js.map +1 -1
- package/dist/renderer/keyframe-expressions.d.ts +39 -0
- package/dist/renderer/keyframe-expressions.d.ts.map +1 -0
- package/dist/renderer/keyframe-expressions.js +180 -0
- package/dist/renderer/keyframe-expressions.js.map +1 -0
- package/dist/renderer/session-pool.d.ts +28 -0
- package/dist/renderer/session-pool.d.ts.map +1 -0
- package/dist/renderer/session-pool.js +91 -0
- package/dist/renderer/session-pool.js.map +1 -0
- package/dist/renderer/timeline.d.ts +2 -0
- package/dist/renderer/timeline.d.ts.map +1 -1
- package/dist/renderer/timeline.js +600 -147
- package/dist/renderer/timeline.js.map +1 -1
- package/dist/renderer/timings.d.ts +13 -0
- package/dist/renderer/timings.d.ts.map +1 -0
- package/dist/renderer/timings.js +29 -0
- package/dist/renderer/timings.js.map +1 -0
- package/dist/runtime/host.d.ts.map +1 -1
- package/dist/runtime/host.js +4 -0
- package/dist/runtime/host.js.map +1 -1
- package/dist/scaffold.d.ts +3 -0
- package/dist/scaffold.d.ts.map +1 -1
- package/dist/scaffold.js +48 -320
- package/dist/scaffold.js.map +1 -1
- package/dist/server/composition-html.d.ts +2 -0
- package/dist/server/composition-html.d.ts.map +1 -1
- package/dist/server/composition-html.js +7 -0
- package/dist/server/composition-html.js.map +1 -1
- package/dist/server/preview-html.d.ts.map +1 -1
- package/dist/server/preview-html.js +74 -188
- package/dist/server/preview-html.js.map +1 -1
- package/dist/server/preview-style.d.ts +11 -0
- package/dist/server/preview-style.d.ts.map +1 -0
- package/dist/server/preview-style.js +298 -0
- package/dist/server/preview-style.js.map +1 -0
- package/dist/server/server.d.ts.map +1 -1
- package/dist/server/server.js +31 -1
- package/dist/server/server.js.map +1 -1
- package/dist/server/timeline-preview-data.d.ts.map +1 -1
- package/dist/server/timeline-preview-data.js +12 -34
- package/dist/server/timeline-preview-data.js.map +1 -1
- package/dist/server/timeline-preview-html.d.ts.map +1 -1
- package/dist/server/timeline-preview-html.js +140 -148
- package/dist/server/timeline-preview-html.js.map +1 -1
- package/dist/templates.d.ts +16 -0
- package/dist/templates.d.ts.map +1 -0
- package/dist/templates.js +186 -0
- package/dist/templates.js.map +1 -0
- package/dist/timeline/easing.d.ts +36 -0
- package/dist/timeline/easing.d.ts.map +1 -0
- package/dist/timeline/easing.js +225 -0
- package/dist/timeline/easing.js.map +1 -0
- package/dist/timeline/keyframes.d.ts +23 -0
- package/dist/timeline/keyframes.d.ts.map +1 -0
- package/dist/timeline/keyframes.js +95 -0
- package/dist/timeline/keyframes.js.map +1 -0
- package/dist/timeline/plan.d.ts +6 -12
- package/dist/timeline/plan.d.ts.map +1 -1
- package/dist/timeline/plan.js +17 -30
- package/dist/timeline/plan.js.map +1 -1
- package/dist/timeline/resolve.d.ts +12 -0
- package/dist/timeline/resolve.d.ts.map +1 -1
- package/dist/timeline/resolve.js +105 -9
- package/dist/timeline/resolve.js.map +1 -1
- package/dist/timeline/scene.d.ts +126 -0
- package/dist/timeline/scene.d.ts.map +1 -0
- package/dist/timeline/scene.js +109 -0
- package/dist/timeline/scene.js.map +1 -0
- package/dist/timeline/schema.d.ts +31 -0
- package/dist/timeline/schema.d.ts.map +1 -1
- package/dist/timeline/schema.js +240 -9
- package/dist/timeline/schema.js.map +1 -1
- package/dist/timeline/transitions.d.ts +21 -0
- package/dist/timeline/transitions.d.ts.map +1 -0
- package/dist/timeline/transitions.js +23 -0
- package/dist/timeline/transitions.js.map +1 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/docs/adr/0007-make-html-documents-the-composition-unit.md +1 -1
- package/docs/adr/0010-make-timelines-the-render-unit.md +3 -2
- package/docs/adr/0012-render-timelines-with-segmented-lossless-clip-intermediates.md +1 -1
- package/docs/adr/0014-compose-timeline-clips-with-css-blend-modes.md +2 -1
- package/docs/adr/0015-inherit-composition-format-from-the-project.md +2 -2
- package/docs/adr/0016-author-compositions-as-html-fragments.md +1 -1
- package/docs/adr/0018-animate-timeline-clips-with-keyframes.md +35 -0
- package/docs/adr/0019-make-same-track-overlap-the-transition-window.md +36 -0
- package/docs/adr/0020-crossfade-audio-clips-on-audio-tracks.md +27 -0
- package/docs/adr/0021-project-timeline-scenes-once.md +32 -0
- package/docs/adr/0022-gate-heavy-operations-with-a-workspace-resource-policy.md +35 -0
- package/docs/adr/0023-pin-fonts-as-project-assets.md +98 -0
- package/docs/adr/0024-stream-composition-captures-and-skip-trivial-composites.md +86 -0
- package/docs/adr/0025-capture-timeline-layers-in-parallel-with-a-global-limit.md +67 -0
- package/docs/adr/0026-reuse-loaded-composition-sessions-across-segments.md +70 -0
- package/docs/adr/0027-encode-two-full-frame-layers-through-dual-pipes.md +76 -0
- package/docs/adr/0028-encode-full-frame-video-segments-directly.md +65 -0
- package/docs/migration-0.4.md +2 -2
- package/docs/preview-testing.md +27 -6
- package/docs/{v0.1-design.md → v0.x-design.md} +57 -32
- package/examples/blend/README.md +3 -3
- package/examples/demo/README.md +2 -2
- package/examples/intro/README.md +71 -0
- package/examples/intro/assets/fonts/figtree/LICENSE.txt +93 -0
- package/examples/intro/assets/fonts/figtree/figtree-latin-wght-normal.woff2 +0 -0
- package/examples/intro/assets/fonts/instrument-serif/LICENSE.txt +93 -0
- package/examples/intro/assets/fonts/instrument-serif/instrument-serif-latin-400-italic.woff2 +0 -0
- package/examples/intro/assets/fonts/space-mono/LICENSE.txt +93 -0
- package/examples/intro/assets/fonts/space-mono/space-mono-latin-400-normal.woff2 +0 -0
- package/examples/intro/assets/fonts/space-mono/space-mono-latin-700-normal.woff2 +0 -0
- package/examples/intro/assets/grain.png +0 -0
- package/examples/intro/assets/score.ogg +0 -0
- package/examples/intro/compositions/brand.html +412 -0
- package/examples/intro/compositions/chrome.controller.js +63 -0
- package/examples/intro/compositions/chrome.html +256 -0
- package/examples/intro/compositions/lattice.controller.js +148 -0
- package/examples/intro/compositions/lattice.html +308 -0
- package/examples/intro/compositions/opening.html +504 -0
- package/examples/intro/compositions/studio.html +930 -0
- package/examples/intro/compositions/theme.css +218 -0
- package/examples/intro/fy.config.js +13 -0
- package/examples/intro/fy.fonts.json +100 -0
- package/examples/intro/scripts/make-grain.mjs +79 -0
- package/examples/intro/scripts/make-score.mjs +702 -0
- package/examples/intro/timelines/intro.timeline.json +60 -0
- package/examples/keyframes/README.md +76 -0
- package/examples/keyframes/compositions/backdrop.html +60 -0
- package/examples/keyframes/compositions/card.html +99 -0
- package/examples/keyframes/fy.config.js +10 -0
- package/examples/keyframes/timelines/keyframes.timeline.json +60 -0
- package/examples/nested/README.md +112 -0
- package/examples/nested/assets/pulse.wav +0 -0
- package/examples/nested/compositions/backdrop.html +84 -0
- package/examples/nested/compositions/card.html +275 -0
- package/examples/nested/compositions/overlay.html +307 -0
- package/examples/nested/fy.config.js +13 -0
- package/examples/nested/scripts/make-pulse.sh +20 -0
- package/examples/nested/timelines/chapter-a.timeline.json +39 -0
- package/examples/nested/timelines/chapter-b.timeline.json +39 -0
- package/examples/nested/timelines/nested-reel.timeline.json +52 -0
- package/examples/static/README.md +2 -2
- package/examples/transitions/README.md +128 -0
- package/examples/transitions/assets/alpha.wav +0 -0
- package/examples/transitions/assets/beta.wav +0 -0
- package/examples/transitions/assets/gamma.wav +0 -0
- package/examples/transitions/compositions/alpha.html +56 -0
- package/examples/transitions/compositions/beta.html +56 -0
- package/examples/transitions/compositions/gamma.html +56 -0
- package/examples/transitions/fy.config.js +12 -0
- package/examples/transitions/timelines/audio-crossfade.timeline.json +44 -0
- package/examples/transitions/timelines/transitions.timeline.json +31 -0
- package/examples/video/README.md +4 -4
- package/examples/webgl/README.md +1 -1
- package/package.json +13 -6
- package/scaffolds/init/AGENTS.md +131 -0
- package/scaffolds/init/README.md +56 -0
- package/scaffolds/init/compositions/hello.html +79 -0
- package/scaffolds/init/fy.config.js +9 -0
- package/scaffolds/init/gitignore.template +1 -0
- package/scaffolds/init/package.json +11 -0
- package/scaffolds/init/props/hello.json +4 -0
- package/scaffolds/init/props/main.json +6 -0
- package/scaffolds/init/timelines/main.timeline.json +20 -0
- package/scaffolds/local-models/LOCAL-MODELS.md +77 -0
- package/scaffolds/local-models/fy.policy.json +5 -0
- package/scaffolds/local-models/opencode/opencode.jsonc +17 -0
- package/scaffolds/local-models/pi/APPEND_SYSTEM.md +21 -0
- package/scaffolds/local-models/pi/sandbox.json +15 -0
- package/scaffolds/local-models/pi/settings.json +15 -0
- package/skills/frameyard/README.md +1 -0
- package/skills/frameyard/SKILL.md +59 -61
- package/skills/frameyard/references/audio-assets.md +32 -3
- package/skills/frameyard/references/common-mistakes.md +53 -2
- package/skills/frameyard/references/deterministic-authoring.md +10 -3
- package/skills/frameyard/references/diagnostics.md +31 -1
- package/skills/frameyard/references/failure-recovery.md +32 -6
- package/skills/frameyard/references/fonts.md +132 -0
- package/skills/frameyard/references/json-results.md +119 -6
- package/skills/frameyard/references/quick-reference.md +222 -0
- package/skills/frameyard/references/timelines.md +97 -7
- /package/examples/blend/{video.config.js → fy.config.js} +0 -0
- /package/examples/demo/{video.config.js → fy.config.js} +0 -0
- /package/examples/static/{video.config.js → fy.config.js} +0 -0
- /package/examples/video/{video.config.js → fy.config.js} +0 -0
- /package/examples/webgl/{video.config.js → fy.config.js} +0 -0
package/dist/timeline/plan.js
CHANGED
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
return clip.source.kind !== "audio";
|
|
3
|
-
}
|
|
1
|
+
import { projectScene } from "./scene.js";
|
|
4
2
|
/**
|
|
5
|
-
* Splits a resolved timeline
|
|
6
|
-
*
|
|
7
|
-
* globally and never appears here.
|
|
3
|
+
* Splits a resolved timeline into independently renderable segments. Segment
|
|
4
|
+
* boundaries fall on visual clip starts and ends, so every segment has a fixed
|
|
5
|
+
* scene projection; audio is mixed globally and never appears here.
|
|
8
6
|
*/
|
|
9
7
|
export function planTimelineRender(timeline, options = {}) {
|
|
10
8
|
const maxSegmentFrames = options.maxSegmentFrames ?? Math.max(1, Math.round(timeline.format.fps * 10));
|
|
@@ -20,9 +18,12 @@ export function planTimelineRender(timeline, options = {}) {
|
|
|
20
18
|
endFrame <= startFrame) {
|
|
21
19
|
throw new Error(`Invalid timeline range ${startFrame}..${endFrame}.`);
|
|
22
20
|
}
|
|
23
|
-
const visualClips = timeline.clips.filter(isVisualClip);
|
|
24
21
|
const boundaries = new Set([startFrame, endFrame]);
|
|
25
|
-
|
|
22
|
+
const videoTracks = new Set(timeline.tracks.filter((track) => track.kind === "video").map((track) => track.id));
|
|
23
|
+
for (const clip of timeline.clips) {
|
|
24
|
+
if (!videoTracks.has(clip.track)) {
|
|
25
|
+
continue;
|
|
26
|
+
}
|
|
26
27
|
if (clip.start > startFrame && clip.start < endFrame) {
|
|
27
28
|
boundaries.add(clip.start);
|
|
28
29
|
}
|
|
@@ -42,27 +43,13 @@ export function planTimelineRender(timeline, options = {}) {
|
|
|
42
43
|
ranges.push({ start: cursor, end: Math.min(end, cursor + maxSegmentFrames) });
|
|
43
44
|
}
|
|
44
45
|
}
|
|
45
|
-
const
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
})
|
|
54
|
-
.map((clip) => ({
|
|
55
|
-
clip,
|
|
56
|
-
sourceStart: clip.sourceIn + (range.start - clip.start),
|
|
57
|
-
}));
|
|
58
|
-
return {
|
|
59
|
-
index,
|
|
60
|
-
start: range.start,
|
|
61
|
-
end: range.end,
|
|
62
|
-
frames: range.end - range.start,
|
|
63
|
-
layers,
|
|
64
|
-
};
|
|
65
|
-
});
|
|
66
|
-
return { timeline, maxSegmentFrames, segments };
|
|
46
|
+
const segments = ranges.map((range, index) => ({
|
|
47
|
+
index,
|
|
48
|
+
start: range.start,
|
|
49
|
+
end: range.end,
|
|
50
|
+
frames: range.end - range.start,
|
|
51
|
+
layers: projectScene(timeline, range.start, range.end).layers,
|
|
52
|
+
}));
|
|
53
|
+
return { segments };
|
|
67
54
|
}
|
|
68
55
|
//# sourceMappingURL=plan.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plan.js","sourceRoot":"","sources":["../../src/timeline/plan.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"plan.js","sourceRoot":"","sources":["../../src/timeline/plan.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,6 +36,17 @@ export interface ResolvedTimelineClip extends Omit<TimelineClip, "source" | "dur
|
|
|
36
36
|
duration: number;
|
|
37
37
|
end: number;
|
|
38
38
|
}
|
|
39
|
+
export interface ResolvedTimelineTransition {
|
|
40
|
+
from: string;
|
|
41
|
+
to: string;
|
|
42
|
+
kind: "dissolve" | "crossfade";
|
|
43
|
+
easing?: string;
|
|
44
|
+
track: string;
|
|
45
|
+
/** Inclusive first timeline frame; equals the incoming clip start. */
|
|
46
|
+
start: number;
|
|
47
|
+
/** Exclusive last timeline frame; equals the outgoing clip end. */
|
|
48
|
+
end: number;
|
|
49
|
+
}
|
|
39
50
|
export interface ResolvedTimeline {
|
|
40
51
|
id: string;
|
|
41
52
|
entry: string;
|
|
@@ -45,6 +56,7 @@ export interface ResolvedTimeline {
|
|
|
45
56
|
durationInFrames: number;
|
|
46
57
|
tracks: TimelineTrack[];
|
|
47
58
|
clips: ResolvedTimelineClip[];
|
|
59
|
+
transitions: ResolvedTimelineTransition[];
|
|
48
60
|
}
|
|
49
61
|
export interface ResolveTimelineResult {
|
|
50
62
|
timeline: ResolvedTimeline | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../src/timeline/resolve.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,qBAAqB,EAErB,qBAAqB,EACrB,iBAAiB,EACjB,2BAA2B,EAC3B,sBAAsB,EACvB,MAAM,iBAAiB,CAAC;AAIzB,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAE7E,OAAO,EAAyB,KAAK,YAAY,EAAyB,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAElH,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,aAAa,CAAC;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,2BAA2B,CAAC;IACtC,UAAU,EAAE,qBAAqB,GAAG,IAAI,CAAC;IACzC,+EAA+E;IAC/E,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,SAAS,iBAAiB,EAAE,CAAC;IACzC,kBAAkB,EAAE,SAAS,iBAAiB,EAAE,CAAC;IACjD,eAAe,EAAE,SAAS,sBAAsB,EAAE,CAAC;CACpD;AAED,MAAM,WAAW,4BAA4B;IAC3C,IAAI,EAAE,UAAU,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,gBAAgB,CAAC;CAC5B;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,MAAM,sBAAsB,GAAG,yBAAyB,GAAG,4BAA4B,GAAG,mBAAmB,CAAC;AAEpH,MAAM,WAAW,oBAAqB,SAAQ,IAAI,CAAC,YAAY,EAAE,QAAQ,GAAG,UAAU,CAAC;IACrF,MAAM,EAAE,sBAAsB,CAAC;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,aAAa,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,KAAK,EAAE,oBAAoB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../src/timeline/resolve.ts"],"names":[],"mappings":"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"}
|
package/dist/timeline/resolve.js
CHANGED
|
@@ -218,7 +218,7 @@ async function resolveCompositionSource(options) {
|
|
|
218
218
|
nesting,
|
|
219
219
|
};
|
|
220
220
|
if (!composition) {
|
|
221
|
-
addError(diagnostics, "TIMELINE_REFERENCE_NOT_FOUND", `Composition "${sourceId}" is not listed in
|
|
221
|
+
addError(diagnostics, "TIMELINE_REFERENCE_NOT_FOUND", `Composition "${sourceId}" is not listed in fy.config.js.`, details);
|
|
222
222
|
return null;
|
|
223
223
|
}
|
|
224
224
|
const propsKey = JSON.stringify(clip.props ?? null);
|
|
@@ -277,7 +277,7 @@ async function resolveTimelineSource(options) {
|
|
|
277
277
|
nesting: context.nesting,
|
|
278
278
|
};
|
|
279
279
|
if (!nested) {
|
|
280
|
-
addError(diagnostics, "TIMELINE_REFERENCE_NOT_FOUND", `Timeline "${sourceId}" is not listed in
|
|
280
|
+
addError(diagnostics, "TIMELINE_REFERENCE_NOT_FOUND", `Timeline "${sourceId}" is not listed in fy.config.js.`, details);
|
|
281
281
|
return null;
|
|
282
282
|
}
|
|
283
283
|
if (context.stack.includes(sourceId)) {
|
|
@@ -410,6 +410,26 @@ function resolveClipDuration(clip, source, diagnostics, timelineId, nesting) {
|
|
|
410
410
|
}
|
|
411
411
|
return clip.duration;
|
|
412
412
|
}
|
|
413
|
+
function validateKeyframeBounds(options) {
|
|
414
|
+
const { clip, duration, clipIndex, timelineId, nesting, diagnostics } = options;
|
|
415
|
+
for (const [channel, track] of Object.entries(clip.keyframes ?? {})) {
|
|
416
|
+
for (const [keyIndex, key] of (track ?? []).entries()) {
|
|
417
|
+
if (key.frame > duration) {
|
|
418
|
+
addError(diagnostics, "TIMELINE_CLIP_OUT_OF_RANGE", `Clip "${clip.id}" keyframes.${channel}[${keyIndex}] uses frame ${key.frame}, beyond the clip duration ${duration}.`, {
|
|
419
|
+
timeline: timelineId,
|
|
420
|
+
clip: clip.id,
|
|
421
|
+
track: clip.track,
|
|
422
|
+
nesting,
|
|
423
|
+
channel,
|
|
424
|
+
keyframe: keyIndex,
|
|
425
|
+
frame: key.frame,
|
|
426
|
+
jsonPath: `$.clips[${clipIndex}].keyframes.${channel}[${keyIndex}].frame`,
|
|
427
|
+
suggestion: "Keyframe frames must stay within the clip's 0..duration range.",
|
|
428
|
+
});
|
|
429
|
+
}
|
|
430
|
+
}
|
|
431
|
+
}
|
|
432
|
+
}
|
|
413
433
|
async function resolveTimelineInternal(options) {
|
|
414
434
|
const { project, timeline, context, signal, probeCache, compositionCache, propsOverrides } = options;
|
|
415
435
|
const diagnostics = [];
|
|
@@ -427,7 +447,7 @@ async function resolveTimelineInternal(options) {
|
|
|
427
447
|
}
|
|
428
448
|
const clips = [];
|
|
429
449
|
const usedOverrides = new Set();
|
|
430
|
-
for (const rawClip of document.clips) {
|
|
450
|
+
for (const [clipIndex, rawClip] of document.clips.entries()) {
|
|
431
451
|
let clip = rawClip;
|
|
432
452
|
if (propsOverrides && rawClip.source.kind === "composition" && propsOverrides[rawClip.id] !== undefined) {
|
|
433
453
|
try {
|
|
@@ -458,6 +478,14 @@ async function resolveTimelineInternal(options) {
|
|
|
458
478
|
if (duration === null) {
|
|
459
479
|
continue;
|
|
460
480
|
}
|
|
481
|
+
validateKeyframeBounds({
|
|
482
|
+
clip,
|
|
483
|
+
duration,
|
|
484
|
+
clipIndex,
|
|
485
|
+
timelineId: context.timelineId,
|
|
486
|
+
nesting: context.nesting,
|
|
487
|
+
diagnostics,
|
|
488
|
+
});
|
|
461
489
|
clips.push({
|
|
462
490
|
...clip,
|
|
463
491
|
source,
|
|
@@ -477,18 +505,85 @@ async function resolveTimelineInternal(options) {
|
|
|
477
505
|
if (document.durationInFrames !== undefined && document.durationInFrames < maxEnd) {
|
|
478
506
|
addError(diagnostics, "TIMELINE_DURATION_INVALID", `Timeline durationInFrames ${document.durationInFrames} is shorter than the resolved clip end ${maxEnd}.`, { timeline: timeline.id, nesting: context.nesting, jsonPath: "$.durationInFrames" });
|
|
479
507
|
}
|
|
508
|
+
const clipById = new Map(clips.map((clip) => [clip.id, clip]));
|
|
509
|
+
const trackById = new Map(document.tracks.map((track) => [track.id, track]));
|
|
510
|
+
const transitions = [];
|
|
511
|
+
const declaredPairs = new Set();
|
|
512
|
+
for (const [index, transition] of (document.transitions ?? []).entries()) {
|
|
513
|
+
const jsonPath = `$.transitions[${index}]`;
|
|
514
|
+
const details = {
|
|
515
|
+
timeline: timeline.id,
|
|
516
|
+
nesting: context.nesting,
|
|
517
|
+
jsonPath,
|
|
518
|
+
from: transition.from,
|
|
519
|
+
to: transition.to,
|
|
520
|
+
};
|
|
521
|
+
const from = clipById.get(transition.from);
|
|
522
|
+
const to = clipById.get(transition.to);
|
|
523
|
+
if (!from || !to || from.id === to.id) {
|
|
524
|
+
addError(diagnostics, "TIMELINE_TRANSITION_UNKNOWN_CLIP", `Transition from "${transition.from}" to "${transition.to}" must reference two distinct clips in this timeline.`, details);
|
|
525
|
+
continue;
|
|
526
|
+
}
|
|
527
|
+
if (from.track !== to.track) {
|
|
528
|
+
addError(diagnostics, "TIMELINE_TRANSITION_WRONG_TRACK", `Transition "${from.id}" → "${to.id}" must keep both clips on one track; "${from.track}" and "${to.track}" differ.`, details);
|
|
529
|
+
continue;
|
|
530
|
+
}
|
|
531
|
+
const track = trackById.get(from.track);
|
|
532
|
+
if (!track) {
|
|
533
|
+
continue;
|
|
534
|
+
}
|
|
535
|
+
if (transition.kind === "dissolve" && track.kind !== "video") {
|
|
536
|
+
addError(diagnostics, "TIMELINE_TRANSITION_AUDIO_TRACK", `Dissolve "${from.id}" → "${to.id}" is on audio track "${from.track}"; use kind "crossfade" for audio clips.`, { ...details, track: from.track, suggestion: 'Use "kind": "crossfade".' });
|
|
537
|
+
continue;
|
|
538
|
+
}
|
|
539
|
+
if (transition.kind === "crossfade" && track.kind !== "audio") {
|
|
540
|
+
addError(diagnostics, "TIMELINE_TRANSITION_VIDEO_TRACK", `Crossfade "${from.id}" → "${to.id}" is on video track "${from.track}"; use kind "dissolve" for visual clips.`, { ...details, track: from.track, suggestion: 'Use "kind": "dissolve".' });
|
|
541
|
+
continue;
|
|
542
|
+
}
|
|
543
|
+
declaredPairs.add(`${from.track}\u0000${from.id}\u0000${to.id}`);
|
|
544
|
+
declaredPairs.add(`${from.track}\u0000${to.id}\u0000${from.id}`);
|
|
545
|
+
if (to.start <= from.start) {
|
|
546
|
+
addError(diagnostics, "TIMELINE_TRANSITION_GEOMETRY", `Transition "${from.id}" → "${to.id}" requires "${to.id}" to start after "${from.id}" starts.`, { ...details, track: from.track, suggestion: `Move "${to.id}" later or "${from.id}" earlier.` });
|
|
547
|
+
continue;
|
|
548
|
+
}
|
|
549
|
+
if (to.start >= from.end) {
|
|
550
|
+
addError(diagnostics, "TIMELINE_TRANSITION_NOT_OVERLAPPING", `Transition "${from.id}" → "${to.id}" declares no overlap: "${to.id}" starts at ${to.start}, after "${from.id}" ends at ${from.end}.`, { ...details, track: from.track, suggestion: `Start "${to.id}" before frame ${from.end}.` });
|
|
551
|
+
continue;
|
|
552
|
+
}
|
|
553
|
+
if (to.end <= from.end) {
|
|
554
|
+
addError(diagnostics, "TIMELINE_TRANSITION_GEOMETRY", `Transition "${from.id}" → "${to.id}" requires "${to.id}" to end after "${from.id}" ends at ${from.end}.`, { ...details, track: from.track, suggestion: `Extend "${to.id}" beyond frame ${from.end}.` });
|
|
555
|
+
continue;
|
|
556
|
+
}
|
|
557
|
+
transitions.push({
|
|
558
|
+
from: from.id,
|
|
559
|
+
to: to.id,
|
|
560
|
+
kind: transition.kind,
|
|
561
|
+
...(transition.easing !== undefined ? { easing: transition.easing } : {}),
|
|
562
|
+
track: from.track,
|
|
563
|
+
start: to.start,
|
|
564
|
+
end: from.end,
|
|
565
|
+
});
|
|
566
|
+
}
|
|
480
567
|
for (const track of document.tracks) {
|
|
481
|
-
const trackClips = clips
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
568
|
+
const trackClips = clips
|
|
569
|
+
.filter((clip) => clip.track === track.id)
|
|
570
|
+
.sort((left, right) => left.start - right.start || left.end - right.end);
|
|
571
|
+
for (let index = 0; index < trackClips.length; index += 1) {
|
|
572
|
+
const previous = trackClips[index];
|
|
573
|
+
for (let next = index + 1; next < trackClips.length; next += 1) {
|
|
574
|
+
const current = trackClips[next];
|
|
575
|
+
if (current.start >= previous.end) {
|
|
576
|
+
break;
|
|
577
|
+
}
|
|
578
|
+
if (declaredPairs.has(`${track.id}\u0000${previous.id}\u0000${current.id}`)) {
|
|
579
|
+
continue;
|
|
580
|
+
}
|
|
486
581
|
addError(diagnostics, "TIMELINE_CLIP_OVERLAP", `Clip "${current.id}" overlaps "${previous.id}" on track "${track.id}".`, {
|
|
487
582
|
timeline: timeline.id,
|
|
488
583
|
track: track.id,
|
|
489
584
|
clip: current.id,
|
|
490
585
|
nesting: context.nesting,
|
|
491
|
-
suggestion: "No two clips on one track may overlap
|
|
586
|
+
suggestion: "No two clips on one track may overlap without a declared transition.",
|
|
492
587
|
});
|
|
493
588
|
}
|
|
494
589
|
}
|
|
@@ -514,6 +609,7 @@ async function resolveTimelineInternal(options) {
|
|
|
514
609
|
durationInFrames,
|
|
515
610
|
tracks: document.tracks,
|
|
516
611
|
clips,
|
|
612
|
+
transitions,
|
|
517
613
|
},
|
|
518
614
|
diagnostics: uniqueDiagnostics,
|
|
519
615
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../src/timeline/resolve.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../src/timeline/resolve.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import type { Props } from "../contracts.js";
|
|
2
|
+
import { type BlendMode, type TimelineClipAudio, type TimelineKeyframes, type TimelineTrack, type TimelineTransform, type TransitionKind } from "./schema.js";
|
|
3
|
+
import type { TransitionRole, TransitionWindow } from "./transitions.js";
|
|
4
|
+
/** The fixed dimensions and frame rate a timeline scene is projected against. */
|
|
5
|
+
export interface TimelineSceneFormat {
|
|
6
|
+
width: number;
|
|
7
|
+
height: number;
|
|
8
|
+
fps: number;
|
|
9
|
+
}
|
|
10
|
+
/** The fields a timeline scene needs from a composition clip source. */
|
|
11
|
+
export interface TimelineSceneCompositionSource {
|
|
12
|
+
kind: "composition";
|
|
13
|
+
id: string;
|
|
14
|
+
metadata: {
|
|
15
|
+
width: number;
|
|
16
|
+
height: number;
|
|
17
|
+
fps?: number;
|
|
18
|
+
durationInFrames?: number;
|
|
19
|
+
static?: boolean;
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
/** The fields a timeline scene needs from a nested-timeline clip source. */
|
|
23
|
+
export interface TimelineSceneNestedSource {
|
|
24
|
+
kind: "timeline";
|
|
25
|
+
id: string;
|
|
26
|
+
durationInFrames: number;
|
|
27
|
+
timeline: {
|
|
28
|
+
format: TimelineSceneFormat;
|
|
29
|
+
durationInFrames: number;
|
|
30
|
+
background?: string;
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
/** The fields a timeline scene needs from a media clip source. */
|
|
34
|
+
export interface TimelineSceneMediaSource {
|
|
35
|
+
kind: "video" | "image" | "audio";
|
|
36
|
+
src: string;
|
|
37
|
+
width?: number;
|
|
38
|
+
height?: number;
|
|
39
|
+
durationInFrames?: number;
|
|
40
|
+
hasAudio?: boolean;
|
|
41
|
+
}
|
|
42
|
+
export type TimelineSceneSource = TimelineSceneCompositionSource | TimelineSceneNestedSource | TimelineSceneMediaSource;
|
|
43
|
+
/**
|
|
44
|
+
* A resolved timeline clip as the scene projection sees it. The preview payload
|
|
45
|
+
* is the same shape with a `url` added to each source, so both sides share one
|
|
46
|
+
* clip model instead of maintaining a second one.
|
|
47
|
+
*/
|
|
48
|
+
export interface TimelineSceneClip<S extends TimelineSceneSource = TimelineSceneSource> {
|
|
49
|
+
id: string;
|
|
50
|
+
track: string;
|
|
51
|
+
source: S;
|
|
52
|
+
start: number;
|
|
53
|
+
duration: number;
|
|
54
|
+
end: number;
|
|
55
|
+
sourceIn: number;
|
|
56
|
+
props?: Props;
|
|
57
|
+
transform?: TimelineTransform;
|
|
58
|
+
keyframes?: TimelineKeyframes;
|
|
59
|
+
blend?: BlendMode;
|
|
60
|
+
audio?: TimelineClipAudio;
|
|
61
|
+
}
|
|
62
|
+
export interface TimelineSceneTransition {
|
|
63
|
+
from: string;
|
|
64
|
+
to: string;
|
|
65
|
+
kind: TransitionKind;
|
|
66
|
+
easing?: string;
|
|
67
|
+
track: string;
|
|
68
|
+
start: number;
|
|
69
|
+
end: number;
|
|
70
|
+
}
|
|
71
|
+
/** The minimal resolved-timeline shape the scene projection reads. */
|
|
72
|
+
export interface TimelineSceneInput<S extends TimelineSceneSource = TimelineSceneSource> {
|
|
73
|
+
format: TimelineSceneFormat;
|
|
74
|
+
durationInFrames: number;
|
|
75
|
+
tracks: readonly TimelineTrack[];
|
|
76
|
+
clips: readonly TimelineSceneClip<S>[];
|
|
77
|
+
transitions: readonly TimelineSceneTransition[];
|
|
78
|
+
}
|
|
79
|
+
/** What the capture path does to turn a scene layer's source into pixels. */
|
|
80
|
+
export type TimelineCaptureMode = "frames" | "still" | "video" | "image" | "nested";
|
|
81
|
+
/**
|
|
82
|
+
* One active visual clip at a timeline frame or over a render range. Array order
|
|
83
|
+
* is composite order: later layers paint above earlier ones.
|
|
84
|
+
*/
|
|
85
|
+
export interface TimelineSceneLayer<S extends TimelineSceneSource = TimelineSceneSource> {
|
|
86
|
+
clip: TimelineSceneClip<S>;
|
|
87
|
+
capture: TimelineCaptureMode;
|
|
88
|
+
/** The source frame at the projected range's first timeline frame. */
|
|
89
|
+
sourceStart: number;
|
|
90
|
+
sourceWidth: number;
|
|
91
|
+
sourceHeight: number;
|
|
92
|
+
transform: TimelineTransform;
|
|
93
|
+
keyframes?: TimelineKeyframes;
|
|
94
|
+
blend: BlendMode;
|
|
95
|
+
transition?: {
|
|
96
|
+
window: TransitionWindow;
|
|
97
|
+
role: TransitionRole;
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
export interface TimelineScene<S extends TimelineSceneSource = TimelineSceneSource> {
|
|
101
|
+
timeline: TimelineSceneInput<S>;
|
|
102
|
+
/** Inclusive first timeline frame. */
|
|
103
|
+
start: number;
|
|
104
|
+
/** Exclusive last timeline frame. */
|
|
105
|
+
end: number;
|
|
106
|
+
/** Visual layers from bottom to top. */
|
|
107
|
+
layers: TimelineSceneLayer<S>[];
|
|
108
|
+
}
|
|
109
|
+
/** One side of a declared transition, in absolute timeline frames. */
|
|
110
|
+
export interface TimelineTransitionSpan extends TransitionWindow {
|
|
111
|
+
role: TransitionRole;
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Pairs each transition with its outgoing and incoming clip. Visual scenes and
|
|
115
|
+
* timeline audio both consume this so the window and roles are defined once.
|
|
116
|
+
*/
|
|
117
|
+
export declare function transitionSpans(timeline: Pick<TimelineSceneInput, "transitions">): Map<string, TimelineTransitionSpan[]>;
|
|
118
|
+
/**
|
|
119
|
+
* Projects a resolved timeline onto one render range. Every returned layer is
|
|
120
|
+
* active for the whole range; a single frame is a one-frame range. Nested
|
|
121
|
+
* timelines stay sources and are projected recursively when they are captured.
|
|
122
|
+
*/
|
|
123
|
+
export declare function projectScene<S extends TimelineSceneSource>(timeline: TimelineSceneInput<S>, start: number, end: number): TimelineScene<S>;
|
|
124
|
+
/** Projects one timeline frame. */
|
|
125
|
+
export declare function projectSceneAtFrame<S extends TimelineSceneSource>(timeline: TimelineSceneInput<S>, frame: number): TimelineScene<S>;
|
|
126
|
+
//# sourceMappingURL=scene.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scene.d.ts","sourceRoot":"","sources":["../../src/timeline/scene.ts"],"names":[],"mappings":"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"}
|