@cueframe/kernel 0.1.0 → 0.1.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/LICENSE +661 -0
- package/dist/_members/account-model/testing/conversationStoreContract.d.ts +0 -59
- package/dist/_members/account-model/testing/index.d.ts +0 -5
- package/dist/_members/account-model/testing/restorePointStoreContract.d.ts +0 -24
- package/dist/_members/account-model/validators/contextFile.d.ts +0 -6
- package/dist/_members/account-model/validators/conversation.d.ts +0 -96
- package/dist/_members/account-model/validators/dashboardInsight.d.ts +0 -6
- package/dist/_members/account-model/validators/sessionToken.d.ts +0 -29
- package/dist/_members/account-model/validators/uploadToken.d.ts +0 -4
- package/dist/_members/account-model/validators/userSettings.d.ts +0 -4
- package/dist/_members/account-model/validators/workingComposition.d.ts +0 -7
- package/dist/_members/animate/animations/Create.d.ts +0 -19
- package/dist/_members/animate/animations/FadeIn.d.ts +0 -17
- package/dist/_members/animate/animations/GrowArrow.d.ts +0 -19
- package/dist/_members/animate/animations/GrowFromCenter.d.ts +0 -12
- package/dist/_members/animate/animations/Indicate.d.ts +0 -17
- package/dist/_members/animate/animations/MoveAlongPath.d.ts +0 -18
- package/dist/_members/animate/animations/Transform.d.ts +0 -28
- package/dist/_members/animate/animations/Wiggle.d.ts +0 -18
- package/dist/_members/animate/animations/Write.d.ts +0 -20
- package/dist/_members/animate/composition/AnimationGroup.d.ts +0 -21
- package/dist/_members/animate/composition/LaggedStart.d.ts +0 -22
- package/dist/_members/animate/composition/Succession.d.ts +0 -17
- package/dist/_members/animate/easing/rush.d.ts +0 -14
- package/dist/_members/animate/easing/smooth.d.ts +0 -7
- package/dist/_members/animate/easing/smootherstep.d.ts +0 -6
- package/dist/_members/animate/index.d.ts +0 -2
- package/dist/_members/animate/mobjects/Arrow.d.ts +0 -25
- package/dist/_members/animate/mobjects/BrandBox.d.ts +0 -25
- package/dist/_members/animate/mobjects/DiGraph.d.ts +0 -18
- package/dist/_members/animate/mobjects/Graph.d.ts +0 -38
- package/dist/_members/animate/three/ThreeCanvas.d.ts +0 -23
- package/dist/_members/animate/three/drei.d.ts +0 -7
- package/dist/_members/authoring/agent/buildTools.d.ts +0 -37
- package/dist/_members/authoring/agent/contextManagement.d.ts +0 -65
- package/dist/_members/authoring/agent/errors.d.ts +0 -9
- package/dist/_members/authoring/agent/memoryTool.d.ts +0 -2
- package/dist/_members/authoring/agent/promptCache.d.ts +0 -31
- package/dist/_members/authoring/agent.d.ts +0 -34
- package/dist/_members/authoring/capabilities.d.ts +0 -145
- package/dist/_members/authoring/composer/scopes.d.ts +0 -19
- package/dist/_members/authoring/context/brand.d.ts +0 -4
- package/dist/_members/authoring/context/brandTokens.d.ts +0 -4
- package/dist/_members/authoring/context/index.d.ts +0 -1
- package/dist/_members/authoring/context/timeline.d.ts +0 -15
- package/dist/_members/authoring/context/transcript.d.ts +0 -11
- package/dist/_members/authoring/context/types.d.ts +0 -4
- package/dist/_members/authoring/decomposer.d.ts +0 -12
- package/dist/_members/authoring/evaluate.d.ts +0 -26
- package/dist/_members/authoring/evaluator.d.ts +0 -16
- package/dist/_members/authoring/models/modelFactory.d.ts +0 -77
- package/dist/_members/authoring/motion/applyMotionPreset.d.ts +0 -12
- package/dist/_members/authoring/motion/materializeMotionPresetOps.d.ts +0 -7
- package/dist/_members/authoring/motion/shell.d.ts +0 -20
- package/dist/_members/authoring/pipelineTrace.d.ts +0 -19
- package/dist/_members/authoring/prompts/decomposerPrompt.d.ts +0 -4
- package/dist/_members/authoring/prompts/designReviewerPrompt.d.ts +0 -16
- package/dist/_members/authoring/prompts/evaluatorPrompt.d.ts +0 -4
- package/dist/_members/authoring/prompts/graphics.d.ts +0 -5
- package/dist/_members/authoring/prompts/plannerPrompt.d.ts +0 -30
- package/dist/_members/authoring/providers/resourceApi.d.ts +1 -20
- package/dist/_members/authoring/resource-routing.d.ts +0 -121
- package/dist/_members/authoring/resources.d.ts +0 -34
- package/dist/_members/authoring/scope.d.ts +0 -24
- package/dist/_members/authoring/tools/brandTokens.d.ts +0 -22
- package/dist/_members/authoring/tools/composeRoleTools.d.ts +0 -79
- package/dist/_members/authoring/tools/index.d.ts +0 -1
- package/dist/_members/authoring/tools/toolSets.d.ts +0 -50
- package/dist/_members/authoring/transpileComponent.d.ts +0 -34
- package/dist/_members/authoring/transpileHelper.d.ts +0 -18
- package/dist/_members/authoring/types.d.ts +0 -149
- package/dist/_members/brand-derivation/constants.d.ts +0 -17
- package/dist/_members/brand-derivation/contrastSafe.d.ts +0 -23
- package/dist/_members/cloud-import/CloudImportService.d.ts +0 -15
- package/dist/_members/cloud-import/ImportProvider.d.ts +0 -45
- package/dist/_members/cloud-import/MediaItemPreprocessor.d.ts +0 -9
- package/dist/_members/cloud-import/cloudConfig.d.ts +0 -15
- package/dist/_members/compose/CompositionRenderer.d.ts +0 -6
- package/dist/_members/compose/primitiveRegistry.d.ts +0 -64
- package/dist/_members/compose/sceneToRenderInput.d.ts +0 -26
- package/dist/_members/compose/schema.d.ts +0 -15
- package/dist/_members/compose/tokenResolver.d.ts +0 -11
- package/dist/_members/composition/audio/audioMix.d.ts +0 -34
- package/dist/_members/composition/audio/mixStaging.d.ts +0 -81
- package/dist/_members/composition/audio/musicPack.d.ts +0 -35
- package/dist/_members/composition/audio/musicPack.generated.d.ts +0 -6
- package/dist/_members/composition/audio/pack.d.ts +0 -43
- package/dist/_members/composition/audio/pack.generated.d.ts +0 -6
- package/dist/_members/composition/audio/palette.d.ts +0 -36
- package/dist/_members/composition/autozoom/index.d.ts +0 -32
- package/dist/_members/composition/brand-kit.d.ts +0 -8
- package/dist/_members/composition/brief/contract.d.ts +0 -90
- package/dist/_members/composition/color-grade.d.ts +0 -11
- package/dist/_members/composition/depth.d.ts +0 -19
- package/dist/_members/composition/fixtures/agentErrored.d.ts +0 -23
- package/dist/_members/composition/fonts.d.ts +0 -62
- package/dist/_members/composition/graphics-plan/compile.d.ts +0 -29
- package/dist/_members/composition/graphics-plan/index.d.ts +0 -5
- package/dist/_members/composition/graphics-plan/instantiateMotif.d.ts +0 -17
- package/dist/_members/composition/graphics-plan/motion.d.ts +0 -17
- package/dist/_members/composition/graphics-plan/schemas.d.ts +0 -171
- package/dist/_members/composition/graphics-plan/solve.d.ts +0 -19
- package/dist/_members/composition/invariants/clipPlacement.d.ts +0 -59
- package/dist/_members/composition/invariants/composition.d.ts +0 -5
- package/dist/_members/composition/invariants/etag.d.ts +0 -7
- package/dist/_members/composition/invariants/ids.d.ts +0 -6
- package/dist/_members/composition/invariants/keyframes.d.ts +0 -19
- package/dist/_members/composition/invariants/markers.d.ts +0 -6
- package/dist/_members/composition/invariants/time.d.ts +0 -8
- package/dist/_members/composition/invariants/tracks.d.ts +0 -48
- package/dist/_members/composition/ops/compositionOps.d.ts +5 -71
- package/dist/_members/composition/ops/compositionOps.shared.d.ts +30 -0
- package/dist/_members/composition/ops/headlessStore.d.ts +0 -24
- package/dist/_members/composition/ops/selectors.d.ts +0 -66
- package/dist/_members/composition/ops/timeline-word.d.ts +0 -5
- package/dist/_members/composition/ops/transcript.d.ts +0 -27
- package/dist/_members/composition/ops/types.d.ts +0 -51
- package/dist/_members/composition/primitive-catalog/catalogQuery.d.ts +0 -32
- package/dist/_members/composition/primitive-catalog/disabled.d.ts +0 -1
- package/dist/_members/composition/primitive-catalog/index.d.ts +0 -11
- package/dist/_members/composition/primitive-catalog/paramValidation.d.ts +0 -50
- package/dist/_members/composition/primitive-catalog/projection.d.ts +0 -39
- package/dist/_members/composition/primitive-catalog/types.d.ts +0 -78
- package/dist/_members/composition/projection/behind-placement.d.ts +0 -40
- package/dist/_members/composition/projection/behind-readiness.d.ts +52 -0
- package/dist/_members/composition/projection/brandKit.d.ts +0 -142
- package/dist/_members/composition/projection/cardTokens.d.ts +0 -65
- package/dist/_members/composition/projection/composition-floor.d.ts +0 -179
- package/dist/_members/composition/projection/cropProjection.d.ts +0 -75
- package/dist/_members/composition/projection/index.d.ts +2 -0
- package/dist/_members/composition/projection/occlusion-budget.d.ts +0 -37
- package/dist/_members/composition/projection/reframe-readiness.d.ts +49 -0
- package/dist/_members/composition/projection/safe-zones.d.ts +0 -29
- package/dist/_members/composition/reframe/aspectLoss.d.ts +12 -35
- package/dist/_members/composition/reframe/coverage.d.ts +0 -40
- package/dist/_members/composition/reframe/derive.d.ts +0 -21
- package/dist/_members/composition/reframe/index.d.ts +0 -60
- package/dist/_members/composition/reframe/kenBurns.d.ts +0 -37
- package/dist/_members/composition/reframe/shotScale.d.ts +0 -75
- package/dist/_members/composition/reframe/trajectory.d.ts +0 -65
- package/dist/_members/composition/timeline/compound.d.ts +0 -31
- package/dist/_members/composition/timeline/intent.d.ts +0 -29
- package/dist/_members/composition/timeline/keyframes.d.ts +0 -43
- package/dist/_members/composition/timeline/link.d.ts +0 -27
- package/dist/_members/composition/timeline/occupancy.d.ts +1 -42
- package/dist/_members/composition/timeline/placement.d.ts +5 -52
- package/dist/_members/composition/timeline/plan.d.ts +5 -53
- package/dist/_members/composition/timeline/resolve.d.ts +0 -36
- package/dist/_members/composition/timeline/trims.d.ts +0 -49
- package/dist/_members/composition/validators/brandKit.d.ts +0 -29
- package/dist/_members/composition/validators/composePlan.d.ts +0 -39
- package/dist/_members/composition/validators/composition.d.ts +63 -529
- package/dist/_members/composition/validators/graphicKinds.d.ts +0 -28
- package/dist/_members/composition/validators/render.d.ts +55 -23
- package/dist/_members/composition-ops/alphaLayers.d.ts +0 -56
- package/dist/_members/composition-ops/index.d.ts +27 -148
- package/dist/_members/composition-ops/materializeGrid.d.ts +0 -28
- package/dist/_members/composition-ops/opRecorder.d.ts +0 -34
- package/dist/_members/composition-ops/recordingStore.d.ts +0 -16
- package/dist/_members/composition-ops/replaceRegion.d.ts +0 -48
- package/dist/_members/composition-ops/testFixtures.d.ts +0 -14
- package/dist/_members/convex-api/api.d.ts +0 -3
- package/dist/_members/convex-api/dataModel.d.ts +0 -2
- package/dist/_members/core/index.d.ts +1 -1
- package/dist/_members/core/render/bookends.d.ts +0 -44
- package/dist/_members/core/render/captions.d.ts +0 -42
- package/dist/_members/core/render/compositionRender.d.ts +2 -165
- package/dist/_members/core/render/deriveTrajectory.d.ts +0 -140
- package/dist/_members/core/render/emphasis.d.ts +0 -6
- package/dist/_members/core/render/eval/cropBox.d.ts +0 -69
- package/dist/_members/core/render/eval/inclusion.d.ts +0 -39
- package/dist/_members/core/render/eval/index.d.ts +0 -58
- package/dist/_members/core/render/eval/metrics.d.ts +0 -36
- package/dist/_members/core/render/exportSettings.d.ts +4 -12
- package/dist/_members/core/render/index.d.ts +1 -1
- package/dist/_members/core/render/mapFaceToPerson.d.ts +0 -27
- package/dist/_members/core/render/types.d.ts +4 -156
- package/dist/_members/core/render/variantKeys.d.ts +1 -0
- package/dist/_members/core/render/vcam/cameraPath.d.ts +0 -44
- package/dist/_members/core/render/vcam/constants.d.ts +0 -93
- package/dist/_members/core/render/vcam/errorCodes.d.ts +0 -28
- package/dist/_members/core/render/vcam/framing.d.ts +0 -76
- package/dist/_members/core/render/vcam/requiredRegion.d.ts +0 -71
- package/dist/_members/core/render/vcam/shots.d.ts +0 -40
- package/dist/_members/core/render/vcam/subjectSet.d.ts +0 -85
- package/dist/_members/core/select/errorCodes.d.ts +0 -25
- package/dist/_members/core/select/index.d.ts +0 -20
- package/dist/_members/core/select/model.d.ts +0 -79
- package/dist/_members/core/select/select.d.ts +0 -49
- package/dist/_members/core/select/stabilize.d.ts +0 -102
- package/dist/_members/core/types.d.ts +0 -1
- package/dist/_members/director/ai-sdk/chunks.d.ts +14 -0
- package/dist/_members/director/ai-sdk/context.d.ts +6 -0
- package/dist/_members/director/ai-sdk/generationTool.d.ts +8 -0
- package/dist/_members/director/ai-sdk/index.d.ts +4 -0
- package/dist/_members/director/ai-sdk/messages.d.ts +292 -0
- package/dist/_members/director/domain/chat.d.ts +357 -0
- package/dist/_members/director/domain/generation.d.ts +1 -0
- package/dist/_members/director/domain/index.d.ts +3 -0
- package/dist/_members/director/domain/ports.d.ts +32 -0
- package/dist/_members/director/index.d.ts +2 -0
- package/dist/_members/director/testing/contract.d.ts +52 -0
- package/dist/_members/director/testing/index.d.ts +1 -0
- package/dist/_members/errors/registry.d.ts +0 -32
- package/dist/_members/foundation/codes/index.d.ts +0 -21
- package/dist/_members/mcp/adapter.d.ts +1 -84
- package/dist/_members/mcp/burnedNames.d.ts +0 -16
- package/dist/_members/mcp/core.d.ts +1 -81
- package/dist/_members/mcp/curation.d.ts +0 -112
- package/dist/_members/mcp/executor.d.ts +0 -49
- package/dist/_members/mcp/format.d.ts +0 -6
- package/dist/_members/mcp/generated/catalogPreviews.d.ts +0 -1
- package/dist/_members/mcp/generated/operations.d.ts +0 -23
- package/dist/_members/mcp/internalLoopTools.d.ts +0 -23
- package/dist/_members/mcp/prompts.d.ts +0 -16
- package/dist/_members/mcp/resources.d.ts +0 -13
- package/dist/_members/mcp/server.d.ts +0 -61
- package/dist/_members/mcp/wait.d.ts +0 -22
- package/dist/_members/mcp/x402Meta.d.ts +0 -44
- package/dist/_members/media-model/generation.d.ts +314 -0
- package/dist/_members/media-model/index.d.ts +1 -0
- package/dist/_members/media-model/media-kind.d.ts +0 -27
- package/dist/_members/media-model/transcriptSearch.d.ts +0 -42
- package/dist/_members/nle-export/fcpxml.d.ts +0 -13
- package/dist/_members/nle-export/index.d.ts +0 -6
- package/dist/_members/nle-export/types.d.ts +0 -26
- package/dist/_members/nle-export/xml/index.d.ts +0 -8
- package/dist/_members/nle-export/xml-utils.d.ts +0 -12
- package/dist/_members/perception/activeSpeaker.d.ts +0 -94
- package/dist/_members/perception/audioQuality.d.ts +0 -64
- package/dist/_members/perception/energyBeat.d.ts +0 -81
- package/dist/_members/perception/identityMatch.d.ts +0 -66
- package/dist/_members/perception/index.d.ts +0 -52
- package/dist/_members/perception/visualQuality.d.ts +0 -73
- package/dist/_members/plane/conformance.d.ts +0 -59
- package/dist/_members/plane/contract.d.ts +0 -29
- package/dist/_members/plane/index.d.ts +0 -15
- package/dist/_members/primitives/backgrounds/animated-bar-chart/index.d.ts +0 -13
- package/dist/_members/primitives/backgrounds/animated-line-chart/index.d.ts +0 -14
- package/dist/_members/primitives/backgrounds/dither-gradient-bg/index.d.ts +0 -14
- package/dist/_members/primitives/backgrounds/dynamic-grid/index.d.ts +0 -8
- package/dist/_members/primitives/backgrounds/ecosystem-constellation/index.d.ts +0 -8
- package/dist/_members/primitives/backgrounds/infinite-marquee/index.d.ts +0 -8
- package/dist/_members/primitives/backgrounds/mesh-gradient-bg/index.d.ts +0 -8
- package/dist/_members/primitives/backgrounds/perspective-marquee/index.d.ts +0 -8
- package/dist/_members/primitives/backgrounds/silk-flow-bg/index.d.ts +0 -17
- package/dist/_members/primitives/backgrounds/vector-field/index.d.ts +0 -14
- package/dist/_members/primitives/backgrounds/volumetric-rays/index.d.ts +0 -18
- package/dist/_members/primitives/captions/Captions.d.ts +0 -24
- package/dist/_members/primitives/captions/index.d.ts +0 -15
- package/dist/_members/primitives/captions/paginate.d.ts +0 -21
- package/dist/_members/primitives/captions/placement.d.ts +0 -30
- package/dist/_members/primitives/effects/blur/index.d.ts +0 -16
- package/dist/_members/primitives/effects/color-grade/index.d.ts +0 -20
- package/dist/_members/primitives/effects/grain/index.d.ts +0 -12
- package/dist/_members/primitives/effects/parallax/index.d.ts +0 -13
- package/dist/_members/primitives/effects/particles/index.d.ts +0 -16
- package/dist/_members/primitives/effects/pulsing-indicator/index.d.ts +0 -10
- package/dist/_members/primitives/effects/spotlight-card/index.d.ts +0 -8
- package/dist/_members/primitives/effects/spring-pop-in/index.d.ts +0 -10
- package/dist/_members/primitives/effects/success-confetti/index.d.ts +0 -8
- package/dist/_members/primitives/effects/vignette/index.d.ts +0 -12
- package/dist/_members/primitives/hero-text/HeroText.d.ts +0 -17
- package/dist/_members/primitives/hero-text/config.d.ts +0 -10
- package/dist/_members/primitives/hero-text/index.d.ts +0 -14
- package/dist/_members/primitives/index.d.ts +0 -8
- package/dist/_members/primitives/layouts/chat-to-preview-layout/index.d.ts +0 -8
- package/dist/_members/primitives/layouts/infinite-bento-pan/index.d.ts +0 -8
- package/dist/_members/primitives/layouts/letterbox/index.d.ts +0 -15
- package/dist/_members/primitives/layouts/photo-grid/index.d.ts +0 -17
- package/dist/_members/primitives/layouts/picture-in-picture/index.d.ts +0 -21
- package/dist/_members/primitives/layouts/split-screen/index.d.ts +0 -15
- package/dist/_members/primitives/layouts/staggered-bento-grid/index.d.ts +0 -8
- package/dist/_members/primitives/lib/easings.d.ts +0 -27
- package/dist/_members/primitives/lib/palette.d.ts +0 -22
- package/dist/_members/primitives/lib/preview.d.ts +0 -22
- package/dist/_members/primitives/lib/schema.d.ts +0 -36
- package/dist/_members/primitives/lib/seeded-random.d.ts +0 -23
- package/dist/_members/primitives/lib/text/contrast.d.ts +0 -17
- package/dist/_members/primitives/lib/text/fill.d.ts +0 -5
- package/dist/_members/primitives/lib/text/fitText.d.ts +0 -37
- package/dist/_members/primitives/lib/text/marker.d.ts +0 -10
- package/dist/_members/primitives/lib/text/motion.d.ts +0 -46
- package/dist/_members/primitives/lib/text/recolor.d.ts +0 -11
- package/dist/_members/primitives/lib/text/spec.d.ts +0 -39
- package/dist/_members/primitives/lib/text/stage.d.ts +0 -17
- package/dist/_members/primitives/lib/text/typeface.d.ts +0 -11
- package/dist/_members/primitives/lib/tokens.d.ts +0 -87
- package/dist/_members/primitives/lib/types.d.ts +0 -141
- package/dist/_members/primitives/scenes/changelog-bite/index.d.ts +0 -12
- package/dist/_members/primitives/scenes/hero-device-assemble/index.d.ts +0 -8
- package/dist/_members/primitives/scenes/landing-code-showcase/index.d.ts +0 -8
- package/dist/_members/primitives/scenes/live-code-compilation/index.d.ts +0 -8
- package/dist/_members/primitives/scenes/pricing-tier-focus/index.d.ts +0 -8
- package/dist/_members/primitives/scenes/product-launch-trailer/index.d.ts +0 -8
- package/dist/_members/primitives/scenes/terminal-to-browser-deploy/index.d.ts +0 -8
- package/dist/_members/primitives/subject-foreground/SubjectForeground.d.ts +0 -38
- package/dist/_members/primitives/subject-foreground/index.d.ts +0 -21
- package/dist/_members/primitives/text/blur-reveal/index.d.ts +0 -9
- package/dist/_members/primitives/text/cinematic-title/index.d.ts +0 -14
- package/dist/_members/primitives/text/inline-highlight/index.d.ts +0 -11
- package/dist/_members/primitives/text/karaoke/index.d.ts +0 -13
- package/dist/_members/primitives/text/kinetic-type/index.d.ts +0 -15
- package/dist/_members/primitives/text/lower-third/index.d.ts +0 -14
- package/dist/_members/primitives/text/marker-highlight/index.d.ts +0 -10
- package/dist/_members/primitives/text/masked-slide-reveal/index.d.ts +0 -8
- package/dist/_members/primitives/text/matrix-decode/index.d.ts +0 -9
- package/dist/_members/primitives/text/quote-card/index.d.ts +0 -9
- package/dist/_members/primitives/text/rgb-glitch-text/index.d.ts +0 -13
- package/dist/_members/primitives/text/shimmer-sweep/index.d.ts +0 -10
- package/dist/_members/primitives/text/slot-machine-roll/index.d.ts +0 -8
- package/dist/_members/primitives/text/staggered-fade-up/index.d.ts +0 -12
- package/dist/_members/primitives/text/stat-counter/index.d.ts +0 -13
- package/dist/_members/primitives/text/strikethrough-replace/index.d.ts +0 -9
- package/dist/_members/primitives/text/text-effect/index.d.ts +0 -17
- package/dist/_members/primitives/text/text-fade-replace/index.d.ts +0 -8
- package/dist/_members/primitives/text/token-stream/index.d.ts +0 -11
- package/dist/_members/primitives/text/tracking-in/index.d.ts +0 -8
- package/dist/_members/primitives/text/typewriter/index.d.ts +0 -12
- package/dist/_members/primitives/transitions/chromatic-aberration-wipe/index.d.ts +0 -11
- package/dist/_members/primitives/transitions/code-diff-wipe/index.d.ts +0 -8
- package/dist/_members/primitives/transitions/directional-wipe/index.d.ts +0 -10
- package/dist/_members/primitives/transitions/frosted-glass-wipe/index.d.ts +0 -10
- package/dist/_members/primitives/transitions/glitch-cut/index.d.ts +0 -3
- package/dist/_members/primitives/transitions/grid-pixelate-wipe/index.d.ts +0 -14
- package/dist/_members/primitives/transitions/ink-wipe/index.d.ts +0 -3
- package/dist/_members/primitives/transitions/kinetic-type-mask/index.d.ts +0 -12
- package/dist/_members/primitives/transitions/light-leak/index.d.ts +0 -3
- package/dist/_members/primitives/transitions/luma-matte/index.d.ts +0 -2
- package/dist/_members/primitives/transitions/morph/index.d.ts +0 -2
- package/dist/_members/primitives/transitions/spatial-push/index.d.ts +0 -10
- package/dist/_members/primitives/transitions/swipe-transition-wipe/index.d.ts +0 -13
- package/dist/_members/primitives/transitions/zoom-through/index.d.ts +0 -2
- package/dist/_members/primitives/transitions/zoom-through-transition/index.d.ts +0 -9
- package/dist/_members/primitives/ui-blocks/ai-generate-overlay/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/ai-generation-canvas/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/badge-pop/index.d.ts +0 -11
- package/dist/_members/primitives/ui-blocks/before-after-slider/index.d.ts +0 -11
- package/dist/_members/primitives/ui-blocks/benchmark-bars/index.d.ts +0 -11
- package/dist/_members/primitives/ui-blocks/bounding-box-selector/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/browser-flow/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/brush-stroke-simulator/index.d.ts +0 -18
- package/dist/_members/primitives/ui-blocks/chat-exchange/index.d.ts +0 -10
- package/dist/_members/primitives/ui-blocks/code-accordion/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/context-meter/index.d.ts +0 -11
- package/dist/_members/primitives/ui-blocks/cursor-flow/index.d.ts +0 -11
- package/dist/_members/primitives/ui-blocks/dashboard-populate/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/data-flow-pipes/index.d.ts +0 -9
- package/dist/_members/primitives/ui-blocks/device-mockup-zoom/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/drag-and-drop-flow/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/eval-scorecard/index.d.ts +0 -11
- package/dist/_members/primitives/ui-blocks/glass-code-block/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/image-expand-to-fullscreen/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/metric-gauge/index.d.ts +0 -12
- package/dist/_members/primitives/ui-blocks/morphing-modal/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/pipeline-journey/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/progress-steps/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/reasoning-trace/index.d.ts +0 -10
- package/dist/_members/primitives/ui-blocks/simulated-cursor/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/terminal-simulator/index.d.ts +0 -19
- package/dist/_members/primitives/ui-blocks/toast-notification/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/tool-call-stack/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/tool-menu-slide-in/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/visual-docs-snippet/index.d.ts +0 -8
- package/dist/_members/primitives/ui-blocks/voice-waveform/index.d.ts +0 -11
- package/dist/_members/primitives/workspace.d.ts +0 -29
- package/dist/_members/render-harness/browserOptions.d.ts +11 -0
- package/dist/_members/render-harness/browserOptions.d.ts.map +1 -0
- package/dist/_members/render-harness/cardRender.d.ts +0 -40
- package/dist/_members/render-harness/cardRender.d.ts.map +1 -1
- package/dist/_members/render-harness/contractRender.d.ts +0 -16
- package/dist/_members/render-harness/contractRender.d.ts.map +1 -1
- package/dist/_members/render-harness/extractSegments.d.ts +0 -37
- package/dist/_members/render-harness/extractSegments.d.ts.map +1 -1
- package/dist/_members/render-harness/index.d.ts +0 -12
- package/dist/_members/render-harness/index.d.ts.map +1 -1
- package/dist/_members/render-harness/localRender.d.ts +1 -110
- package/dist/_members/render-harness/localRender.d.ts.map +1 -1
- package/dist/_members/render-harness/materializeSources.d.ts +0 -22
- package/dist/_members/render-harness/materializeSources.d.ts.map +1 -1
- package/dist/_members/render-harness/mediaServer.d.ts +0 -16
- package/dist/_members/render-harness/mediaServer.d.ts.map +1 -1
- package/dist/_members/render-harness/renderInputAssets.d.ts +0 -45
- package/dist/_members/render-harness/renderInputAssets.d.ts.map +1 -1
- package/dist/_members/render-harness/resolveAssets.d.ts +0 -24
- package/dist/_members/render-harness/resolveAssets.d.ts.map +1 -1
- package/dist/_members/render-harness/sandboxGlobalSpecs.d.ts +0 -14
- package/dist/_members/render-harness/sandboxGlobalSpecs.d.ts.map +1 -1
- package/dist/account-model/validators.js +1 -1
- package/dist/account-model.js +1 -1
- package/dist/animate.js +0 -15
- package/dist/authoring/build-tools.js +8 -8
- package/dist/authoring/composer.js +0 -20
- package/dist/authoring/context.js +6 -6
- package/dist/authoring/pipelineTrace.js +1 -1
- package/dist/authoring/prompts.js +1 -1
- package/dist/authoring/resource-routing.js +1 -1
- package/dist/authoring/resources.js +1 -1
- package/dist/authoring/tools.js +7 -7
- package/dist/authoring.js +16 -80
- package/dist/{chunk-TWQOKKAF.js → chunk-23HFEKV7.js} +0 -6
- package/dist/{chunk-EA6MYCYW.js → chunk-2B5VJZHL.js} +14 -25
- package/dist/chunk-73DQTUWY.js +131 -0
- package/dist/{chunk-HI4UTTPS.js → chunk-AO744WIK.js} +1 -43
- package/dist/chunk-BADZHXLR.js +0 -0
- package/dist/{chunk-GA23TRNR.js → chunk-BKHGL4MB.js} +5 -13
- package/dist/{chunk-VOO5FQSS.js → chunk-BZZTVOGG.js} +6 -55
- package/dist/{chunk-ODL7GQJG.js → chunk-CAJQ7H5A.js} +17 -17
- package/dist/{chunk-ZB3C3HM7.js → chunk-DCVJWGIA.js} +4 -9
- package/dist/{chunk-IBYQG46O.js → chunk-DWLNPNC4.js} +1 -4
- package/dist/{chunk-SW336CJP.js → chunk-DYZE7JZA.js} +3 -26
- package/dist/{chunk-HCCBDJLW.js → chunk-EP2Y6M2J.js} +0 -4
- package/dist/{chunk-ZE76SSRT.js → chunk-FMODQD5P.js} +0 -6
- package/dist/chunk-FTVZF4GO.js +0 -0
- package/dist/{chunk-PMY24FUD.js → chunk-G5BFI32U.js} +1 -1
- package/dist/{chunk-LD5ZOUFT.js → chunk-GF52TW4I.js} +0 -4
- package/dist/{chunk-ABL557OT.js → chunk-GMD33ZD7.js} +1 -8
- package/dist/{chunk-XWKZB5U5.js → chunk-ICSZF37W.js} +21 -150
- package/dist/chunk-IEXAKOEX.js +113 -0
- package/dist/{chunk-UY4SWJVE.js → chunk-K2IUBCND.js} +0 -12
- package/dist/chunk-LJ5W4ZBU.js +146 -0
- package/dist/chunk-LLUW26BS.js +255 -0
- package/dist/{chunk-GEA7E2FL.js → chunk-PIURX6IZ.js} +220 -2
- package/dist/{chunk-MMEJ3Y7E.js → chunk-QETYXKQQ.js} +1 -10
- package/dist/{chunk-YX2GSJK7.js → chunk-RP4SXXLJ.js} +1 -1
- package/dist/{chunk-P727GZVO.js → chunk-SAMQUUO5.js} +3 -5
- package/dist/{chunk-RF7U3SCL.js → chunk-TD347SSX.js} +3 -11
- package/dist/{chunk-NFEGPWGS.js → chunk-TFGKUWHY.js} +1 -88
- package/dist/{chunk-LM4WDUQJ.js → chunk-TPA6PYN2.js} +1 -11
- package/dist/{chunk-OLFOPQCA.js → chunk-UQSOS726.js} +4 -18
- package/dist/{chunk-GBRNYH7W.js → chunk-V24L35GM.js} +0 -11
- package/dist/{chunk-COYMZ76S.js → chunk-VFMW3JUY.js} +1 -1
- package/dist/{chunk-YIOY2XEO.js → chunk-VHF66LCQ.js} +22 -94
- package/dist/{chunk-JMURQODM.js → chunk-VZ7TYX6Z.js} +0 -1
- package/dist/{chunk-SIGGQRY2.js → chunk-W3SIWT7J.js} +5030 -4412
- package/dist/{chunk-W35ZMOXB.js → chunk-WPZKOVYF.js} +0 -5
- package/dist/chunk-WZH57M53.js +494 -0
- package/dist/{chunk-AYVJXDLB.js → chunk-XHGZ2E77.js} +0 -2
- package/dist/{chunk-JRQVPFLF.js → chunk-XQ72DZKJ.js} +1 -1
- package/dist/{chunk-7DHP4ESU.js → chunk-YLDMAZZE.js} +0 -10
- package/dist/{chunk-FYZVH3MC.js → chunk-YQ7FFW3G.js} +0 -11
- package/dist/chunk-ZPLJ24OV.js +93 -0
- package/dist/cloud-import/multipart.js +1 -1
- package/dist/cloud-import.js +9 -16
- package/dist/compose/renderer.js +18 -18
- package/dist/compose.js +21 -21
- package/dist/composition/audio.js +1 -1
- package/dist/composition/brand-kit.js +0 -5
- package/dist/composition/graphics-plan.js +4 -4
- package/dist/composition/ops.js +5 -5
- package/dist/composition/primitive-catalog.js +1 -1
- package/dist/composition/projection.js +28 -4
- package/dist/composition/reframe/kenBurns.js +0 -4
- package/dist/composition/reframe.js +4 -2
- package/dist/composition/timeline.js +1 -1
- package/dist/composition/validators/graphic-kinds.js +1 -1
- package/dist/composition/validators.js +8 -6
- package/dist/composition-ops.js +18 -135
- package/dist/composition.js +35 -9
- package/dist/context-JLLU3MYD.js +14 -0
- package/dist/core/render.js +9 -7
- package/dist/core/select.js +2 -6
- package/dist/core.js +5 -7
- package/dist/director/ai-sdk.d.ts +1 -0
- package/dist/director/ai-sdk.js +33 -0
- package/dist/director/domain.d.ts +1 -0
- package/dist/director/domain.js +62 -0
- package/dist/director/testing.d.ts +1 -0
- package/dist/director/testing.js +22 -0
- package/dist/director.d.ts +1 -0
- package/dist/director.js +86 -0
- package/dist/errors.js +1 -1
- package/dist/foundation.js +1 -0
- package/dist/mcp/adapter.js +5 -64
- package/dist/mcp/core.js +1 -1
- package/dist/mcp/curation.js +1 -1
- package/dist/mcp/server.js +4 -4
- package/dist/mcp.js +4 -4
- package/dist/media-model/generation.d.ts +1 -0
- package/dist/media-model/generation.js +40 -0
- package/dist/media-model/testing.js +1071 -718
- package/dist/media-model.js +38 -6
- package/dist/nle-export/server.js +328 -130
- package/dist/nle-export.js +22 -21
- package/dist/plane/contract.js +0 -3
- package/dist/primitives/backgrounds.js +2 -2
- package/dist/primitives/captions.js +0 -5
- package/dist/primitives/effects.js +2 -2
- package/dist/primitives/hero-text.js +2 -2
- package/dist/primitives/layouts.js +2 -2
- package/dist/primitives/lib/index.js +17 -17
- package/dist/primitives/lib/text/fitText.js +1 -1
- package/dist/primitives/lib/tokens.js +1 -1
- package/dist/primitives/lib.js +17 -17
- package/dist/primitives/scenes.js +2 -2
- package/dist/primitives/text.js +2 -2
- package/dist/primitives/ui-blocks.js +4 -4
- package/dist/primitives.js +21 -21
- package/dist/render-harness/sandboxGlobalSpecs.js +1 -1
- package/dist/render-harness.js +24 -41
- package/package.json +39 -24
- package/dist/_members/account-model/index.js +0 -4
- package/dist/_members/account-model/testing/conversationStoreContract.js +0 -168
- package/dist/_members/account-model/testing/index.js +0 -7
- package/dist/_members/account-model/testing/restorePointStoreContract.js +0 -69
- package/dist/_members/account-model/types/index.js +0 -1
- package/dist/_members/account-model/validators/contextFile.js +0 -18
- package/dist/_members/account-model/validators/conversation.js +0 -95
- package/dist/_members/account-model/validators/dashboardInsight.js +0 -16
- package/dist/_members/account-model/validators/index.js +0 -7
- package/dist/_members/account-model/validators/sessionToken.js +0 -49
- package/dist/_members/account-model/validators/uploadToken.js +0 -16
- package/dist/_members/account-model/validators/userSettings.js +0 -12
- package/dist/_members/account-model/validators/workingComposition.js +0 -20
- package/dist/_members/brand-derivation/constants.js +0 -20
- package/dist/_members/brand-derivation/contrastSafe.js +0 -114
- package/dist/_members/brand-derivation/index.js +0 -1
- package/dist/_members/cloud-import/chunk-XKO6ZSWI.js +0 -162
- package/dist/_members/cloud-import/chunk-XKO6ZSWI.js.map +0 -1
- package/dist/_members/cloud-import/index.js +0 -241
- package/dist/_members/cloud-import/index.js.map +0 -1
- package/dist/_members/cloud-import/multipartUpload.js +0 -7
- package/dist/_members/cloud-import/multipartUpload.js.map +0 -1
- package/dist/_members/composition/audio/audioMix.js +0 -61
- package/dist/_members/composition/audio/index.js +0 -5
- package/dist/_members/composition/audio/mixStaging.js +0 -195
- package/dist/_members/composition/audio/musicPack.generated.js +0 -136
- package/dist/_members/composition/audio/musicPack.js +0 -36
- package/dist/_members/composition/audio/pack.generated.js +0 -603
- package/dist/_members/composition/audio/pack.js +0 -48
- package/dist/_members/composition/audio/palette.js +0 -134
- package/dist/_members/composition/autozoom/index.js +0 -83
- package/dist/_members/composition/brand-kit.js +0 -45
- package/dist/_members/composition/brief/contract.js +0 -209
- package/dist/_members/composition/color-grade.js +0 -80
- package/dist/_members/composition/depth.js +0 -8
- package/dist/_members/composition/fixtures/index.js +0 -143
- package/dist/_members/composition/fixtures/vaayaErrored.d.ts +0 -25
- package/dist/_members/composition/fixtures/vaayaErrored.js +0 -203
- package/dist/_members/composition/fonts.js +0 -162
- package/dist/_members/composition/graphics-plan/compile.js +0 -221
- package/dist/_members/composition/graphics-plan/index.js +0 -10
- package/dist/_members/composition/graphics-plan/instantiateMotif.js +0 -44
- package/dist/_members/composition/graphics-plan/motion.js +0 -66
- package/dist/_members/composition/graphics-plan/schemas.js +0 -261
- package/dist/_members/composition/graphics-plan/solve.js +0 -145
- package/dist/_members/composition/index.js +0 -5
- package/dist/_members/composition/invariants/clipPlacement.js +0 -69
- package/dist/_members/composition/invariants/composition.js +0 -28
- package/dist/_members/composition/invariants/errors.js +0 -10
- package/dist/_members/composition/invariants/etag.js +0 -38
- package/dist/_members/composition/invariants/ids.js +0 -33
- package/dist/_members/composition/invariants/index.js +0 -9
- package/dist/_members/composition/invariants/keyframes.js +0 -45
- package/dist/_members/composition/invariants/markers.js +0 -29
- package/dist/_members/composition/invariants/time.js +0 -20
- package/dist/_members/composition/invariants/tracks.js +0 -304
- package/dist/_members/composition/ops/compositionOps.js +0 -1056
- package/dist/_members/composition/ops/headlessStore.js +0 -94
- package/dist/_members/composition/ops/index.js +0 -4
- package/dist/_members/composition/ops/selectors.js +0 -118
- package/dist/_members/composition/ops/timeline-word.js +0 -1
- package/dist/_members/composition/ops/transcript.js +0 -77
- package/dist/_members/composition/ops/types.js +0 -16
- package/dist/_members/composition/primitive-catalog/catalogQuery.js +0 -150
- package/dist/_members/composition/primitive-catalog/disabled.js +0 -32
- package/dist/_members/composition/primitive-catalog/generated/meta.js +0 -15161
- package/dist/_members/composition/primitive-catalog/index.js +0 -46
- package/dist/_members/composition/primitive-catalog/paramValidation.js +0 -231
- package/dist/_members/composition/primitive-catalog/projection.js +0 -164
- package/dist/_members/composition/primitive-catalog/types.js +0 -14
- package/dist/_members/composition/projection/behind-placement.js +0 -62
- package/dist/_members/composition/projection/brandKit.js +0 -482
- package/dist/_members/composition/projection/cardTokens.js +0 -209
- package/dist/_members/composition/projection/composition-floor.js +0 -582
- package/dist/_members/composition/projection/cropProjection.js +0 -257
- package/dist/_members/composition/projection/index.js +0 -7
- package/dist/_members/composition/projection/occlusion-budget.js +0 -104
- package/dist/_members/composition/projection/safe-zones.js +0 -99
- package/dist/_members/composition/reframe/aspectLoss.js +0 -115
- package/dist/_members/composition/reframe/coverage.js +0 -62
- package/dist/_members/composition/reframe/derive.js +0 -73
- package/dist/_members/composition/reframe/index.js +0 -109
- package/dist/_members/composition/reframe/kenBurns.js +0 -64
- package/dist/_members/composition/reframe/shotScale.js +0 -176
- package/dist/_members/composition/reframe/trajectory.js +0 -124
- package/dist/_members/composition/timeline/compound.js +0 -134
- package/dist/_members/composition/timeline/index.js +0 -9
- package/dist/_members/composition/timeline/intent.js +0 -228
- package/dist/_members/composition/timeline/keyframes.js +0 -121
- package/dist/_members/composition/timeline/link.js +0 -59
- package/dist/_members/composition/timeline/occupancy.js +0 -36
- package/dist/_members/composition/timeline/placement.js +0 -74
- package/dist/_members/composition/timeline/plan.js +0 -31
- package/dist/_members/composition/timeline/resolve.js +0 -170
- package/dist/_members/composition/timeline/trims.js +0 -278
- package/dist/_members/composition/types/index.js +0 -1
- package/dist/_members/composition/validators/brandKit.js +0 -295
- package/dist/_members/composition/validators/composePlan.js +0 -113
- package/dist/_members/composition/validators/composition.js +0 -703
- package/dist/_members/composition/validators/font.js +0 -34
- package/dist/_members/composition/validators/graphicKinds.js +0 -30
- package/dist/_members/composition/validators/index.js +0 -9
- package/dist/_members/composition/validators/project.js +0 -29
- package/dist/_members/composition/validators/registry.js +0 -41
- package/dist/_members/composition/validators/render.js +0 -139
- package/dist/_members/composition/validators/session.js +0 -37
- package/dist/_members/composition/validators/webhook.js +0 -72
- package/dist/_members/composition-ops/alphaLayers.js +0 -141
- package/dist/_members/composition-ops/index.js +0 -637
- package/dist/_members/composition-ops/materializeGrid.js +0 -99
- package/dist/_members/composition-ops/opRecorder.js +0 -196
- package/dist/_members/composition-ops/recordingStore.js +0 -14
- package/dist/_members/composition-ops/replaceRegion.js +0 -102
- package/dist/_members/composition-ops/testFixtures.js +0 -19
- package/dist/_members/core/index.js +0 -5
- package/dist/_members/core/render/bookends.js +0 -53
- package/dist/_members/core/render/captions.js +0 -127
- package/dist/_members/core/render/compositionRender.js +0 -1249
- package/dist/_members/core/render/deriveTrajectory.js +0 -889
- package/dist/_members/core/render/emphasis.js +0 -16
- package/dist/_members/core/render/eval/cropBox.js +0 -139
- package/dist/_members/core/render/eval/inclusion.js +0 -96
- package/dist/_members/core/render/eval/index.js +0 -146
- package/dist/_members/core/render/eval/metrics.js +0 -94
- package/dist/_members/core/render/exportSettings.js +0 -65
- package/dist/_members/core/render/index.js +0 -20
- package/dist/_members/core/render/mapFaceToPerson.js +0 -73
- package/dist/_members/core/render/types.js +0 -8
- package/dist/_members/core/render/vcam/cameraPath.js +0 -248
- package/dist/_members/core/render/vcam/constants.js +0 -115
- package/dist/_members/core/render/vcam/errorCodes.js +0 -39
- package/dist/_members/core/render/vcam/framing.js +0 -136
- package/dist/_members/core/render/vcam/requiredRegion.js +0 -137
- package/dist/_members/core/render/vcam/shots.js +0 -53
- package/dist/_members/core/render/vcam/subjectSet.js +0 -388
- package/dist/_members/core/select/errorCodes.js +0 -38
- package/dist/_members/core/select/index.js +0 -26
- package/dist/_members/core/select/model.js +0 -18
- package/dist/_members/core/select/select.js +0 -244
- package/dist/_members/core/select/stabilize.js +0 -242
- package/dist/_members/core/types.js +0 -7
- package/dist/_members/errors/index.js +0 -1
- package/dist/_members/errors/registry.js +0 -560
- package/dist/_members/foundation/codes/index.js +0 -31
- package/dist/_members/foundation/index.js +0 -2
- package/dist/_members/foundation/primitives/index.js +0 -5
- package/dist/_members/mcp/adapter.js +0 -771
- package/dist/_members/mcp/burnedNames.js +0 -73
- package/dist/_members/mcp/core.js +0 -390
- package/dist/_members/mcp/curation.js +0 -792
- package/dist/_members/mcp/executor.js +0 -142
- package/dist/_members/mcp/format.js +0 -9
- package/dist/_members/mcp/generated/catalogPreviews.js +0 -95
- package/dist/_members/mcp/generated/harness.js +0 -81
- package/dist/_members/mcp/generated/operations.js +0 -131
- package/dist/_members/mcp/index.js +0 -50
- package/dist/_members/mcp/internalLoopTools.js +0 -109
- package/dist/_members/mcp/prompts.js +0 -45
- package/dist/_members/mcp/resources.js +0 -166
- package/dist/_members/mcp/server.js +0 -340
- package/dist/_members/mcp/wait.js +0 -378
- package/dist/_members/mcp/x402Meta.js +0 -66
- package/dist/_members/media-model/api.js +0 -175
- package/dist/_members/media-model/index.js +0 -1
- package/dist/_members/media-model/media-kind.js +0 -116
- package/dist/_members/media-model/testing/index.js +0 -1
- package/dist/_members/media-model/testing/mediaStoreContract.js +0 -82
- package/dist/_members/media-model/transcriptSearch.js +0 -70
- package/dist/_members/media-model/transcriptSearchCases.json +0 -79
- package/dist/_members/nle-export/compact-timeline.js +0 -73
- package/dist/_members/nle-export/compact-timeline.js.map +0 -1
- package/dist/_members/nle-export/composition-to-input.js +0 -147
- package/dist/_members/nle-export/composition-to-input.js.map +0 -1
- package/dist/_members/nle-export/fcpxml.js +0 -159
- package/dist/_members/nle-export/fcpxml.js.map +0 -1
- package/dist/_members/nle-export/index.js +0 -12
- package/dist/_members/nle-export/index.js.map +0 -1
- package/dist/_members/nle-export/premiere.js +0 -161
- package/dist/_members/nle-export/premiere.js.map +0 -1
- package/dist/_members/nle-export/server/index.js +0 -2
- package/dist/_members/nle-export/server/index.js.map +0 -1
- package/dist/_members/nle-export/server/pack-zip.js +0 -38
- package/dist/_members/nle-export/server/pack-zip.js.map +0 -1
- package/dist/_members/nle-export/srt.js +0 -50
- package/dist/_members/nle-export/srt.js.map +0 -1
- package/dist/_members/nle-export/types.js +0 -9
- package/dist/_members/nle-export/types.js.map +0 -1
- package/dist/_members/nle-export/xml/index.js +0 -11
- package/dist/_members/nle-export/xml/index.js.map +0 -1
- package/dist/_members/nle-export/xml-utils.js +0 -48
- package/dist/_members/nle-export/xml-utils.js.map +0 -1
- package/dist/_members/perception/activeSpeaker.js +0 -103
- package/dist/_members/perception/audioQuality.js +0 -76
- package/dist/_members/perception/energyBeat.js +0 -99
- package/dist/_members/perception/identityMatch.js +0 -91
- package/dist/_members/perception/index.js +0 -48
- package/dist/_members/perception/visualQuality.js +0 -95
- package/dist/_members/plane/conformance.js +0 -90
- package/dist/_members/plane/contract.js +0 -49
- package/dist/_members/plane/index.js +0 -16
- package/dist/_members/primitives/backgrounds/index.js +0 -32
- package/dist/_members/primitives/backgrounds/index.js.map +0 -1
- package/dist/_members/primitives/captions/index.js +0 -398
- package/dist/_members/primitives/captions/index.js.map +0 -1
- package/dist/_members/primitives/chunk-2LVE4UIT.js +0 -139
- package/dist/_members/primitives/chunk-2LVE4UIT.js.map +0 -1
- package/dist/_members/primitives/chunk-3IQUH6KK.js +0 -20
- package/dist/_members/primitives/chunk-3IQUH6KK.js.map +0 -1
- package/dist/_members/primitives/chunk-3OMURV6Q.js +0 -112
- package/dist/_members/primitives/chunk-3OMURV6Q.js.map +0 -1
- package/dist/_members/primitives/chunk-4IS6TMEG.js +0 -21
- package/dist/_members/primitives/chunk-4IS6TMEG.js.map +0 -1
- package/dist/_members/primitives/chunk-5MWGAEGQ.js +0 -1644
- package/dist/_members/primitives/chunk-5MWGAEGQ.js.map +0 -1
- package/dist/_members/primitives/chunk-7RRPFPQK.js +0 -15
- package/dist/_members/primitives/chunk-7RRPFPQK.js.map +0 -1
- package/dist/_members/primitives/chunk-DH5TRZK2.js +0 -125
- package/dist/_members/primitives/chunk-DH5TRZK2.js.map +0 -1
- package/dist/_members/primitives/chunk-E3KNUSFG.js +0 -2337
- package/dist/_members/primitives/chunk-E3KNUSFG.js.map +0 -1
- package/dist/_members/primitives/chunk-G2B3G4HK.js +0 -47
- package/dist/_members/primitives/chunk-G2B3G4HK.js.map +0 -1
- package/dist/_members/primitives/chunk-HFPFGZXT.js +0 -1494
- package/dist/_members/primitives/chunk-HFPFGZXT.js.map +0 -1
- package/dist/_members/primitives/chunk-HIWVFZVH.js +0 -19
- package/dist/_members/primitives/chunk-HIWVFZVH.js.map +0 -1
- package/dist/_members/primitives/chunk-IDAL6G3Y.js +0 -134
- package/dist/_members/primitives/chunk-IDAL6G3Y.js.map +0 -1
- package/dist/_members/primitives/chunk-KNC6JP5F.js +0 -34
- package/dist/_members/primitives/chunk-KNC6JP5F.js.map +0 -1
- package/dist/_members/primitives/chunk-KYRDVZST.js +0 -459
- package/dist/_members/primitives/chunk-KYRDVZST.js.map +0 -1
- package/dist/_members/primitives/chunk-LWLHS2NS.js +0 -3410
- package/dist/_members/primitives/chunk-LWLHS2NS.js.map +0 -1
- package/dist/_members/primitives/chunk-QAQ3P7DR.js +0 -8855
- package/dist/_members/primitives/chunk-QAQ3P7DR.js.map +0 -1
- package/dist/_members/primitives/chunk-ROV2ODWC.js +0 -81
- package/dist/_members/primitives/chunk-ROV2ODWC.js.map +0 -1
- package/dist/_members/primitives/chunk-TCRC2FH3.js +0 -183
- package/dist/_members/primitives/chunk-TCRC2FH3.js.map +0 -1
- package/dist/_members/primitives/chunk-US4YEDAA.js +0 -96
- package/dist/_members/primitives/chunk-US4YEDAA.js.map +0 -1
- package/dist/_members/primitives/chunk-UVKRO5ER.js +0 -13
- package/dist/_members/primitives/chunk-UVKRO5ER.js.map +0 -1
- package/dist/_members/primitives/chunk-W4EIIF2I.js +0 -10
- package/dist/_members/primitives/chunk-W4EIIF2I.js.map +0 -1
- package/dist/_members/primitives/chunk-WPGKIPCO.js +0 -3563
- package/dist/_members/primitives/chunk-WPGKIPCO.js.map +0 -1
- package/dist/_members/primitives/chunk-WZFLEGMD.js +0 -1435
- package/dist/_members/primitives/chunk-WZFLEGMD.js.map +0 -1
- package/dist/_members/primitives/chunk-XHU3WBEI.js +0 -33
- package/dist/_members/primitives/chunk-XHU3WBEI.js.map +0 -1
- package/dist/_members/primitives/chunk-YN7WTZZ7.js +0 -46
- package/dist/_members/primitives/chunk-YN7WTZZ7.js.map +0 -1
- package/dist/_members/primitives/effects/index.js +0 -30
- package/dist/_members/primitives/effects/index.js.map +0 -1
- package/dist/_members/primitives/hero-text/index.js +0 -14
- package/dist/_members/primitives/hero-text/index.js.map +0 -1
- package/dist/_members/primitives/index.js +0 -64
- package/dist/_members/primitives/index.js.map +0 -1
- package/dist/_members/primitives/layouts/index.js +0 -24
- package/dist/_members/primitives/layouts/index.js.map +0 -1
- package/dist/_members/primitives/lib/easings.js +0 -26
- package/dist/_members/primitives/lib/easings.js.map +0 -1
- package/dist/_members/primitives/lib/index.js +0 -74
- package/dist/_members/primitives/lib/index.js.map +0 -1
- package/dist/_members/primitives/lib/palette.js +0 -72
- package/dist/_members/primitives/lib/palette.js.map +0 -1
- package/dist/_members/primitives/lib/preview.js +0 -8
- package/dist/_members/primitives/lib/preview.js.map +0 -1
- package/dist/_members/primitives/lib/schema.js +0 -12
- package/dist/_members/primitives/lib/schema.js.map +0 -1
- package/dist/_members/primitives/lib/seeded-random.js +0 -14
- package/dist/_members/primitives/lib/seeded-random.js.map +0 -1
- package/dist/_members/primitives/lib/text/contrast.js +0 -12
- package/dist/_members/primitives/lib/text/contrast.js.map +0 -1
- package/dist/_members/primitives/lib/text/fill.js +0 -8
- package/dist/_members/primitives/lib/text/fill.js.map +0 -1
- package/dist/_members/primitives/lib/text/fitText.js +0 -10
- package/dist/_members/primitives/lib/text/fitText.js.map +0 -1
- package/dist/_members/primitives/lib/text/marker.js +0 -8
- package/dist/_members/primitives/lib/text/marker.js.map +0 -1
- package/dist/_members/primitives/lib/text/motion.js +0 -16
- package/dist/_members/primitives/lib/text/motion.js.map +0 -1
- package/dist/_members/primitives/lib/text/recolor.js +0 -8
- package/dist/_members/primitives/lib/text/recolor.js.map +0 -1
- package/dist/_members/primitives/lib/text/spec.js +0 -1
- package/dist/_members/primitives/lib/text/spec.js.map +0 -1
- package/dist/_members/primitives/lib/text/stage.js +0 -8
- package/dist/_members/primitives/lib/text/stage.js.map +0 -1
- package/dist/_members/primitives/lib/text/typeface.js +0 -8
- package/dist/_members/primitives/lib/text/typeface.js.map +0 -1
- package/dist/_members/primitives/lib/tokens.js +0 -24
- package/dist/_members/primitives/lib/tokens.js.map +0 -1
- package/dist/_members/primitives/lib/types.js +0 -1
- package/dist/_members/primitives/lib/types.js.map +0 -1
- package/dist/_members/primitives/params-required.json +0 -153
- package/dist/_members/primitives/scenes/index.js +0 -25
- package/dist/_members/primitives/scenes/index.js.map +0 -1
- package/dist/_members/primitives/subject-foreground/index.js +0 -30
- package/dist/_members/primitives/subject-foreground/index.js.map +0 -1
- package/dist/_members/primitives/text/index.js +0 -57
- package/dist/_members/primitives/text/index.js.map +0 -1
- package/dist/_members/primitives/transitions/index.js +0 -67
- package/dist/_members/primitives/transitions/index.js.map +0 -1
- package/dist/_members/primitives/ui-blocks/index.js +0 -76
- package/dist/_members/primitives/ui-blocks/index.js.map +0 -1
- package/dist/_members/primitives/version-map.json +0 -105
- package/dist/_members/primitives/workspace.js +0 -60
- package/dist/_members/primitives/workspace.js.map +0 -1
- package/dist/chunk-37NJ27UU.js +0 -501
- package/dist/chunk-6EQXLEP6.js +0 -194
- package/dist/chunk-MXFAADCQ.js +0 -735
- package/dist/context-OKX3HHFS.js +0 -14
|
@@ -1,93 +1,35 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Reframe eval harness — the public surface for the metrics + the fixture-driven
|
|
3
|
-
* report. Pure TS, no Modal, no R2: every metric replays a cached `SubjectTrack`
|
|
4
|
-
* fixture through the REAL `deriveTrajectory` and measures the composed crop box.
|
|
5
|
-
* See the virtual-camera spec's "Eval / metrics / test harness (built FIRST)".
|
|
6
|
-
*
|
|
7
|
-
* Phase 0 shipped jitter + center-crop. Phase 3 adds the INCLUSION gate (the
|
|
8
|
-
* camera tracks a moving subject ⇒ region ⊆ crop) + the shot-aware teleport
|
|
9
|
-
* metric + the "smoother than the old EMA path" characterization, because pure
|
|
10
|
-
* jitter-beats-center-crop is the WRONG bar once the camera legitimately moves to
|
|
11
|
-
* track (a static center-crop has jitter 0 but loses a walking subject).
|
|
12
|
-
*/
|
|
13
1
|
import type { SubjectTrack, ReframeSegment } from '../deriveTrajectory.js';
|
|
14
2
|
import { type JitterBreakdown } from './metrics.js';
|
|
15
3
|
export type { CropBox } from './cropBox.js';
|
|
16
4
|
export { cropBoxSeries, centerCropBoxSeries, rawCentroidBoxSeries, cropBoxSeriesFromCenters, cropWindowSize, cropBoxForFrame, } from './cropBox.js';
|
|
17
5
|
export { jitter, iou, mIoU, type JitterBreakdown } from './metrics.js';
|
|
18
6
|
export { requiredRegionsForTrack, inclusionRate, intraShotMaxStep, regionInCrop, } from './inclusion.js';
|
|
19
|
-
/** One fixture's reframe-eval report — the numbers a CI gate / RED baseline reads. */
|
|
20
7
|
export interface ReframeEvalReport {
|
|
21
|
-
/** Composed-crop-box jitter of the algorithm under test. */
|
|
22
8
|
jitter: JitterBreakdown;
|
|
23
|
-
/** Composed-crop-box jitter of the static center crop (same per-shot zoom). */
|
|
24
9
|
centerCropJitter: JitterBreakdown;
|
|
25
|
-
/** Composed-crop-box jitter of the raw subject-centroid path (research bar). */
|
|
26
10
|
rawCentroidJitter: JitterBreakdown;
|
|
27
|
-
/** True iff the algorithm beats the static center crop on smoothness (the bar). */
|
|
28
11
|
beatsCenterCrop: boolean;
|
|
29
|
-
/** Frames in the composed series (one per output frame across all segments). */
|
|
30
12
|
frames: number;
|
|
31
13
|
}
|
|
32
|
-
/**
|
|
33
|
-
* Run the base eval over a fixture track + authored reframe segments. Derives the
|
|
34
|
-
* trajectory through the SHIPPING `deriveTrajectory`, composes the crop boxes,
|
|
35
|
-
* and reports jitter vs the center-crop + raw-centroid baselines.
|
|
36
|
-
*/
|
|
37
14
|
export declare function evalReframe(track: SubjectTrack, segments: ReframeSegment[], aspect: string, bakeVersion: string): ReframeEvalReport;
|
|
38
|
-
/** The Phase-3 tracking report — the gate for a MOVING subject (inclusion, not
|
|
39
|
-
* jitter-beats-center-crop). All over a single full-window `all-faces` segment. */
|
|
40
15
|
export interface ReframeTrackingReport {
|
|
41
|
-
/** Inclusion rate of OUR camera path (region ⊆ crop) — ≈1.0 ⇒ subject tracked. */
|
|
42
16
|
inclusionRate: number;
|
|
43
|
-
/** Inclusion rate of a STATIC center crop (same per-shot zoom) — lower ⇒ subject
|
|
44
|
-
* walks out of a static crop, which our tracking camera fixes. */
|
|
45
17
|
centerCropInclusionRate: number;
|
|
46
|
-
/** Frames that had a RequiredRegion (a subject to keep in frame). */
|
|
47
18
|
framesWithRegion: number;
|
|
48
|
-
/** Composed-crop jitter of OUR camera path. */
|
|
49
19
|
jitter: JitterBreakdown;
|
|
50
|
-
/** Composed-crop jitter of the SAME per-frame tracking centroid through the OLD
|
|
51
|
-
* `emaSmooth` (the characterization baseline — ours must be ≤ this). */
|
|
52
20
|
emaPathJitter: JitterBreakdown;
|
|
53
|
-
/** Composed-crop jitter of the RAW (unsmoothed) per-frame tracking centroid. */
|
|
54
21
|
rawPathJitter: JitterBreakdown;
|
|
55
|
-
/** Largest per-frame center step WITHIN a shot (cut-snaps excluded) — teleport
|
|
56
|
-
* guard. Motion exists (tracking), but no intra-shot jump. */
|
|
57
22
|
intraShotMaxStep: number;
|
|
58
23
|
frames: number;
|
|
59
24
|
}
|
|
60
|
-
/**
|
|
61
|
-
* The Phase-3 tracking eval for an `all-faces` segment over the whole window.
|
|
62
|
-
* Recomputes the per-frame RequiredRegions (the SAME `selectSubjectSet` the
|
|
63
|
-
* derive uses) and measures whether the camera keeps the subject in frame
|
|
64
|
-
* (inclusion), how it compares to the old EMA path (smoothness), and that it
|
|
65
|
-
* never teleports within a shot. The fixed crop window per frame is the
|
|
66
|
-
* segment's authored zoom + aspect (all-faces has no eased per-frame zoom).
|
|
67
|
-
*/
|
|
68
25
|
export declare function evalTracking(track: SubjectTrack, aspect: string, bakeVersion: string): ReframeTrackingReport;
|
|
69
|
-
/** One mode's OLD-vs-NEW report for a `face` / `active-speaker` segment. */
|
|
70
26
|
export interface SingleSubjectEvalReport {
|
|
71
|
-
/** NEW (core geometric-deadzone) composed-crop jitter. */
|
|
72
27
|
jitter: JitterBreakdown;
|
|
73
|
-
/** OLD (emaSmooth 0.35 over the bare centroid) composed-crop jitter. */
|
|
74
28
|
emaJitter: JitterBreakdown;
|
|
75
|
-
/** NEW inclusion vs the chosen subject's per-frame padded BOX region. */
|
|
76
29
|
inclusionRate: number;
|
|
77
|
-
/** OLD inclusion vs the SAME region (so the two paths are judged on one bar). */
|
|
78
30
|
emaInclusionRate: number;
|
|
79
|
-
/** NEW intra-shot max center step (cut-snaps excluded) — the teleport guard. */
|
|
80
31
|
intraShotMaxStep: number;
|
|
81
|
-
/** OLD intra-shot max center step. */
|
|
82
32
|
emaIntraShotMaxStep: number;
|
|
83
|
-
/** Frames the chosen subject was resolved (had a box) — the inclusion denominator. */
|
|
84
33
|
framesWithRegion: number;
|
|
85
34
|
}
|
|
86
|
-
/**
|
|
87
|
-
* Characterize the P4 `face` / `active-speaker` migration on a real fixture: the
|
|
88
|
-
* NEW core geometric-deadzone path (run via the SHIPPING `deriveTrajectory`) vs
|
|
89
|
-
* the OLD `emaSmooth` path (reconstructed here over the SAME per-frame chosen-
|
|
90
|
-
* subject centroid the old code used), measured against ONE inclusion region (the
|
|
91
|
-
* chosen subject's per-frame padded BOX). All over a single full-window segment.
|
|
92
|
-
*/
|
|
93
35
|
export declare function evalSingleSubject(track: SubjectTrack, mode: 'face' | 'active-speaker', aspect: string, bakeVersion: string, faceId?: string): SingleSubjectEvalReport;
|
|
@@ -1,48 +1,12 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Reframe eval metrics — pure, label-free, deterministic.
|
|
3
|
-
*
|
|
4
|
-
* Tier 1 (HARD CI BLOCKERS, no human labels): `jitter` + the center-crop
|
|
5
|
-
* comparison. These are what gate the build per the virtual-camera spec —
|
|
6
|
-
* "jitter-beats-center-crop is the only ship-blocker".
|
|
7
|
-
*
|
|
8
|
-
* Tier 2 (REPORTED, not blocking): `mIoU` — scaffolded + reported, NOT a gate,
|
|
9
|
-
* because per-frame human ground-truth boxes don't exist yet (RESOLVED #3).
|
|
10
|
-
*
|
|
11
|
-
* `jitter` = mean over frames of the absolute frame-to-frame difference of the
|
|
12
|
-
* composed crop box (center x/y AND size), in output-crop-normalized units. The
|
|
13
|
-
* per-component delta is normalized by the box's own size, so the metric is
|
|
14
|
-
* zoom-invariant: a half-window pan reads the same number at any zoom (the spec's
|
|
15
|
-
* "held feel is zoom-invariant" requirement). Lower is smoother. A static crop
|
|
16
|
-
* has zero pan jitter; the only motion it carries is the per-shot `zoom_scale`
|
|
17
|
-
* steps, which both paths share — so `jitter(ours) ≤ jitter(centerCrop)` isolates
|
|
18
|
-
* "where the camera points" as the sole variable.
|
|
19
|
-
*/
|
|
20
1
|
import type { CropBox } from './cropBox.js';
|
|
21
|
-
/** Per-channel jitter breakdown (so a regression points at center vs zoom). */
|
|
22
2
|
export interface JitterBreakdown {
|
|
23
|
-
/** Mean |Δ| of the window center, normalized by window size (output-crop units). */
|
|
24
3
|
center: number;
|
|
25
|
-
/** Mean |Δ| of the window size (zoom channel), normalized by mean window size. */
|
|
26
4
|
zoom: number;
|
|
27
|
-
/** Combined center + zoom mean absolute step — the headline jitter scalar. */
|
|
28
5
|
total: number;
|
|
29
|
-
/** The single largest per-frame center step (output-crop units) — teleport guard. */
|
|
30
6
|
maxCenterStep: number;
|
|
31
7
|
}
|
|
32
|
-
/**
|
|
33
|
-
* Jitter of a composed crop-box series. Empty / single-frame series → all zeros
|
|
34
|
-
* (no motion to measure). The center delta is divided by the per-frame window
|
|
35
|
-
* size so it is expressed in fractions of the crop window (output-crop space);
|
|
36
|
-
* the zoom delta is divided by the mean window size for the same normalization.
|
|
37
|
-
*/
|
|
38
8
|
export declare function jitter(boxes: CropBox[]): JitterBreakdown;
|
|
39
|
-
/** Intersection-over-union of two source-normalized crop boxes. */
|
|
40
9
|
export declare function iou(a: CropBox, b: CropBox): number;
|
|
41
|
-
/**
|
|
42
|
-
* mIoU + IoU@0.5 vs a per-frame ground-truth crop-box series (Tier 2, REPORTED
|
|
43
|
-
* only). Scaffolded now so the harness emits a number the moment labels exist;
|
|
44
|
-
* NOT a CI gate (no hand-labeled fixtures yet — RESOLVED #3). Lengths must match.
|
|
45
|
-
*/
|
|
46
10
|
export declare function mIoU(ours: CropBox[], groundTruth: CropBox[]): {
|
|
47
11
|
mIoU: number;
|
|
48
12
|
iouAt50: number;
|
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Export settings types and constants shared between desktop and cloud render paths.
|
|
3
|
-
* Extracted from apps/studio/src/store/exportStore.ts — pure functions, no store deps.
|
|
4
|
-
*/
|
|
5
1
|
import type { CaptionStyle } from './types.js';
|
|
6
2
|
export type ExportQuality = 'maximum' | 'social' | 'web' | 'potato' | 'source';
|
|
7
3
|
export type ExportFormat = 'source' | '16:9' | '9:16' | '4:5' | '1:1';
|
|
@@ -28,13 +24,9 @@ export declare const RESOLUTION_PRESETS: Record<Exclude<ExportResolution, 'sourc
|
|
|
28
24
|
label: string;
|
|
29
25
|
height: number;
|
|
30
26
|
}>;
|
|
31
|
-
/** Convert a BPP value to an approximate CRF (H.264). */
|
|
32
27
|
export declare function bppToCrf(bpp: number): number;
|
|
33
|
-
|
|
34
|
-
export declare function
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
crf: number | undefined;
|
|
38
|
-
};
|
|
39
|
-
/** Ensure a dimension is even (required by most codecs). */
|
|
28
|
+
export declare function qualityToCrf(quality: ExportQuality): number | undefined;
|
|
29
|
+
export declare function resolutionToOutputSize(width: number, height: number, resolution: ExportResolution): {
|
|
30
|
+
outputWidth: number;
|
|
31
|
+
} | undefined;
|
|
40
32
|
export declare function ensureEven(n: number): number;
|
|
@@ -7,7 +7,7 @@ export { extractCaptionWordsFromDoc, sliceTranscriptWords, splitIntoSentences }
|
|
|
7
7
|
export { compositionToRenderInput, referencedMediaIds, componentRefsByClipId, assembleRenderInput, validateComposition, compositionFormatDimensions, playableSpans, } from './compositionRender.js';
|
|
8
8
|
export { bookendFrames, resolveBookendTimeline, CARD_BOOKEND_DEFAULT_MS, VIDEO_BOOKEND_DEFAULT_MS, } from './bookends.js';
|
|
9
9
|
export type { BookendTimeline } from './bookends.js';
|
|
10
|
-
export { DEFAULT_FPS, DEFAULT_WIDTH, DEFAULT_HEIGHT, DEFAULT_RENDER_SETTINGS, FORMAT_PRESETS, RESOLUTION_PRESETS, bppToCrf,
|
|
10
|
+
export { DEFAULT_FPS, DEFAULT_WIDTH, DEFAULT_HEIGHT, DEFAULT_RENDER_SETTINGS, FORMAT_PRESETS, RESOLUTION_PRESETS, bppToCrf, ensureEven, qualityToCrf, resolutionToOutputSize, } from './exportSettings.js';
|
|
11
11
|
export type { ExportFormat, ExportQuality, ExportResolution, FormatPreset, RenderSettings, } from './exportSettings.js';
|
|
12
12
|
export { faceArea, resolveSubjectFaces, selectedFaceCenter, isJump, emaSmooth, clip01, captionBandReserve, aspectWhRatio, nearestKpValue, activeWindowsFor, perSubjectSeries, calibrateShotScale, deriveSegment, deriveTrajectory, buildEasedZooms, buildPannedCenters, easeOutCubic, JUMP_THRESHOLD, MIN_SUBJECT_RESOLUTION, } from './deriveTrajectory.js';
|
|
13
13
|
export type { Subject, Center, TrajectorySubject, TrajectorySegment, TrajectoryData, Face, FaceBox, SubjectTrack, ReframeSegment, } from './deriveTrajectory.js';
|
|
@@ -1,39 +1,12 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Face→person identity mapping for the perception ESCALATION path.
|
|
3
|
-
*
|
|
4
|
-
* The plan authors subjects against the FACE roster (`face-N`, YuNet/SCRFD).
|
|
5
|
-
* When the face tracker carries that identity in too few frames
|
|
6
|
-
* (`subject_not_tracked` — e.g. the subject looks away for most of a long
|
|
7
|
-
* segment), the compose escalates to the PERSON detector (YOLO11x + BoT-SORT),
|
|
8
|
-
* whose track names identities `person-N`. This maps the authored face id onto
|
|
9
|
-
* the person id whose body boxes CONTAIN that face, scored over exactly the
|
|
10
|
-
* frames where the face DID resolve — the face evidence is sparse but real, and
|
|
11
|
-
* a face box sits inside its own person's box in every such frame.
|
|
12
|
-
*
|
|
13
|
-
* Pure math, no I/O. Tracks may have different frame counts (defensive):
|
|
14
|
-
* frames align by relative position in the shared detection window.
|
|
15
|
-
*/
|
|
16
1
|
type Box = [number, number, number, number];
|
|
17
2
|
interface TrackLike {
|
|
18
3
|
perFrameTracked: Array<Record<string, Box>>;
|
|
19
4
|
}
|
|
20
5
|
export interface FaceToPersonMapping {
|
|
21
6
|
personId: string;
|
|
22
|
-
/** Frames where the face resolved AND the winning person contained it. */
|
|
23
7
|
matchedFrames: number;
|
|
24
|
-
/** Frames where the face resolved at all (the scoring denominator). */
|
|
25
8
|
faceFrames: number;
|
|
26
|
-
/** Winner's total containment score / runner-up's (Infinity when unopposed). */
|
|
27
9
|
margin: number;
|
|
28
10
|
}
|
|
29
|
-
/**
|
|
30
|
-
* Map one authored face id to the person-track id that carries it, or null when
|
|
31
|
-
* the evidence is missing/ambiguous (caller fails loud — never a guess).
|
|
32
|
-
*
|
|
33
|
-
* Decision rule: sum per-frame containment per person id over the frames where
|
|
34
|
-
* the face resolves; the winner needs (a) support in ≥30% of those frames at
|
|
35
|
-
* ≥60% containment, and (b) a 1.5× margin over the runner-up (two people
|
|
36
|
-
* side-by-side must not coin-flip).
|
|
37
|
-
*/
|
|
38
11
|
export declare function mapFaceIdToPersonId(faceTrack: TrackLike, personTrack: TrackLike, faceId: string): FaceToPersonMapping | null;
|
|
39
12
|
export {};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { Scene, GlobalEffects, EffectTarget } from '../../composition/ops/index.js';
|
|
2
2
|
import type { ResolvedBrandKit } from '../../composition/projection/index.js';
|
|
3
3
|
import type { Reframe } from '../../composition/reframe/index.js';
|
|
4
|
+
import type { TrajectoryData } from '../../composition/reframe/trajectory.js';
|
|
4
5
|
import type { CaptionWord as WireCaptionWord, CaptionStyle as WireCaptionStyle } from '../../composition/validators/index.js';
|
|
5
6
|
export type OverlayTemplate = 'custom' | 'gif' | 'image' | 'lottie' | (string & {});
|
|
6
7
|
export interface OverlayParams {
|
|
@@ -21,47 +22,21 @@ export interface OverlayParams {
|
|
|
21
22
|
xPercent?: number;
|
|
22
23
|
yPercent?: number;
|
|
23
24
|
fontSize?: number;
|
|
24
|
-
/** heroText (depth grammar §3.4): font size as % of composition height (default 14). */
|
|
25
25
|
fontSizePct?: number;
|
|
26
|
-
/** heroText: per-word reveal offsets in ms relative to the overlay's start. */
|
|
27
26
|
revealAtMs?: number[];
|
|
28
|
-
/** heroText: display weight override (default 800). */
|
|
29
27
|
fontWeight?: number;
|
|
30
|
-
/**
|
|
31
|
-
* Behind-subject overlays only: `false` opts out of the atmospheric depth
|
|
32
|
-
* treatment (brightness/saturation/blur — `BEHIND_ATMOSPHERE`) the behind
|
|
33
|
-
* host applies by default. Ignored on front overlays.
|
|
34
|
-
*/
|
|
35
28
|
atmosphere?: boolean;
|
|
36
|
-
/** card overlay: the authored HTML/CSS fragment, rendered VERBATIM via
|
|
37
|
-
* dangerouslySetInnerHTML inside the region box (OverlayContent case 'card'). */
|
|
38
29
|
html?: string;
|
|
39
|
-
/** card overlay: brand-token map (literal | `$brand:` ref per value),
|
|
40
|
-
* resolved at render into `--cf-<key>` CSS custom properties on the wrapper box. */
|
|
41
30
|
cssTokens?: Record<string, string>;
|
|
42
31
|
}
|
|
43
32
|
export interface CompositionClip {
|
|
44
33
|
id: string;
|
|
45
34
|
src: string;
|
|
46
|
-
/** Proxy URL for preview playback (lighter H.264 transcode) */
|
|
47
35
|
previewSrc?: string;
|
|
48
36
|
sourceInFrames: number;
|
|
49
37
|
sourceOutFrames: number;
|
|
50
38
|
timelineStartFrames: number;
|
|
51
39
|
durationInFrames: number;
|
|
52
|
-
/** The clip's `trim.start` in output-fps frames. With `excludedRanges` the
|
|
53
|
-
* clip plays multiple playable spans whose `sourceInFrames` are source-
|
|
54
|
-
* absolute; the crop trajectory is clip-relative (frame 0 = trim.start), so
|
|
55
|
-
* the renderer needs this to map output frames → trajectory frames across the
|
|
56
|
-
* trimmed gaps. Absent ⇒ 0 (clip starts at its source origin).
|
|
57
|
-
*
|
|
58
|
-
* NOT guaranteed non-negative: it is a PURE OFFSET, not a validated
|
|
59
|
-
* trim.start echo. When a sandbox harness physically trims the source file
|
|
60
|
-
* (materializeSources' shallow-seek), sourceInFrames/sourceOutFrames/
|
|
61
|
-
* trimStartFrames are all rebased by the same shift into segment-file
|
|
62
|
-
* coordinates — only their differences are meaningful, and trimStartFrames
|
|
63
|
-
* can legitimately go negative. Consumers must never validate or seek on
|
|
64
|
-
* its absolute value. */
|
|
65
40
|
trimStartFrames?: number;
|
|
66
41
|
playbackRate?: number;
|
|
67
42
|
volume?: number;
|
|
@@ -69,93 +44,28 @@ export interface CompositionClip {
|
|
|
69
44
|
opacity?: number;
|
|
70
45
|
scale?: number;
|
|
71
46
|
rotation?: number;
|
|
72
|
-
/**
|
|
73
|
-
* TIME-VARYING channels, keyed by param path, times CLIP-RELATIVE in seconds.
|
|
74
|
-
* When a param appears here it overrides its scalar sibling above for the
|
|
75
|
-
* clip's duration; the scalar remains what a non-animating consumer reads.
|
|
76
|
-
* Interpolation is `valueAt` from `@cueframe/composition/timeline` — one
|
|
77
|
-
* implementation, because the editor, this renderer and the evaluator must
|
|
78
|
-
* agree or the motion the judge grades is not the motion that ships.
|
|
79
|
-
*/
|
|
80
47
|
animate?: Record<string, Array<{
|
|
81
48
|
time: number;
|
|
82
49
|
value: number;
|
|
83
50
|
easing?: unknown;
|
|
84
51
|
}>>;
|
|
85
|
-
/**
|
|
86
|
-
* Output-space placement rect (fractions of the output frame, 0..1).
|
|
87
|
-
* Default (absent) = full frame {x:0,y:0,w:1,h:1}. A sub-frame region makes
|
|
88
|
-
* the clip occupy only that rect of the output — the foundation for
|
|
89
|
-
* picture-in-picture / split-screen / inset cards, where lower tracks show
|
|
90
|
-
* through the uncovered area. The clip's source is fit into the region per
|
|
91
|
-
* `fit`. Mirrors `Region` on the wire (composition.ts).
|
|
92
|
-
*
|
|
93
|
-
* NOTE: the per-frame crop pipeline (CropFromTrajectory) renders against the
|
|
94
|
-
* FULL output frame; composing a sub-frame region with a non-identity crop
|
|
95
|
-
* requires the crop to target the region's aspect. The renderer applies the
|
|
96
|
-
* placement; full region×crop compose is wired incrementally.
|
|
97
|
-
*/
|
|
98
52
|
region?: {
|
|
99
53
|
x: number;
|
|
100
54
|
y: number;
|
|
101
55
|
w: number;
|
|
102
56
|
h: number;
|
|
103
57
|
};
|
|
104
|
-
/** How the source fills `region`: 'cover' (fill+crop, default) or 'contain' (letterbox). */
|
|
105
58
|
fit?: 'cover' | 'contain';
|
|
106
59
|
mediaType?: 'video' | 'audio' | 'image';
|
|
107
|
-
/**
|
|
108
|
-
* Ken-Burns motion preset for still-image clips (mediaType === 'image').
|
|
109
|
-
* A convenience the renderer's <StillCrop> lowers to a `reframe`
|
|
110
|
-
* (kenBurnsToReframe) and runs through the unified per-frame crop renderer.
|
|
111
|
-
* Default 'in' (gentle zoom-in). Ignored for video / audio clips.
|
|
112
|
-
*/
|
|
113
60
|
kenBurns?: 'in' | 'out' | 'pan-l' | 'pan-r' | 'none';
|
|
114
|
-
/**
|
|
115
|
-
* Authored camera channel for a still (mediaType === 'image'). When present,
|
|
116
|
-
* <StillCrop> derives the still trajectory from THIS (arbitrary per-frame
|
|
117
|
-
* point-zoom + center) instead of lowering `kenBurns` — so an image can zoom
|
|
118
|
-
* into a specific point (a UI element), not just the centered kenBurns
|
|
119
|
-
* presets. `kenBurns` is the fallback when no reframe was authored.
|
|
120
|
-
*/
|
|
121
61
|
reframe?: Reframe;
|
|
122
|
-
/**
|
|
123
|
-
* Loop the underlying media until the clip's duration runs out. Used by
|
|
124
|
-
* gif enrichment clips (whose source mp4 may be shorter than the moment)
|
|
125
|
-
* and audio ambient beds. Ignored on `mediaType === 'image'`.
|
|
126
|
-
*/
|
|
127
62
|
loop?: boolean;
|
|
128
63
|
transitionIn?: 'fade' | 'dissolve' | 'wipe' | 'none';
|
|
129
64
|
transitionDurationFrames?: number;
|
|
130
|
-
/** Original clip ID — set on sub-clips produced by splitting around deleted ranges. */
|
|
131
65
|
parentId?: string;
|
|
132
|
-
/**
|
|
133
|
-
* Pre-resolved crop-trajectory JSON URL for render-time per-frame
|
|
134
|
-
* cropping. When set, the renderer reads the trajectory's per-segment
|
|
135
|
-
* per-frame normalized centers and applies a CSS transform on the
|
|
136
|
-
* raw source video to produce the cropped output.
|
|
137
|
-
*
|
|
138
|
-
* 2026-05-28 substrate revision: replaces the prior baked-mp4
|
|
139
|
-
* substitution + variantMaskUrl combo. Bake produces only this JSON
|
|
140
|
-
* now; render-side does the pixel pushing. See
|
|
141
|
-
* packages/execution/core/src/render/deriveTrajectory.ts for the producer
|
|
142
|
-
* (TS-side, derived inline at render) and CropFromTrajectory.tsx for the
|
|
143
|
-
* consumer.
|
|
144
|
-
*/
|
|
145
66
|
cropTrajectoryUrl?: string;
|
|
146
|
-
|
|
147
|
-
* Frame-packed CO-VIEW source for the captions-behind-speaker effect: ONE
|
|
148
|
-
* opaque H.264 (BiRefNet-portrait) with the scene (top half) and the matte
|
|
149
|
-
* (bottom half) stacked, baked frame-aligned per source window. When set,
|
|
150
|
-
* the clip renders via PackedSubjectComposite — a SINGLE decode yields both
|
|
151
|
-
* halves of the identical instant, so the matte cannot drift from the scene
|
|
152
|
-
* at any composition fps (the frame-lock fix). Crop-independent: one co-view
|
|
153
|
-
* per source window, reused across aspect/crop variants. Resolved at the
|
|
154
|
-
* caller layer (Temporal activity) from mediaItems.mattes[matteHash] and
|
|
155
|
-
* served same-origin so @remotion/media decodes it.
|
|
156
|
-
*/
|
|
67
|
+
cropTrajectory?: TrajectoryData;
|
|
157
68
|
packedUrl?: string;
|
|
158
|
-
/** Debug: tint the subject cut-out green to verify coverage. */
|
|
159
69
|
coViewDebug?: boolean;
|
|
160
70
|
}
|
|
161
71
|
export interface CompositionOverlay {
|
|
@@ -165,51 +75,22 @@ export interface CompositionOverlay {
|
|
|
165
75
|
startFrame: number;
|
|
166
76
|
durationInFrames: number;
|
|
167
77
|
params: OverlayParams;
|
|
168
|
-
/** 'behind-subject' renders under the subject cut-out (matte occludes it). Default front. */
|
|
169
78
|
zPlane?: 'front' | 'behind-subject';
|
|
170
|
-
/** Scene-space anchor for world-locking behind overlays through the crop trajectory. */
|
|
171
79
|
anchor?: {
|
|
172
80
|
space: 'scene';
|
|
173
81
|
x: number;
|
|
174
82
|
y: number;
|
|
175
83
|
};
|
|
176
|
-
/** Camera-motion differential for behind overlays: 0 = locked to scene; small ± = depth parallax. Range [-0.3, 0.3]. */
|
|
177
84
|
parallax?: number;
|
|
178
|
-
/** Output-space placement rect (fractions of the output frame, 0..1). Default
|
|
179
|
-
* (absent) = full frame. A sub-frame region makes the overlay primitive (card,
|
|
180
|
-
* text, image/gif/lottie) occupy only that rect — the universal placement
|
|
181
|
-
* layer (PiP / inset card / split-screen). Mirrors CompositionClip.region; the
|
|
182
|
-
* renderer wraps the overlay in the same RegionBox, and size-from-output
|
|
183
|
-
* primitives read the box dims via useEffectiveOutput. */
|
|
184
85
|
region?: {
|
|
185
86
|
x: number;
|
|
186
87
|
y: number;
|
|
187
88
|
w: number;
|
|
188
89
|
h: number;
|
|
189
90
|
};
|
|
190
|
-
/** How the overlay fills `region`: 'cover' (fill+crop, default) or 'contain' (letterbox). */
|
|
191
91
|
fit?: 'cover' | 'contain';
|
|
192
|
-
/**
|
|
193
|
-
* Entrance transition for the overlay — mirrors CompositionClip.transitionIn.
|
|
194
|
-
* When set, the overlay host (OverlayLayer / BehindOverlayHost) wraps the
|
|
195
|
-
* mounted content in a frame-pure entrance envelope (opacity fade; slide/scale
|
|
196
|
-
* for the motion variants) over `transitionDurationFrames` from the overlay's
|
|
197
|
-
* start. Absent = no envelope (byte-identical to prior behavior). Projected via
|
|
198
|
-
* the same `mapTransitionType` mapping the video lane uses, so the realized
|
|
199
|
-
* enum is fade/dissolve/wipe/none (dissolve+wipe degrade to an opacity fade for
|
|
200
|
-
* a single positioned box). Was silently dropped before: only the video lane
|
|
201
|
-
* projected `transitionIn`, so an authored overlay transition rendered as a
|
|
202
|
-
* dead hard cut.
|
|
203
|
-
*/
|
|
204
92
|
transitionIn?: 'fade' | 'dissolve' | 'wipe' | 'none';
|
|
205
93
|
transitionDurationFrames?: number;
|
|
206
|
-
/** Clip-level transform channel (wire `TimelineClip.position/opacity/scale/
|
|
207
|
-
* rotation` — "the animation channel"; `region` stays the placement
|
|
208
|
-
* primitive). `position` is the overlay's CENTER in output-space fractions
|
|
209
|
-
* [0,1] of its containing box (the region box, or the full frame). These
|
|
210
|
-
* were silently DROPPED by the projection until 2026-07-20 (spec §2.1.1) —
|
|
211
|
-
* an agent could PUT a position, read it back, and watch the render ignore
|
|
212
|
-
* it. Absent = the primitive's own layout (no wrapper transform). */
|
|
213
94
|
position?: {
|
|
214
95
|
x: number;
|
|
215
96
|
y: number;
|
|
@@ -217,24 +98,15 @@ export interface CompositionOverlay {
|
|
|
217
98
|
opacity?: number;
|
|
218
99
|
scale?: number;
|
|
219
100
|
rotation?: number;
|
|
101
|
+
animate?: CompositionClip['animate'];
|
|
220
102
|
}
|
|
221
103
|
export type CaptionWord = WireCaptionWord;
|
|
222
104
|
export type CaptionStyle = WireCaptionStyle & Required<Pick<WireCaptionStyle, 'fontFamily' | 'fontSize' | 'fontWeight' | 'color' | 'highlightColor' | 'backgroundColor' | 'position' | 'textTransform'>>;
|
|
223
|
-
/**
|
|
224
|
-
* Frame-based effect instance the renderer consumes. Mirrors
|
|
225
|
-
* `EffectInstance` from composition/types but with seconds normalized to
|
|
226
|
-
* frames so the render path is fps-agnostic.
|
|
227
|
-
*/
|
|
228
105
|
export interface CompositionEffect {
|
|
229
106
|
id: string;
|
|
230
107
|
primitiveId: string;
|
|
231
108
|
params: Record<string, unknown>;
|
|
232
109
|
target: EffectTarget;
|
|
233
|
-
/**
|
|
234
|
-
* For clip targets, frames RELATIVE to the clip's timeline start.
|
|
235
|
-
* For global targets, ABSOLUTE timeline frames.
|
|
236
|
-
* Undefined = render across the target's whole span.
|
|
237
|
-
*/
|
|
238
110
|
startFrame?: number;
|
|
239
111
|
durationInFrames?: number;
|
|
240
112
|
}
|
|
@@ -249,14 +121,6 @@ export interface CompositionAudioTrack {
|
|
|
249
121
|
fadeInFrames?: number;
|
|
250
122
|
fadeOutFrames?: number;
|
|
251
123
|
loop?: boolean;
|
|
252
|
-
/**
|
|
253
|
-
* Speech-aware duck envelope (music / vo tracks only; SFX is never ducked).
|
|
254
|
-
* Frame ranges are SEQUENCE-RELATIVE (0 = the track's `startFrame`) to match
|
|
255
|
-
* the fade domain `buildVolumeFunction` operates in. Resolved by the
|
|
256
|
-
* `compositionToRenderInput` post-projection pass from the composition's own
|
|
257
|
-
* caption words (or explicit `duck.windows`); absent ⇒ no ducking.
|
|
258
|
-
* `duckVolume` is the linear gain held during speech (10^(duckDb/20)).
|
|
259
|
-
*/
|
|
260
124
|
duckWindows?: Array<{
|
|
261
125
|
startFrame: number;
|
|
262
126
|
endFrame: number;
|
|
@@ -271,19 +135,12 @@ export interface RenderInput {
|
|
|
271
135
|
audioTracks?: CompositionAudioTrack[];
|
|
272
136
|
effects?: CompositionEffect[];
|
|
273
137
|
captionSegments?: CaptionWord[][];
|
|
138
|
+
captionsBehind?: boolean;
|
|
274
139
|
captionStyle?: Partial<CaptionStyle>;
|
|
275
140
|
width: number;
|
|
276
141
|
height: number;
|
|
277
142
|
fps: number;
|
|
278
143
|
durationInFrames: number;
|
|
279
|
-
/**
|
|
280
|
-
* Target platform frozen from the suggestion (`composition.format.platform`:
|
|
281
|
-
* tiktok/ig/youtube/…). Output-determining: the composition floor's safe-zone
|
|
282
|
-
* placement clears that surface's UI chrome from the caption band. Absent ⇒ the
|
|
283
|
-
* floor falls to its conservative 'unknown' (broadcast) safe-zone profile. Read
|
|
284
|
-
* straight from the wire `Format.platform`; the renderer threads it to every
|
|
285
|
-
* CropFromTrajectory so buildFloorInput sees the real destination.
|
|
286
|
-
*/
|
|
287
144
|
platform?: string;
|
|
288
145
|
outputWidth?: number;
|
|
289
146
|
outputHeight?: number;
|
|
@@ -291,14 +148,5 @@ export interface RenderInput {
|
|
|
291
148
|
watermark?: boolean;
|
|
292
149
|
scenes?: Scene[];
|
|
293
150
|
sceneGlobal?: GlobalEffects;
|
|
294
|
-
/**
|
|
295
|
-
* Active brand kit for render-time token resolution. This is the
|
|
296
|
-
* fully-materialized `ResolvedBrandKit` the render snapshot freezes
|
|
297
|
-
* (the render intake → resolveBrandKit), NOT the sparse
|
|
298
|
-
* 5-colour `@cueframe/core` BrandKit — it carries the Tier-2 colour core,
|
|
299
|
-
* `caption.{fg,scrim}`, and `fonts.{heading,body,caption}`. Overlay params may
|
|
300
|
-
* contain `"$brand:<path>"` refs that resolve against it. Optional — absent
|
|
301
|
-
* brand kit makes a `$brand:` ref fall to its contrast-safe / fallback default.
|
|
302
|
-
*/
|
|
303
151
|
brandKit?: ResolvedBrandKit;
|
|
304
152
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const BAKE_VERSION = "subjtrack-persistent-deadzone-fitzoom-v8-2026.06.21";
|
|
@@ -1,51 +1,7 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* vcam/cameraPath.ts — the SINGLE virtual-camera stability stage (Phase 3).
|
|
3
|
-
*
|
|
4
|
-
* Replaces both `emaSmooth` (for the centers) and the render-side
|
|
5
|
-
* `smoothTrajectory` Gaussian with ONE pass per shot. Per the spec
|
|
6
|
-
* (2026-06-21-virtual-camera-reframe-design.md, "Virtual-camera stability — one
|
|
7
|
-
* stage, no LP"):
|
|
8
|
-
*
|
|
9
|
-
* 1. Deadzone INCLUSION gate (output-crop-normalized): the camera HOLDS while
|
|
10
|
-
* the padded RequiredRegion stays inside a safe region of the current crop
|
|
11
|
-
* window; it moves ONLY when the region would exit. This is the inclusion
|
|
12
|
-
* INVARIANT — the crop always contains the RequiredRegion ⇒ the subject
|
|
13
|
-
* never walks out of frame. This is what turns Phase 2's "static hold" into
|
|
14
|
-
* "hold, then glide to re-contain" — a moving subject is TRACKED.
|
|
15
|
-
* 2. One Hamming-window weighted mean over each shot run's gated centers
|
|
16
|
-
* (acausal, single pass, no lag). Forward-fill at the start; the window
|
|
17
|
-
* AUTO-SHRINKS near a shot boundary so it never blends across a cut.
|
|
18
|
-
* 3. Null/occluded regions are forward-filled (the last in-shot region) before
|
|
19
|
-
* the gate, minus the deleted jump heuristic — gaps longer than the window
|
|
20
|
-
* hold; re-emergence outside the pad glides over the window.
|
|
21
|
-
*
|
|
22
|
-
* No second smoothing: render samples this base path verbatim. The only reset is
|
|
23
|
-
* a detector `shotBoundary` — a center jump is NEVER inferred as a cut (the
|
|
24
|
-
* deleted `isJump`/`JUMP_THRESHOLD` false-cut teleport).
|
|
25
|
-
*
|
|
26
|
-
* Coordinate systems: RequiredRegions + centers are SOURCE-NORMALIZED. The
|
|
27
|
-
* deadzone is OUTPUT-CROP-NORMALIZED (a fraction of the crop window), so the
|
|
28
|
-
* held feel is zoom-invariant — it is converted to source units here using the
|
|
29
|
-
* crop-window size. Pure, deterministic, no I/O.
|
|
30
|
-
*/
|
|
31
1
|
import type { RequiredRegion } from './requiredRegion.js';
|
|
32
2
|
import type { Center } from './subjectSet.js';
|
|
33
|
-
/** The crop window the camera commands, source-normalized (the largest output-
|
|
34
|
-
* aspect rect that fits the source, scaled by the clamped zoom). */
|
|
35
3
|
export interface CropWindow {
|
|
36
|
-
/** Window width as a fraction of source width ∈ (0,1]. */
|
|
37
4
|
w: number;
|
|
38
|
-
/** Window height as a fraction of source height ∈ (0,1]. */
|
|
39
5
|
h: number;
|
|
40
6
|
}
|
|
41
|
-
/**
|
|
42
|
-
* The single stability stage: per-frame RequiredRegions → smoothed, inclusion-
|
|
43
|
-
* satisfying per-frame crop centers (source-normalized). `cropFor(frame)` gives
|
|
44
|
-
* the crop window for that frame (it can vary per frame when zoom is eased).
|
|
45
|
-
*
|
|
46
|
-
* `interiorCuts` are segment-local frame indices where a new shot begins (the
|
|
47
|
-
* SAME set the derive already computes). Each shot is gated + smoothed
|
|
48
|
-
* independently (deadzone, window clamp, forward-fill all reset at the cut).
|
|
49
|
-
* Frames whose shot never resolved a region hold `centerHold` (source center).
|
|
50
|
-
*/
|
|
51
7
|
export declare function cameraPath(regions: Array<RequiredRegion | null>, cropFor: (frame: number) => CropWindow, fps: number, interiorCuts: Iterable<number>, centerHold?: Center): Center[];
|