videoclaw 3.0.0-alpha.7 → 3.0.0-alpha.9
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/CLAUDE.md +49 -11
- package/README.md +23 -5
- package/assets/review-station/index.html +11 -1
- package/dist/cli/args.js +7 -7
- package/dist/cli/args.js.map +1 -1
- package/dist/cli/handlers/analysis.d.ts +24 -0
- package/dist/cli/handlers/analysis.d.ts.map +1 -1
- package/dist/cli/handlers/analysis.js +174 -0
- package/dist/cli/handlers/analysis.js.map +1 -1
- package/dist/cli/handlers/batch.d.ts.map +1 -1
- package/dist/cli/handlers/batch.js +65 -197
- package/dist/cli/handlers/batch.js.map +1 -1
- package/dist/cli/handlers/candidates.d.ts.map +1 -1
- package/dist/cli/handlers/candidates.js +178 -58
- package/dist/cli/handlers/candidates.js.map +1 -1
- package/dist/cli/handlers/character.d.ts.map +1 -1
- package/dist/cli/handlers/character.js +11 -7
- package/dist/cli/handlers/character.js.map +1 -1
- package/dist/cli/handlers/cinema-archive.d.ts +3 -0
- package/dist/cli/handlers/cinema-archive.d.ts.map +1 -0
- package/dist/cli/handlers/cinema-archive.js +32 -0
- package/dist/cli/handlers/cinema-archive.js.map +1 -0
- package/dist/cli/handlers/cinema-candidate.d.ts +4 -0
- package/dist/cli/handlers/cinema-candidate.d.ts.map +1 -0
- package/dist/cli/handlers/cinema-candidate.js +119 -0
- package/dist/cli/handlers/cinema-candidate.js.map +1 -0
- package/dist/cli/handlers/cinema-delivery.d.ts +2 -0
- package/dist/cli/handlers/cinema-delivery.d.ts.map +1 -0
- package/dist/cli/handlers/cinema-delivery.js +13 -0
- package/dist/cli/handlers/cinema-delivery.js.map +1 -0
- package/dist/cli/handlers/cinema-execution.d.ts +5 -0
- package/dist/cli/handlers/cinema-execution.d.ts.map +1 -0
- package/dist/cli/handlers/cinema-execution.js +510 -0
- package/dist/cli/handlers/cinema-execution.js.map +1 -0
- package/dist/cli/handlers/cinema-history.d.ts +2 -0
- package/dist/cli/handlers/cinema-history.d.ts.map +1 -0
- package/dist/cli/handlers/cinema-history.js +55 -0
- package/dist/cli/handlers/cinema-history.js.map +1 -0
- package/dist/cli/handlers/cinema-migration.d.ts +2 -0
- package/dist/cli/handlers/cinema-migration.d.ts.map +1 -0
- package/dist/cli/handlers/cinema-migration.js +88 -0
- package/dist/cli/handlers/cinema-migration.js.map +1 -0
- package/dist/cli/handlers/cinema.d.ts +11 -0
- package/dist/cli/handlers/cinema.d.ts.map +1 -0
- package/dist/cli/handlers/cinema.js +685 -0
- package/dist/cli/handlers/cinema.js.map +1 -0
- package/dist/cli/handlers/create.d.ts.map +1 -1
- package/dist/cli/handlers/create.js +7 -6
- package/dist/cli/handlers/create.js.map +1 -1
- package/dist/cli/handlers/creator-demo.d.ts +2 -0
- package/dist/cli/handlers/creator-demo.d.ts.map +1 -0
- package/dist/cli/handlers/creator-demo.js +34 -0
- package/dist/cli/handlers/creator-demo.js.map +1 -0
- package/dist/cli/handlers/creator-ui.d.ts +2 -0
- package/dist/cli/handlers/creator-ui.d.ts.map +1 -0
- package/dist/cli/handlers/creator-ui.js +20 -0
- package/dist/cli/handlers/creator-ui.js.map +1 -0
- package/dist/cli/handlers/execution.d.ts +1 -4
- package/dist/cli/handlers/execution.d.ts.map +1 -1
- package/dist/cli/handlers/execution.js +171 -106
- package/dist/cli/handlers/execution.js.map +1 -1
- package/dist/cli/handlers/lane.d.ts +2 -0
- package/dist/cli/handlers/lane.d.ts.map +1 -0
- package/dist/cli/handlers/lane.js +160 -0
- package/dist/cli/handlers/lane.js.map +1 -0
- package/dist/cli/handlers/library.js +2 -2
- package/dist/cli/handlers/library.js.map +1 -1
- package/dist/cli/handlers/media-ops.d.ts.map +1 -1
- package/dist/cli/handlers/media-ops.js +29 -1
- package/dist/cli/handlers/media-ops.js.map +1 -1
- package/dist/cli/handlers/media-production.d.ts.map +1 -1
- package/dist/cli/handlers/media-production.js +101 -0
- package/dist/cli/handlers/media-production.js.map +1 -1
- package/dist/cli/handlers/mograph.d.ts +5 -0
- package/dist/cli/handlers/mograph.d.ts.map +1 -0
- package/dist/cli/handlers/mograph.js +397 -0
- package/dist/cli/handlers/mograph.js.map +1 -0
- package/dist/cli/handlers/multi-shot.d.ts.map +1 -1
- package/dist/cli/handlers/multi-shot.js +140 -19
- package/dist/cli/handlers/multi-shot.js.map +1 -1
- package/dist/cli/handlers/prompt-craft.d.ts.map +1 -1
- package/dist/cli/handlers/prompt-craft.js +84 -24
- package/dist/cli/handlers/prompt-craft.js.map +1 -1
- package/dist/cli/handlers/provider-registration.d.ts.map +1 -1
- package/dist/cli/handlers/provider-registration.js +13 -12
- package/dist/cli/handlers/provider-registration.js.map +1 -1
- package/dist/cli/handlers/publish-platform.d.ts +3 -0
- package/dist/cli/handlers/publish-platform.d.ts.map +1 -0
- package/dist/cli/handlers/publish-platform.js +142 -0
- package/dist/cli/handlers/publish-platform.js.map +1 -0
- package/dist/cli/handlers/reference-sheets.d.ts.map +1 -1
- package/dist/cli/handlers/reference-sheets.js +10 -10
- package/dist/cli/handlers/reference-sheets.js.map +1 -1
- package/dist/cli/handlers/review-portal.d.ts.map +1 -1
- package/dist/cli/handlers/review-portal.js +3 -1
- package/dist/cli/handlers/review-portal.js.map +1 -1
- package/dist/cli/handlers/stages.d.ts.map +1 -1
- package/dist/cli/handlers/stages.js +56 -0
- package/dist/cli/handlers/stages.js.map +1 -1
- package/dist/cli/handlers/stock.d.ts +3 -0
- package/dist/cli/handlers/stock.d.ts.map +1 -0
- package/dist/cli/handlers/stock.js +133 -0
- package/dist/cli/handlers/stock.js.map +1 -0
- package/dist/cli/handlers/studio.d.ts.map +1 -1
- package/dist/cli/handlers/studio.js +23 -0
- package/dist/cli/handlers/studio.js.map +1 -1
- package/dist/cli/json-input.d.ts +3 -0
- package/dist/cli/json-input.d.ts.map +1 -0
- package/dist/cli/json-input.js +22 -0
- package/dist/cli/json-input.js.map +1 -0
- package/dist/cli/provider-adapter.js +41 -12
- package/dist/cli/provider-adapter.js.map +1 -1
- package/dist/cli/vclaw.d.ts.map +1 -1
- package/dist/cli/vclaw.js +89 -7
- package/dist/cli/vclaw.js.map +1 -1
- package/dist/index.d.ts +74 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +42 -0
- package/dist/index.js.map +1 -1
- package/dist/video/artifact-validation.d.ts.map +1 -1
- package/dist/video/artifact-validation.js +13 -0
- package/dist/video/artifact-validation.js.map +1 -1
- package/dist/video/artifacts.d.ts +31 -1
- package/dist/video/artifacts.d.ts.map +1 -1
- package/dist/video/artifacts.js.map +1 -1
- package/dist/video/assemble/assemble.d.ts.map +1 -1
- package/dist/video/assemble/assemble.js +170 -26
- package/dist/video/assemble/assemble.js.map +1 -1
- package/dist/video/assemble/ffmpeg.d.ts +24 -0
- package/dist/video/assemble/ffmpeg.d.ts.map +1 -1
- package/dist/video/assemble/ffmpeg.js +93 -0
- package/dist/video/assemble/ffmpeg.js.map +1 -1
- package/dist/video/assemble/media-qc.d.ts +77 -2
- package/dist/video/assemble/media-qc.d.ts.map +1 -1
- package/dist/video/assemble/media-qc.js +177 -4
- package/dist/video/assemble/media-qc.js.map +1 -1
- package/dist/video/assemble/pdf.d.ts.map +1 -1
- package/dist/video/assemble/pdf.js +0 -1
- package/dist/video/assemble/pdf.js.map +1 -1
- package/dist/video/assemble/stitch.d.ts +102 -0
- package/dist/video/assemble/stitch.d.ts.map +1 -1
- package/dist/video/assemble/stitch.js +208 -21
- package/dist/video/assemble/stitch.js.map +1 -1
- package/dist/video/assemble/title-card.js.map +1 -1
- package/dist/video/assemble/types.d.ts +59 -0
- package/dist/video/assemble/types.d.ts.map +1 -1
- package/dist/video/atomic-write.d.ts.map +1 -1
- package/dist/video/atomic-write.js +9 -3
- package/dist/video/atomic-write.js.map +1 -1
- package/dist/video/audio-platform/measure.d.ts +11 -0
- package/dist/video/audio-platform/measure.d.ts.map +1 -0
- package/dist/video/audio-platform/measure.js +57 -0
- package/dist/video/audio-platform/measure.js.map +1 -0
- package/dist/video/blueprint-prompt.d.ts +1 -1
- package/dist/video/blueprint-prompt.js +1 -1
- package/dist/video/brand-prompt.d.ts +1 -1
- package/dist/video/brand-prompt.js +1 -1
- package/dist/video/category-registry.d.ts.map +1 -1
- package/dist/video/category-registry.js +10 -1
- package/dist/video/category-registry.js.map +1 -1
- package/dist/video/character-auto-create.d.ts +51 -0
- package/dist/video/character-auto-create.d.ts.map +1 -1
- package/dist/video/character-auto-create.js +75 -33
- package/dist/video/character-auto-create.js.map +1 -1
- package/dist/video/cinema-archive.d.ts +89 -0
- package/dist/video/cinema-archive.d.ts.map +1 -0
- package/dist/video/cinema-archive.js +288 -0
- package/dist/video/cinema-archive.js.map +1 -0
- package/dist/video/cinema-asset-lifecycle.d.ts +30 -0
- package/dist/video/cinema-asset-lifecycle.d.ts.map +1 -0
- package/dist/video/cinema-asset-lifecycle.js +32 -0
- package/dist/video/cinema-asset-lifecycle.js.map +1 -0
- package/dist/video/cinema-asset-registry.d.ts +48 -0
- package/dist/video/cinema-asset-registry.d.ts.map +1 -0
- package/dist/video/cinema-asset-registry.js +54 -0
- package/dist/video/cinema-asset-registry.js.map +1 -0
- package/dist/video/cinema-assurance.d.ts +104 -0
- package/dist/video/cinema-assurance.d.ts.map +1 -0
- package/dist/video/cinema-assurance.js +171 -0
- package/dist/video/cinema-assurance.js.map +1 -0
- package/dist/video/cinema-candidate-bridge.d.ts +49 -0
- package/dist/video/cinema-candidate-bridge.d.ts.map +1 -0
- package/dist/video/cinema-candidate-bridge.js +196 -0
- package/dist/video/cinema-candidate-bridge.js.map +1 -0
- package/dist/video/cinema-candidate-review.d.ts +77 -0
- package/dist/video/cinema-candidate-review.d.ts.map +1 -0
- package/dist/video/cinema-candidate-review.js +252 -0
- package/dist/video/cinema-candidate-review.js.map +1 -0
- package/dist/video/cinema-chain-fallback.d.ts +33 -0
- package/dist/video/cinema-chain-fallback.d.ts.map +1 -0
- package/dist/video/cinema-chain-fallback.js +182 -0
- package/dist/video/cinema-chain-fallback.js.map +1 -0
- package/dist/video/cinema-compatibility-local-worker.d.ts +22 -0
- package/dist/video/cinema-compatibility-local-worker.d.ts.map +1 -0
- package/dist/video/cinema-compatibility-local-worker.js +180 -0
- package/dist/video/cinema-compatibility-local-worker.js.map +1 -0
- package/dist/video/cinema-compatibility-quote.d.ts +80 -0
- package/dist/video/cinema-compatibility-quote.d.ts.map +1 -0
- package/dist/video/cinema-compatibility-quote.js +292 -0
- package/dist/video/cinema-compatibility-quote.js.map +1 -0
- package/dist/video/cinema-compatibility-worker.d.ts +62 -0
- package/dist/video/cinema-compatibility-worker.d.ts.map +1 -0
- package/dist/video/cinema-compatibility-worker.js +483 -0
- package/dist/video/cinema-compatibility-worker.js.map +1 -0
- package/dist/video/cinema-console-generate.d.ts +8 -0
- package/dist/video/cinema-console-generate.d.ts.map +1 -0
- package/dist/video/cinema-console-generate.js +17 -0
- package/dist/video/cinema-console-generate.js.map +1 -0
- package/dist/video/cinema-console-projection.d.ts +25 -0
- package/dist/video/cinema-console-projection.d.ts.map +1 -0
- package/dist/video/cinema-console-projection.js +213 -0
- package/dist/video/cinema-console-projection.js.map +1 -0
- package/dist/video/cinema-console-render.d.ts +3 -0
- package/dist/video/cinema-console-render.d.ts.map +1 -0
- package/dist/video/cinema-console-render.js +126 -0
- package/dist/video/cinema-console-render.js.map +1 -0
- package/dist/video/cinema-console-types.d.ts +220 -0
- package/dist/video/cinema-console-types.d.ts.map +1 -0
- package/dist/video/cinema-console-types.js +2 -0
- package/dist/video/cinema-console-types.js.map +1 -0
- package/dist/video/cinema-continuity-types.d.ts +119 -0
- package/dist/video/cinema-continuity-types.d.ts.map +1 -0
- package/dist/video/cinema-continuity-types.js +2 -0
- package/dist/video/cinema-continuity-types.js.map +1 -0
- package/dist/video/cinema-continuity.d.ts +11 -0
- package/dist/video/cinema-continuity.d.ts.map +1 -0
- package/dist/video/cinema-continuity.js +240 -0
- package/dist/video/cinema-continuity.js.map +1 -0
- package/dist/video/cinema-delivery.d.ts +70 -0
- package/dist/video/cinema-delivery.d.ts.map +1 -0
- package/dist/video/cinema-delivery.js +300 -0
- package/dist/video/cinema-delivery.js.map +1 -0
- package/dist/video/cinema-direct-ai-film-migration.d.ts +93 -0
- package/dist/video/cinema-direct-ai-film-migration.d.ts.map +1 -0
- package/dist/video/cinema-direct-ai-film-migration.js +583 -0
- package/dist/video/cinema-direct-ai-film-migration.js.map +1 -0
- package/dist/video/cinema-evidence-store.d.ts +10 -0
- package/dist/video/cinema-evidence-store.d.ts.map +1 -0
- package/dist/video/cinema-evidence-store.js +65 -0
- package/dist/video/cinema-evidence-store.js.map +1 -0
- package/dist/video/cinema-evidence-types.d.ts +65 -0
- package/dist/video/cinema-evidence-types.d.ts.map +1 -0
- package/dist/video/cinema-evidence-types.js +2 -0
- package/dist/video/cinema-evidence-types.js.map +1 -0
- package/dist/video/cinema-evidence.d.ts +18 -0
- package/dist/video/cinema-evidence.d.ts.map +1 -0
- package/dist/video/cinema-evidence.js +172 -0
- package/dist/video/cinema-evidence.js.map +1 -0
- package/dist/video/cinema-file-lock.d.ts +2 -0
- package/dist/video/cinema-file-lock.d.ts.map +1 -0
- package/dist/video/cinema-file-lock.js +55 -0
- package/dist/video/cinema-file-lock.js.map +1 -0
- package/dist/video/cinema-garment-mask.d.ts +19 -0
- package/dist/video/cinema-garment-mask.d.ts.map +1 -0
- package/dist/video/cinema-garment-mask.js +46 -0
- package/dist/video/cinema-garment-mask.js.map +1 -0
- package/dist/video/cinema-higgsfield-cli-adapter.d.ts +91 -0
- package/dist/video/cinema-higgsfield-cli-adapter.d.ts.map +1 -0
- package/dist/video/cinema-higgsfield-cli-adapter.js +308 -0
- package/dist/video/cinema-higgsfield-cli-adapter.js.map +1 -0
- package/dist/video/cinema-higgsfield-cli-runner.d.ts +3 -0
- package/dist/video/cinema-higgsfield-cli-runner.d.ts.map +1 -0
- package/dist/video/cinema-higgsfield-cli-runner.js +17 -0
- package/dist/video/cinema-higgsfield-cli-runner.js.map +1 -0
- package/dist/video/cinema-historical-import.d.ts +129 -0
- package/dist/video/cinema-historical-import.d.ts.map +1 -0
- package/dist/video/cinema-historical-import.js +362 -0
- package/dist/video/cinema-historical-import.js.map +1 -0
- package/dist/video/cinema-live-console.d.ts +23 -0
- package/dist/video/cinema-live-console.d.ts.map +1 -0
- package/dist/video/cinema-live-console.js +157 -0
- package/dist/video/cinema-live-console.js.map +1 -0
- package/dist/video/cinema-planning-store.d.ts +12 -0
- package/dist/video/cinema-planning-store.d.ts.map +1 -0
- package/dist/video/cinema-planning-store.js +142 -0
- package/dist/video/cinema-planning-store.js.map +1 -0
- package/dist/video/cinema-preflight-store.d.ts +4 -0
- package/dist/video/cinema-preflight-store.d.ts.map +1 -0
- package/dist/video/cinema-preflight-store.js +26 -0
- package/dist/video/cinema-preflight-store.js.map +1 -0
- package/dist/video/cinema-preflight.d.ts +36 -0
- package/dist/video/cinema-preflight.d.ts.map +1 -0
- package/dist/video/cinema-preflight.js +65 -0
- package/dist/video/cinema-preflight.js.map +1 -0
- package/dist/video/cinema-production-contract-compiler.d.ts +6 -0
- package/dist/video/cinema-production-contract-compiler.d.ts.map +1 -0
- package/dist/video/cinema-production-contract-compiler.js +124 -0
- package/dist/video/cinema-production-contract-compiler.js.map +1 -0
- package/dist/video/cinema-production-contract-store.d.ts +12 -0
- package/dist/video/cinema-production-contract-store.d.ts.map +1 -0
- package/dist/video/cinema-production-contract-store.js +73 -0
- package/dist/video/cinema-production-contract-store.js.map +1 -0
- package/dist/video/cinema-production-queue.d.ts +169 -0
- package/dist/video/cinema-production-queue.d.ts.map +1 -0
- package/dist/video/cinema-production-queue.js +664 -0
- package/dist/video/cinema-production-queue.js.map +1 -0
- package/dist/video/cinema-profile.d.ts +5 -0
- package/dist/video/cinema-profile.d.ts.map +1 -1
- package/dist/video/cinema-profile.js +4 -0
- package/dist/video/cinema-profile.js.map +1 -1
- package/dist/video/cinema-project-compiler.d.ts +27 -0
- package/dist/video/cinema-project-compiler.d.ts.map +1 -0
- package/dist/video/cinema-project-compiler.js +147 -0
- package/dist/video/cinema-project-compiler.js.map +1 -0
- package/dist/video/cinema-project-console-load.d.ts +4 -0
- package/dist/video/cinema-project-console-load.d.ts.map +1 -0
- package/dist/video/cinema-project-console-load.js +72 -0
- package/dist/video/cinema-project-console-load.js.map +1 -0
- package/dist/video/cinema-project-console.d.ts +30 -0
- package/dist/video/cinema-project-console.d.ts.map +1 -0
- package/dist/video/cinema-project-console.js +198 -0
- package/dist/video/cinema-project-console.js.map +1 -0
- package/dist/video/cinema-project-planner.d.ts +52 -0
- package/dist/video/cinema-project-planner.d.ts.map +1 -0
- package/dist/video/cinema-project-planner.js +199 -0
- package/dist/video/cinema-project-planner.js.map +1 -0
- package/dist/video/cinema-provider-contracts.d.ts +15 -0
- package/dist/video/cinema-provider-contracts.d.ts.map +1 -0
- package/dist/video/cinema-provider-contracts.js +215 -0
- package/dist/video/cinema-provider-contracts.js.map +1 -0
- package/dist/video/cinema-provider-projection.d.ts +57 -0
- package/dist/video/cinema-provider-projection.d.ts.map +1 -0
- package/dist/video/cinema-provider-projection.js +136 -0
- package/dist/video/cinema-provider-projection.js.map +1 -0
- package/dist/video/cinema-provider-store.d.ts +35 -0
- package/dist/video/cinema-provider-store.d.ts.map +1 -0
- package/dist/video/cinema-provider-store.js +144 -0
- package/dist/video/cinema-provider-store.js.map +1 -0
- package/dist/video/cinema-provider-types.d.ts +106 -0
- package/dist/video/cinema-provider-types.d.ts.map +1 -0
- package/dist/video/cinema-provider-types.js +2 -0
- package/dist/video/cinema-provider-types.js.map +1 -0
- package/dist/video/cinema-queue-compatibility.d.ts +68 -0
- package/dist/video/cinema-queue-compatibility.d.ts.map +1 -0
- package/dist/video/cinema-queue-compatibility.js +162 -0
- package/dist/video/cinema-queue-compatibility.js.map +1 -0
- package/dist/video/cinema-queue-types.d.ts +80 -0
- package/dist/video/cinema-queue-types.d.ts.map +1 -0
- package/dist/video/cinema-queue-types.js +2 -0
- package/dist/video/cinema-queue-types.js.map +1 -0
- package/dist/video/cinema-queue-validation.d.ts +10 -0
- package/dist/video/cinema-queue-validation.d.ts.map +1 -0
- package/dist/video/cinema-queue-validation.js +181 -0
- package/dist/video/cinema-queue-validation.js.map +1 -0
- package/dist/video/cinema-reference-projection.d.ts +43 -0
- package/dist/video/cinema-reference-projection.d.ts.map +1 -0
- package/dist/video/cinema-reference-projection.js +61 -0
- package/dist/video/cinema-reference-projection.js.map +1 -0
- package/dist/video/cinema-retry-policy.d.ts +15 -0
- package/dist/video/cinema-retry-policy.d.ts.map +1 -0
- package/dist/video/cinema-retry-policy.js +21 -0
- package/dist/video/cinema-retry-policy.js.map +1 -0
- package/dist/video/cinema-review-service.d.ts +9 -0
- package/dist/video/cinema-review-service.d.ts.map +1 -0
- package/dist/video/cinema-review-service.js +51 -0
- package/dist/video/cinema-review-service.js.map +1 -0
- package/dist/video/cinema-review-store.d.ts +10 -0
- package/dist/video/cinema-review-store.d.ts.map +1 -0
- package/dist/video/cinema-review-store.js +65 -0
- package/dist/video/cinema-review-store.js.map +1 -0
- package/dist/video/cinema-review-types.d.ts +61 -0
- package/dist/video/cinema-review-types.d.ts.map +1 -0
- package/dist/video/cinema-review-types.js +2 -0
- package/dist/video/cinema-review-types.js.map +1 -0
- package/dist/video/cinema-review-validation.d.ts +5 -0
- package/dist/video/cinema-review-validation.d.ts.map +1 -0
- package/dist/video/cinema-review-validation.js +71 -0
- package/dist/video/cinema-review-validation.js.map +1 -0
- package/dist/video/cinema-scope-report.d.ts +56 -0
- package/dist/video/cinema-scope-report.d.ts.map +1 -0
- package/dist/video/cinema-scope-report.js +70 -0
- package/dist/video/cinema-scope-report.js.map +1 -0
- package/dist/video/cinema-shot-compiler.d.ts +11 -0
- package/dist/video/cinema-shot-compiler.d.ts.map +1 -0
- package/dist/video/cinema-shot-compiler.js +104 -0
- package/dist/video/cinema-shot-compiler.js.map +1 -0
- package/dist/video/cinema-store.d.ts +22 -0
- package/dist/video/cinema-store.d.ts.map +1 -0
- package/dist/video/cinema-store.js +165 -0
- package/dist/video/cinema-store.js.map +1 -0
- package/dist/video/cinema-story-compiler.d.ts +3 -0
- package/dist/video/cinema-story-compiler.d.ts.map +1 -0
- package/dist/video/cinema-story-compiler.js +95 -0
- package/dist/video/cinema-story-compiler.js.map +1 -0
- package/dist/video/cinema-story-types.d.ts +117 -0
- package/dist/video/cinema-story-types.d.ts.map +1 -0
- package/dist/video/cinema-story-types.js +2 -0
- package/dist/video/cinema-story-types.js.map +1 -0
- package/dist/video/cinema-story-validation.d.ts +3 -0
- package/dist/video/cinema-story-validation.d.ts.map +1 -0
- package/dist/video/cinema-story-validation.js +80 -0
- package/dist/video/cinema-story-validation.js.map +1 -0
- package/dist/video/cinema-types.d.ts +241 -0
- package/dist/video/cinema-types.d.ts.map +1 -0
- package/dist/video/cinema-types.js +2 -0
- package/dist/video/cinema-types.js.map +1 -0
- package/dist/video/cinema-validation.d.ts +7 -0
- package/dist/video/cinema-validation.d.ts.map +1 -0
- package/dist/video/cinema-validation.js +408 -0
- package/dist/video/cinema-validation.js.map +1 -0
- package/dist/video/cinema-walking-skeleton-queue.d.ts +4 -0
- package/dist/video/cinema-walking-skeleton-queue.d.ts.map +1 -0
- package/dist/video/cinema-walking-skeleton-queue.js +68 -0
- package/dist/video/cinema-walking-skeleton-queue.js.map +1 -0
- package/dist/video/cinematography.d.ts +126 -0
- package/dist/video/cinematography.d.ts.map +1 -1
- package/dist/video/cinematography.js +207 -3
- package/dist/video/cinematography.js.map +1 -1
- package/dist/video/cli-schema.d.ts.map +1 -1
- package/dist/video/cli-schema.js +330 -23
- package/dist/video/cli-schema.js.map +1 -1
- package/dist/video/clip-qc.d.ts +166 -0
- package/dist/video/clip-qc.d.ts.map +1 -0
- package/dist/video/clip-qc.js +218 -0
- package/dist/video/clip-qc.js.map +1 -0
- package/dist/video/creator-demo.d.ts +45 -0
- package/dist/video/creator-demo.d.ts.map +1 -0
- package/dist/video/creator-demo.js +192 -0
- package/dist/video/creator-demo.js.map +1 -0
- package/dist/video/creator-ui/capabilities.d.ts +35 -0
- package/dist/video/creator-ui/capabilities.d.ts.map +1 -0
- package/dist/video/creator-ui/capabilities.js +135 -0
- package/dist/video/creator-ui/capabilities.js.map +1 -0
- package/dist/video/creator-ui/execution.d.ts +24 -0
- package/dist/video/creator-ui/execution.d.ts.map +1 -0
- package/dist/video/creator-ui/execution.js +98 -0
- package/dist/video/creator-ui/execution.js.map +1 -0
- package/dist/video/creator-ui/index.d.ts +4 -0
- package/dist/video/creator-ui/index.d.ts.map +1 -0
- package/dist/video/creator-ui/index.js +4 -0
- package/dist/video/creator-ui/index.js.map +1 -0
- package/dist/video/creator-ui/read-model.d.ts +12 -0
- package/dist/video/creator-ui/read-model.d.ts.map +1 -0
- package/dist/video/creator-ui/read-model.js +24 -0
- package/dist/video/creator-ui/read-model.js.map +1 -0
- package/dist/video/creator-ui/server.d.ts +42 -0
- package/dist/video/creator-ui/server.d.ts.map +1 -0
- package/dist/video/creator-ui/server.js +877 -0
- package/dist/video/creator-ui/server.js.map +1 -0
- package/dist/video/dialogue.d.ts.map +1 -1
- package/dist/video/dialogue.js +7 -1
- package/dist/video/dialogue.js.map +1 -1
- package/dist/video/environment-auto-create.d.ts +2 -0
- package/dist/video/environment-auto-create.d.ts.map +1 -1
- package/dist/video/environment-auto-create.js +15 -4
- package/dist/video/environment-auto-create.js.map +1 -1
- package/dist/video/errors.d.ts +1 -1
- package/dist/video/errors.d.ts.map +1 -1
- package/dist/video/errors.js +40 -0
- package/dist/video/errors.js.map +1 -1
- package/dist/video/execute-autochain.d.ts +1 -49
- package/dist/video/execute-autochain.d.ts.map +1 -1
- package/dist/video/execute-autochain.js +1 -167
- package/dist/video/execute-autochain.js.map +1 -1
- package/dist/video/execute-pool.d.ts +1 -1
- package/dist/video/execute-pool.js +1 -1
- package/dist/video/execute-render-scenes.d.ts +1 -1
- package/dist/video/execute-render-scenes.js +1 -1
- package/dist/video/execute.d.ts.map +1 -1
- package/dist/video/execute.js +87 -1
- package/dist/video/execute.js.map +1 -1
- package/dist/video/execution-adapter.d.ts +45 -0
- package/dist/video/execution-adapter.d.ts.map +1 -0
- package/dist/video/execution-adapter.js +188 -0
- package/dist/video/execution-adapter.js.map +1 -0
- package/dist/video/execution-character-locks.d.ts +24 -0
- package/dist/video/execution-character-locks.d.ts.map +1 -0
- package/dist/video/execution-character-locks.js +54 -0
- package/dist/video/execution-character-locks.js.map +1 -0
- package/dist/video/execution-plan.d.ts +9 -0
- package/dist/video/execution-plan.d.ts.map +1 -1
- package/dist/video/execution-plan.js +7 -3
- package/dist/video/execution-plan.js.map +1 -1
- package/dist/video/execution-profile.d.ts +1 -0
- package/dist/video/execution-profile.d.ts.map +1 -1
- package/dist/video/execution-profile.js +38 -10
- package/dist/video/execution-profile.js.map +1 -1
- package/dist/video/execution-runtime.d.ts +3 -48
- package/dist/video/execution-runtime.d.ts.map +1 -1
- package/dist/video/execution-runtime.js +118 -280
- package/dist/video/execution-runtime.js.map +1 -1
- package/dist/video/execution-status.d.ts +35 -0
- package/dist/video/execution-status.d.ts.map +1 -1
- package/dist/video/execution-status.js +120 -16
- package/dist/video/execution-status.js.map +1 -1
- package/dist/video/filmmaking-prompts.d.ts +68 -2
- package/dist/video/filmmaking-prompts.d.ts.map +1 -1
- package/dist/video/filmmaking-prompts.js +175 -85
- package/dist/video/filmmaking-prompts.js.map +1 -1
- package/dist/video/final-media.d.ts +3 -0
- package/dist/video/final-media.d.ts.map +1 -1
- package/dist/video/final-media.js +54 -7
- package/dist/video/final-media.js.map +1 -1
- package/dist/video/flow-media-url.d.ts +143 -0
- package/dist/video/flow-media-url.d.ts.map +1 -0
- package/dist/video/flow-media-url.js +195 -0
- package/dist/video/flow-media-url.js.map +1 -0
- package/dist/video/gemini-analyze.js +1 -1
- package/dist/video/gemini-analyze.js.map +1 -1
- package/dist/video/gen-image-flow.d.ts.map +1 -1
- package/dist/video/gen-image-flow.js +20 -8
- package/dist/video/gen-image-flow.js.map +1 -1
- package/dist/video/image-ops.d.ts.map +1 -1
- package/dist/video/image-ops.js +4 -3
- package/dist/video/image-ops.js.map +1 -1
- package/dist/video/keyframe-qc.d.ts +142 -0
- package/dist/video/keyframe-qc.d.ts.map +1 -0
- package/dist/video/keyframe-qc.js +472 -0
- package/dist/video/keyframe-qc.js.map +1 -0
- package/dist/video/lane-coordinator.d.ts +73 -0
- package/dist/video/lane-coordinator.d.ts.map +1 -0
- package/dist/video/lane-coordinator.js +266 -0
- package/dist/video/lane-coordinator.js.map +1 -0
- package/dist/video/lane-queue.d.ts +94 -0
- package/dist/video/lane-queue.d.ts.map +1 -0
- package/dist/video/lane-queue.js +386 -0
- package/dist/video/lane-queue.js.map +1 -0
- package/dist/video/lip-sync.d.ts +140 -0
- package/dist/video/lip-sync.d.ts.map +1 -0
- package/dist/video/lip-sync.js +245 -0
- package/dist/video/lip-sync.js.map +1 -0
- package/dist/video/lipsync-closure.d.ts +93 -0
- package/dist/video/lipsync-closure.d.ts.map +1 -0
- package/dist/video/lipsync-closure.js +199 -0
- package/dist/video/lipsync-closure.js.map +1 -0
- package/dist/video/magnific/models.d.ts +9 -9
- package/dist/video/magnific/models.d.ts.map +1 -1
- package/dist/video/magnific/models.js +11 -10
- package/dist/video/magnific/models.js.map +1 -1
- package/dist/video/magnific/types.d.ts +7 -1
- package/dist/video/magnific/types.d.ts.map +1 -1
- package/dist/video/mograph/beats.d.ts +46 -0
- package/dist/video/mograph/beats.d.ts.map +1 -0
- package/dist/video/mograph/beats.js +159 -0
- package/dist/video/mograph/beats.js.map +1 -0
- package/dist/video/mograph/execute.d.ts +81 -0
- package/dist/video/mograph/execute.d.ts.map +1 -0
- package/dist/video/mograph/execute.js +53 -0
- package/dist/video/mograph/execute.js.map +1 -0
- package/dist/video/mograph/logos.d.ts +41 -0
- package/dist/video/mograph/logos.d.ts.map +1 -0
- package/dist/video/mograph/logos.js +65 -0
- package/dist/video/mograph/logos.js.map +1 -0
- package/dist/video/mograph/pack.d.ts +67 -0
- package/dist/video/mograph/pack.d.ts.map +1 -0
- package/dist/video/mograph/pack.js +406 -0
- package/dist/video/mograph/pack.js.map +1 -0
- package/dist/video/mograph/plan.d.ts +77 -0
- package/dist/video/mograph/plan.d.ts.map +1 -0
- package/dist/video/mograph/plan.js +146 -0
- package/dist/video/mograph/plan.js.map +1 -0
- package/dist/video/mograph/sheet.d.ts +46 -0
- package/dist/video/mograph/sheet.d.ts.map +1 -0
- package/dist/video/mograph/sheet.js +194 -0
- package/dist/video/mograph/sheet.js.map +1 -0
- package/dist/video/mograph/style-families.d.ts +43 -0
- package/dist/video/mograph/style-families.d.ts.map +1 -0
- package/dist/video/mograph/style-families.js +154 -0
- package/dist/video/mograph/style-families.js.map +1 -0
- package/dist/video/mograph/types.d.ts +135 -0
- package/dist/video/mograph/types.d.ts.map +1 -0
- package/dist/video/mograph/types.js +10 -0
- package/dist/video/mograph/types.js.map +1 -0
- package/dist/video/motion-overlay/v2v-transport.d.ts +5 -0
- package/dist/video/motion-overlay/v2v-transport.d.ts.map +1 -1
- package/dist/video/motion-overlay/v2v-transport.js +36 -5
- package/dist/video/motion-overlay/v2v-transport.js.map +1 -1
- package/dist/video/multi-shot-prompt.d.ts +52 -1
- package/dist/video/multi-shot-prompt.d.ts.map +1 -1
- package/dist/video/multi-shot-prompt.js +140 -17
- package/dist/video/multi-shot-prompt.js.map +1 -1
- package/dist/video/music-video.d.ts +63 -0
- package/dist/video/music-video.d.ts.map +1 -1
- package/dist/video/music-video.js +47 -1
- package/dist/video/music-video.js.map +1 -1
- package/dist/video/narrate.d.ts.map +1 -1
- package/dist/video/narrate.js +11 -3
- package/dist/video/narrate.js.map +1 -1
- package/dist/video/native-dreamina.d.ts +10 -0
- package/dist/video/native-dreamina.d.ts.map +1 -1
- package/dist/video/native-dreamina.js +93 -29
- package/dist/video/native-dreamina.js.map +1 -1
- package/dist/video/native-flow-r2v.d.ts +16 -0
- package/dist/video/native-flow-r2v.d.ts.map +1 -1
- package/dist/video/native-flow-r2v.js +54 -8
- package/dist/video/native-flow-r2v.js.map +1 -1
- package/dist/video/native-magnific.d.ts.map +1 -1
- package/dist/video/native-magnific.js +15 -5
- package/dist/video/native-magnific.js.map +1 -1
- package/dist/video/native-runway.d.ts.map +1 -1
- package/dist/video/native-runway.js +57 -13
- package/dist/video/native-runway.js.map +1 -1
- package/dist/video/native-veo.d.ts.map +1 -1
- package/dist/video/native-veo.js +23 -3
- package/dist/video/native-veo.js.map +1 -1
- package/dist/video/optical-register.d.ts +27 -0
- package/dist/video/optical-register.d.ts.map +1 -0
- package/dist/video/optical-register.js +66 -0
- package/dist/video/optical-register.js.map +1 -0
- package/dist/video/post-production.d.ts +25 -2
- package/dist/video/post-production.d.ts.map +1 -1
- package/dist/video/post-production.js +112 -45
- package/dist/video/post-production.js.map +1 -1
- package/dist/video/preview-portal/discovery.d.ts.map +1 -1
- package/dist/video/preview-portal/discovery.js +8 -1
- package/dist/video/preview-portal/discovery.js.map +1 -1
- package/dist/video/preview-portal/render.js +2 -2
- package/dist/video/preview-portal/render.js.map +1 -1
- package/dist/video/preview-portal/shared-assets.d.ts +1 -1
- package/dist/video/preview-portal/shared-assets.d.ts.map +1 -1
- package/dist/video/preview-portal/shared-assets.js +1 -1
- package/dist/video/preview-portal/types.d.ts +7 -1
- package/dist/video/preview-portal/types.d.ts.map +1 -1
- package/dist/video/prompt-lint.d.ts +30 -4
- package/dist/video/prompt-lint.d.ts.map +1 -1
- package/dist/video/prompt-lint.js +240 -6
- package/dist/video/prompt-lint.js.map +1 -1
- package/dist/video/prompt-quality.d.ts +20 -1
- package/dist/video/prompt-quality.d.ts.map +1 -1
- package/dist/video/prompt-quality.js +51 -5
- package/dist/video/prompt-quality.js.map +1 -1
- package/dist/video/prompt-rules.d.ts +10 -0
- package/dist/video/prompt-rules.d.ts.map +1 -1
- package/dist/video/prompt-rules.js +21 -0
- package/dist/video/prompt-rules.js.map +1 -1
- package/dist/video/provider-adapter-runner.d.ts.map +1 -1
- package/dist/video/provider-adapter-runner.js +10 -0
- package/dist/video/provider-adapter-runner.js.map +1 -1
- package/dist/video/provider-platform/registry.d.ts.map +1 -1
- package/dist/video/provider-platform/registry.js +5 -9
- package/dist/video/provider-platform/registry.js.map +1 -1
- package/dist/video/provider-platform/route-capabilities.d.ts +12 -0
- package/dist/video/provider-platform/route-capabilities.d.ts.map +1 -1
- package/dist/video/provider-platform/route-capabilities.js +32 -10
- package/dist/video/provider-platform/route-capabilities.js.map +1 -1
- package/dist/video/provider-status.d.ts.map +1 -1
- package/dist/video/provider-status.js +14 -2
- package/dist/video/provider-status.js.map +1 -1
- package/dist/video/providers/dreamina-useapi.d.ts +18 -1
- package/dist/video/providers/dreamina-useapi.d.ts.map +1 -1
- package/dist/video/providers/dreamina-useapi.js +10 -0
- package/dist/video/providers/dreamina-useapi.js.map +1 -1
- package/dist/video/providers/google-flow.d.ts +15 -0
- package/dist/video/providers/google-flow.d.ts.map +1 -1
- package/dist/video/providers/google-flow.js +18 -2
- package/dist/video/providers/google-flow.js.map +1 -1
- package/dist/video/providers/runway-useapi.d.ts +5 -4
- package/dist/video/providers/runway-useapi.d.ts.map +1 -1
- package/dist/video/providers/runway-useapi.js.map +1 -1
- package/dist/video/providers/xskill.d.ts +6 -3
- package/dist/video/providers/xskill.d.ts.map +1 -1
- package/dist/video/providers/xskill.js +7 -4
- package/dist/video/providers/xskill.js.map +1 -1
- package/dist/video/publish-platform/package.d.ts +29 -0
- package/dist/video/publish-platform/package.d.ts.map +1 -0
- package/dist/video/publish-platform/package.js +270 -0
- package/dist/video/publish-platform/package.js.map +1 -0
- package/dist/video/publish-platform/profiles.d.ts +5 -0
- package/dist/video/publish-platform/profiles.d.ts.map +1 -0
- package/dist/video/publish-platform/profiles.js +171 -0
- package/dist/video/publish-platform/profiles.js.map +1 -0
- package/dist/video/publish-platform/types.d.ts +120 -0
- package/dist/video/publish-platform/types.d.ts.map +1 -0
- package/dist/video/publish-platform/types.js +2 -0
- package/dist/video/publish-platform/types.js.map +1 -0
- package/dist/video/publish-platform/validate.d.ts +9 -0
- package/dist/video/publish-platform/validate.d.ts.map +1 -0
- package/dist/video/publish-platform/validate.js +177 -0
- package/dist/video/publish-platform/validate.js.map +1 -0
- package/dist/video/readiness.d.ts +14 -1
- package/dist/video/readiness.d.ts.map +1 -1
- package/dist/video/readiness.js +14 -2
- package/dist/video/readiness.js.map +1 -1
- package/dist/video/reframe/captions.d.ts +20 -0
- package/dist/video/reframe/captions.d.ts.map +1 -0
- package/dist/video/reframe/captions.js +131 -0
- package/dist/video/reframe/captions.js.map +1 -0
- package/dist/video/reframe/index.d.ts +37 -0
- package/dist/video/reframe/index.d.ts.map +1 -0
- package/dist/video/reframe/index.js +68 -0
- package/dist/video/reframe/index.js.map +1 -0
- package/dist/video/reframe/plan.d.ts +4 -0
- package/dist/video/reframe/plan.d.ts.map +1 -0
- package/dist/video/reframe/plan.js +211 -0
- package/dist/video/reframe/plan.js.map +1 -0
- package/dist/video/reframe/qc.d.ts +17 -0
- package/dist/video/reframe/qc.d.ts.map +1 -0
- package/dist/video/reframe/qc.js +95 -0
- package/dist/video/reframe/qc.js.map +1 -0
- package/dist/video/reframe/render.d.ts +17 -0
- package/dist/video/reframe/render.d.ts.map +1 -0
- package/dist/video/reframe/render.js +103 -0
- package/dist/video/reframe/render.js.map +1 -0
- package/dist/video/reframe/suggest.d.ts +17 -0
- package/dist/video/reframe/suggest.d.ts.map +1 -0
- package/dist/video/reframe/suggest.js +76 -0
- package/dist/video/reframe/suggest.js.map +1 -0
- package/dist/video/reframe/template.d.ts +16 -0
- package/dist/video/reframe/template.d.ts.map +1 -0
- package/dist/video/reframe/template.js +45 -0
- package/dist/video/reframe/template.js.map +1 -0
- package/dist/video/reframe/types.d.ts +77 -0
- package/dist/video/reframe/types.d.ts.map +1 -0
- package/dist/video/reframe/types.js +2 -0
- package/dist/video/reframe/types.js.map +1 -0
- package/dist/video/review-ui-media-proxy.d.ts +15 -0
- package/dist/video/review-ui-media-proxy.d.ts.map +1 -0
- package/dist/video/review-ui-media-proxy.js +184 -0
- package/dist/video/review-ui-media-proxy.js.map +1 -0
- package/dist/video/review-ui-server.d.ts +40 -0
- package/dist/video/review-ui-server.d.ts.map +1 -0
- package/dist/video/review-ui-server.js +286 -0
- package/dist/video/review-ui-server.js.map +1 -0
- package/dist/video/review-ui.d.ts +9 -0
- package/dist/video/review-ui.d.ts.map +1 -1
- package/dist/video/review-ui.js +20 -262
- package/dist/video/review-ui.js.map +1 -1
- package/dist/video/scene-candidates.d.ts +12 -0
- package/dist/video/scene-candidates.d.ts.map +1 -1
- package/dist/video/scene-candidates.js +21 -0
- package/dist/video/scene-candidates.js.map +1 -1
- package/dist/video/scene-headcount.d.ts +52 -0
- package/dist/video/scene-headcount.d.ts.map +1 -0
- package/dist/video/scene-headcount.js +122 -0
- package/dist/video/scene-headcount.js.map +1 -0
- package/dist/video/scene-selection.d.ts +19 -0
- package/dist/video/scene-selection.d.ts.map +1 -1
- package/dist/video/scene-selection.js +38 -0
- package/dist/video/scene-selection.js.map +1 -1
- package/dist/video/seedance-blocks.d.ts +54 -1
- package/dist/video/seedance-blocks.d.ts.map +1 -1
- package/dist/video/seedance-blocks.js +99 -2
- package/dist/video/seedance-blocks.js.map +1 -1
- package/dist/video/seedance-content-filter.d.ts.map +1 -1
- package/dist/video/seedance-content-filter.js +84 -4
- package/dist/video/seedance-content-filter.js.map +1 -1
- package/dist/video/sfx.d.ts.map +1 -1
- package/dist/video/sfx.js +6 -1
- package/dist/video/sfx.js.map +1 -1
- package/dist/video/show-preflight.d.ts.map +1 -1
- package/dist/video/show-preflight.js +18 -1
- package/dist/video/show-preflight.js.map +1 -1
- package/dist/video/soundtrack.d.ts.map +1 -1
- package/dist/video/soundtrack.js +8 -1
- package/dist/video/soundtrack.js.map +1 -1
- package/dist/video/stage-guards.d.ts.map +1 -1
- package/dist/video/stage-guards.js +20 -0
- package/dist/video/stage-guards.js.map +1 -1
- package/dist/video/stock-platform/providers/pexels.d.ts +5 -0
- package/dist/video/stock-platform/providers/pexels.d.ts.map +1 -0
- package/dist/video/stock-platform/providers/pexels.js +218 -0
- package/dist/video/stock-platform/providers/pexels.js.map +1 -0
- package/dist/video/stock-platform/registry.d.ts +4 -0
- package/dist/video/stock-platform/registry.d.ts.map +1 -0
- package/dist/video/stock-platform/registry.js +17 -0
- package/dist/video/stock-platform/registry.js.map +1 -0
- package/dist/video/stock-platform/rights.d.ts +10 -0
- package/dist/video/stock-platform/rights.d.ts.map +1 -0
- package/dist/video/stock-platform/rights.js +133 -0
- package/dist/video/stock-platform/rights.js.map +1 -0
- package/dist/video/stock-platform/store.d.ts +22 -0
- package/dist/video/stock-platform/store.d.ts.map +1 -0
- package/dist/video/stock-platform/store.js +391 -0
- package/dist/video/stock-platform/store.js.map +1 -0
- package/dist/video/stock-platform/types.d.ts +106 -0
- package/dist/video/stock-platform/types.d.ts.map +1 -0
- package/dist/video/stock-platform/types.js +2 -0
- package/dist/video/stock-platform/types.js.map +1 -0
- package/dist/video/story-bible.d.ts +16 -0
- package/dist/video/story-bible.d.ts.map +1 -1
- package/dist/video/story-bible.js +4 -0
- package/dist/video/story-bible.js.map +1 -1
- package/dist/video/studio/execute.d.ts.map +1 -1
- package/dist/video/studio/execute.js +13 -1
- package/dist/video/studio/execute.js.map +1 -1
- package/dist/video/studio/planner.d.ts.map +1 -1
- package/dist/video/studio/planner.js +165 -2
- package/dist/video/studio/planner.js.map +1 -1
- package/dist/video/studio/recipes.d.ts.map +1 -1
- package/dist/video/studio/recipes.js +240 -3
- package/dist/video/studio/recipes.js.map +1 -1
- package/dist/video/studio/types.d.ts +66 -1
- package/dist/video/studio/types.d.ts.map +1 -1
- package/dist/video/style-register.d.ts +82 -0
- package/dist/video/style-register.d.ts.map +1 -0
- package/dist/video/style-register.js +509 -0
- package/dist/video/style-register.js.map +1 -0
- package/dist/video/types.d.ts +11 -1
- package/dist/video/types.d.ts.map +1 -1
- package/dist/video/verify-final.d.ts +4 -0
- package/dist/video/verify-final.d.ts.map +1 -1
- package/dist/video/verify-final.js +39 -9
- package/dist/video/verify-final.js.map +1 -1
- package/dist/video/vocal-map.d.ts +18 -0
- package/dist/video/vocal-map.d.ts.map +1 -1
- package/dist/video/vocal-map.js +22 -1
- package/dist/video/vocal-map.js.map +1 -1
- package/dist/video/vocal-sync-plan.d.ts.map +1 -1
- package/dist/video/vocal-sync-plan.js +20 -3
- package/dist/video/vocal-sync-plan.js.map +1 -1
- package/dist/video/workspace.d.ts +25 -0
- package/dist/video/workspace.d.ts.map +1 -1
- package/dist/video/workspace.js +24 -0
- package/dist/video/workspace.js.map +1 -1
- package/docs/ASSEMBLE.md +14 -0
- package/docs/BRAND_AGENCY.md +1 -1
- package/docs/CAPABILITIES.md +279 -0
- package/docs/CLI_REFERENCE.md +494 -83
- package/docs/CONCIERGE_PROMPT.md +12 -4
- package/docs/CREATOR_DEMO.md +31 -0
- package/docs/DIRECTOR_BLUEPRINT.md +1 -1
- package/docs/ENGINE_ESCAPE_AUDIT.md +7 -6
- package/docs/MOGRAPH.md +206 -0
- package/docs/OPERATIONS.md +43 -3
- package/docs/PRODUCTION_WORKFLOW.md +19 -0
- package/docs/PROMPT_QUALITY.md +8 -2
- package/docs/PROVIDER_PLATFORM.md +32 -1
- package/docs/RELEASE_READINESS.md +16 -0
- package/docs/SEEDANCE_HARVEST.md +2 -2
- package/docs/SHARED_QUEUE.md +231 -0
- package/docs/SKILLS.md +44 -6
- package/docs/STUDIO.md +15 -2
- package/docs/preview-portal-audit.md +1 -1
- package/package.json +24 -6
- package/references/video/multi-shot-framework.md +84 -3
- package/references/video/seedance-transport-payloads.md +93 -3
- package/schemas/video/artifacts/asset-manifest.schema.json +78 -2
- package/schemas/video/artifacts/cinema-asset-evidence.schema.json +22 -0
- package/schemas/video/artifacts/cinema-asset-registry.schema.json +58 -0
- package/schemas/video/artifacts/cinema-candidate-bridge-receipt.schema.json +55 -0
- package/schemas/video/artifacts/cinema-candidate-review.schema.json +55 -0
- package/schemas/video/artifacts/cinema-capability-snapshot.schema.json +45 -0
- package/schemas/video/artifacts/cinema-character-sheet.schema.json +105 -0
- package/schemas/video/artifacts/cinema-continuity-ledger.schema.json +47 -0
- package/schemas/video/artifacts/cinema-coverage.schema.json +19 -0
- package/schemas/video/artifacts/cinema-creative-contract.schema.json +41 -0
- package/schemas/video/artifacts/cinema-delivery-manifest.schema.json +68 -0
- package/schemas/video/artifacts/cinema-direct-ai-film-import-receipt.schema.json +40 -0
- package/schemas/video/artifacts/cinema-direct-ai-film-migration-report.schema.json +82 -0
- package/schemas/video/artifacts/cinema-evidence-ledger.schema.json +42 -0
- package/schemas/video/artifacts/cinema-generation-authorization.schema.json +33 -0
- package/schemas/video/artifacts/cinema-generation-ledger.schema.json +94 -0
- package/schemas/video/artifacts/cinema-generation-quote.schema.json +55 -0
- package/schemas/video/artifacts/cinema-geography-map.schema.json +20 -0
- package/schemas/video/artifacts/cinema-historical-import-receipt.schema.json +94 -0
- package/schemas/video/artifacts/cinema-historical-review.schema.json +68 -0
- package/schemas/video/artifacts/cinema-planning-receipt.schema.json +21 -0
- package/schemas/video/artifacts/cinema-preflight-report.schema.json +21 -0
- package/schemas/video/artifacts/cinema-production-queue.schema.json +132 -0
- package/schemas/video/artifacts/cinema-project-archive-manifest.schema.json +34 -0
- package/schemas/video/artifacts/cinema-project-archive-receipt.schema.json +27 -0
- package/schemas/video/artifacts/cinema-project-restore-receipt.schema.json +41 -0
- package/schemas/video/artifacts/cinema-provider-projection-bundle.schema.json +46 -0
- package/schemas/video/artifacts/cinema-queue-compatibility-receipt.schema.json +39 -0
- package/schemas/video/artifacts/cinema-reference-pack.schema.json +72 -0
- package/schemas/video/artifacts/cinema-rights-registry.schema.json +14 -0
- package/schemas/video/artifacts/cinema-scope-report.schema.json +55 -0
- package/schemas/video/artifacts/cinema-shot-manifest.schema.json +121 -0
- package/schemas/video/artifacts/cinema-story-bible.schema.json +74 -0
- package/schemas/video/artifacts/cinema-timed-audio-contract.schema.json +42 -0
- package/schemas/video/artifacts/cinema-visual-sound-bible.schema.json +25 -0
- package/schemas/video/artifacts/cinema-voice-registry.schema.json +14 -0
- package/schemas/video/artifacts/clip-qc.schema.json +73 -0
- package/schemas/video/artifacts/execution-report.schema.json +12 -1
- package/schemas/video/artifacts/keyframe-qc.schema.json +82 -0
- package/schemas/video/artifacts/motion-pack.schema.json +74 -0
- package/schemas/video/artifacts/motion-sheet.schema.json +99 -0
- package/schemas/video/artifacts/publish-metadata.schema.json +27 -0
- package/schemas/video/artifacts/publish-report.schema.json +32 -1
- package/schemas/video/artifacts/reframe-plan.schema.json +116 -0
- package/schemas/video/artifacts/reframe-qc.schema.json +47 -0
- package/schemas/video/artifacts/scene-candidates.schema.json +2 -0
- package/schemas/video/artifacts/shot-table.schema.json +313 -0
- package/schemas/video/artifacts/stock-import-receipt.schema.json +73 -0
- package/schemas/video/artifacts/storyboard.schema.json +4 -0
- package/schemas/video/errors.json +21 -1
- package/skills/3d-animation-short/SKILL.md +315 -0
- package/skills/README.md +24 -0
- package/skills/ai-filmmaking/SKILL.md +82 -5
- package/skills/brand-explainer/SKILL.md +130 -0
- package/skills/catalog.json +53 -10
- package/skills/concierge/SKILL.md +12 -4
- package/skills/garden-days/SKILL.md +258 -0
- package/skills/mograph/SKILL.md +200 -0
- package/skills/movie-director/SKILL.md +1 -1
- package/skills/multi-shot-prompt/SKILL.md +15 -5
- package/skills/rap-avatar-mv/SKILL.md +1869 -0
- package/skills/rhyme-factory/SKILL.md +157 -0
- package/skills/seedance-prompts/SKILL.md +105 -0
- package/skills/story-bible-builder/SKILL.md +120 -0
- package/skills/video-post/SKILL.md +32 -9
- package/skills/video-thumbnail-lab/SKILL.md +8 -19
- package/src/video/artifact-validation.ts +13 -0
- package/src/video/artifacts.ts +50 -0
- package/src/video/assemble/assemble.ts +205 -29
- package/src/video/assemble/ffmpeg.ts +110 -0
- package/src/video/assemble/media-qc.ts +227 -8
- package/src/video/assemble/pdf.ts +0 -1
- package/src/video/assemble/stitch.ts +281 -17
- package/src/video/assemble/title-card.ts +1 -1
- package/src/video/assemble/types.ts +59 -0
- package/src/video/atomic-write.ts +8 -3
- package/src/video/audio-platform/measure.ts +63 -0
- package/src/video/blueprint-prompt.ts +1 -1
- package/src/video/brand-prompt.ts +1 -1
- package/src/video/category-registry.ts +10 -1
- package/src/video/character-auto-create.ts +107 -52
- package/src/video/cinema-archive.ts +375 -0
- package/src/video/cinema-asset-lifecycle.ts +50 -0
- package/src/video/cinema-asset-registry.ts +90 -0
- package/src/video/cinema-assurance.ts +280 -0
- package/src/video/cinema-candidate-bridge.ts +265 -0
- package/src/video/cinema-candidate-review.ts +269 -0
- package/src/video/cinema-chain-fallback.ts +223 -0
- package/src/video/cinema-compatibility-local-worker.ts +200 -0
- package/src/video/cinema-compatibility-quote.ts +364 -0
- package/src/video/cinema-compatibility-worker.ts +560 -0
- package/src/video/cinema-console-generate.ts +26 -0
- package/src/video/cinema-console-projection.ts +229 -0
- package/src/video/cinema-console-render.ts +149 -0
- package/src/video/cinema-console-types.ts +222 -0
- package/src/video/cinema-continuity-types.ts +97 -0
- package/src/video/cinema-continuity.ts +207 -0
- package/src/video/cinema-delivery.ts +368 -0
- package/src/video/cinema-direct-ai-film-migration.ts +686 -0
- package/src/video/cinema-evidence-store.ts +72 -0
- package/src/video/cinema-evidence-types.ts +75 -0
- package/src/video/cinema-evidence.ts +173 -0
- package/src/video/cinema-file-lock.ts +49 -0
- package/src/video/cinema-garment-mask.ts +51 -0
- package/src/video/cinema-higgsfield-cli-adapter.ts +390 -0
- package/src/video/cinema-higgsfield-cli-runner.ts +18 -0
- package/src/video/cinema-historical-import.ts +481 -0
- package/src/video/cinema-live-console.ts +176 -0
- package/src/video/cinema-planning-store.ts +163 -0
- package/src/video/cinema-preflight-store.ts +25 -0
- package/src/video/cinema-preflight.ts +88 -0
- package/src/video/cinema-production-contract-compiler.ts +149 -0
- package/src/video/cinema-production-contract-store.ts +92 -0
- package/src/video/cinema-production-queue.ts +880 -0
- package/src/video/cinema-profile.ts +7 -0
- package/src/video/cinema-project-compiler.ts +161 -0
- package/src/video/cinema-project-console-load.ts +74 -0
- package/src/video/cinema-project-console.ts +232 -0
- package/src/video/cinema-project-planner.ts +264 -0
- package/src/video/cinema-provider-contracts.ts +254 -0
- package/src/video/cinema-provider-projection.ts +200 -0
- package/src/video/cinema-provider-store.ts +207 -0
- package/src/video/cinema-provider-types.ts +124 -0
- package/src/video/cinema-queue-compatibility.ts +213 -0
- package/src/video/cinema-queue-types.ts +115 -0
- package/src/video/cinema-queue-validation.ts +184 -0
- package/src/video/cinema-reference-projection.ts +91 -0
- package/src/video/cinema-retry-policy.ts +36 -0
- package/src/video/cinema-review-service.ts +55 -0
- package/src/video/cinema-review-store.ts +75 -0
- package/src/video/cinema-review-types.ts +69 -0
- package/src/video/cinema-review-validation.ts +63 -0
- package/src/video/cinema-scope-report.ts +120 -0
- package/src/video/cinema-shot-compiler.ts +132 -0
- package/src/video/cinema-store.ts +273 -0
- package/src/video/cinema-story-compiler.ts +111 -0
- package/src/video/cinema-story-types.ts +124 -0
- package/src/video/cinema-story-validation.ts +59 -0
- package/src/video/cinema-types.ts +276 -0
- package/src/video/cinema-validation.ts +417 -0
- package/src/video/cinema-walking-skeleton-queue.ts +78 -0
- package/src/video/cinematography.ts +276 -3
- package/src/video/cli-schema.ts +331 -23
- package/src/video/clip-qc.ts +366 -0
- package/src/video/creator-demo.ts +241 -0
- package/src/video/creator-ui/capabilities.ts +189 -0
- package/src/video/creator-ui/execution.ts +118 -0
- package/src/video/creator-ui/index.ts +17 -0
- package/src/video/creator-ui/read-model.ts +35 -0
- package/src/video/creator-ui/server.ts +980 -0
- package/src/video/dialogue.ts +8 -1
- package/src/video/environment-auto-create.ts +27 -5
- package/src/video/errors.ts +40 -0
- package/src/video/execute-autochain.ts +2 -225
- package/src/video/execute-pool.ts +1 -1
- package/src/video/execute-render-scenes.ts +1 -1
- package/src/video/execute.ts +86 -1
- package/src/video/execution-adapter.ts +249 -0
- package/src/video/execution-character-locks.ts +56 -0
- package/src/video/execution-plan.ts +20 -4
- package/src/video/execution-profile.ts +43 -10
- package/src/video/execution-runtime.ts +140 -365
- package/src/video/execution-status.ts +121 -13
- package/src/video/filmmaking-prompts.ts +212 -86
- package/src/video/final-media.ts +61 -7
- package/src/video/flow-media-url.ts +241 -0
- package/src/video/gemini-analyze.ts +1 -1
- package/src/video/gen-image-flow.ts +21 -8
- package/src/video/image-ops.ts +4 -3
- package/src/video/keyframe-qc.ts +548 -0
- package/src/video/lane-coordinator.ts +329 -0
- package/src/video/lane-queue.ts +488 -0
- package/src/video/lip-sync.ts +320 -0
- package/src/video/lipsync-closure.ts +256 -0
- package/src/video/magnific/models.ts +11 -10
- package/src/video/magnific/types.ts +7 -1
- package/src/video/mograph/beats.ts +189 -0
- package/src/video/mograph/execute.ts +127 -0
- package/src/video/mograph/logos.ts +97 -0
- package/src/video/mograph/pack.ts +476 -0
- package/src/video/mograph/plan.ts +213 -0
- package/src/video/mograph/sheet.ts +234 -0
- package/src/video/mograph/style-families.ts +185 -0
- package/src/video/mograph/types.ts +156 -0
- package/src/video/motion-overlay/v2v-transport.ts +36 -6
- package/src/video/multi-shot-prompt.ts +164 -16
- package/src/video/music-video.ts +127 -1
- package/src/video/narrate.ts +12 -3
- package/src/video/native-dreamina.ts +99 -24
- package/src/video/native-flow-r2v.ts +63 -6
- package/src/video/native-magnific.ts +15 -5
- package/src/video/native-runway.ts +65 -10
- package/src/video/native-veo.ts +23 -3
- package/src/video/optical-register.ts +86 -0
- package/src/video/post-production.ts +137 -44
- package/src/video/preview-portal/discovery.ts +8 -1
- package/src/video/preview-portal/render.ts +2 -2
- package/src/video/preview-portal/shared-assets.ts +1 -1
- package/src/video/preview-portal/types.ts +7 -1
- package/src/video/prompt-lint.ts +265 -7
- package/src/video/prompt-quality.ts +56 -6
- package/src/video/prompt-rules.ts +20 -0
- package/src/video/provider-adapter-runner.ts +10 -0
- package/src/video/provider-platform/registry.ts +5 -9
- package/src/video/provider-platform/route-capabilities.ts +48 -10
- package/src/video/provider-status.ts +15 -2
- package/src/video/providers/dreamina-useapi.ts +21 -1
- package/src/video/providers/google-flow.ts +38 -3
- package/src/video/providers/runway-useapi.ts +7 -4
- package/src/video/providers/xskill.ts +8 -5
- package/src/video/publish-platform/package.ts +349 -0
- package/src/video/publish-platform/profiles.ts +176 -0
- package/src/video/publish-platform/types.ts +155 -0
- package/src/video/publish-platform/validate.ts +236 -0
- package/src/video/readiness.ts +28 -1
- package/src/video/reframe/captions.ts +176 -0
- package/src/video/reframe/index.ts +100 -0
- package/src/video/reframe/plan.ts +241 -0
- package/src/video/reframe/qc.ts +124 -0
- package/src/video/reframe/render.ts +150 -0
- package/src/video/reframe/suggest.ts +103 -0
- package/src/video/reframe/template.ts +61 -0
- package/src/video/reframe/types.ts +87 -0
- package/src/video/review-ui-media-proxy.ts +189 -0
- package/src/video/review-ui-server.ts +319 -0
- package/src/video/review-ui.ts +48 -287
- package/src/video/scene-candidates.ts +24 -0
- package/src/video/scene-headcount.ts +163 -0
- package/src/video/scene-selection.ts +48 -0
- package/src/video/seedance-blocks.ts +138 -2
- package/src/video/seedance-content-filter.ts +85 -4
- package/src/video/sfx.ts +7 -1
- package/src/video/show-preflight.ts +22 -1
- package/src/video/soundtrack.ts +8 -1
- package/src/video/stage-guards.ts +26 -0
- package/src/video/stock-platform/providers/pexels.ts +243 -0
- package/src/video/stock-platform/registry.ts +20 -0
- package/src/video/stock-platform/rights.ts +143 -0
- package/src/video/stock-platform/store.ts +421 -0
- package/src/video/stock-platform/types.ts +117 -0
- package/src/video/story-bible.ts +20 -0
- package/src/video/studio/execute.ts +12 -1
- package/src/video/studio/planner.ts +190 -3
- package/src/video/studio/recipes.ts +240 -3
- package/src/video/studio/types.ts +77 -0
- package/src/video/style-register.ts +684 -0
- package/src/video/types.ts +11 -0
- package/src/video/verify-final.ts +54 -10
- package/src/video/vocal-map.ts +36 -1
- package/src/video/vocal-sync-plan.ts +19 -3
- package/src/video/workspace.ts +42 -0
- package/docs/assets/vclaw-review-ui-desktop-after-stage-gate.png +0 -0
- package/docs/assets/vclaw-review-ui-mobile-after-stage-gate.png +0 -0
- package/src/video/assemble/.omc/state/sessions/3a741ceb-9c9f-4c48-a46f-a33edb5dcdc1/pre-tool-advisory-throttle.json +0 -14
- package/src/video/preview-portal/.omc/state/sessions/2fdd28da-2e8b-4462-a451-750b206c53e1/pre-tool-advisory-throttle.json +0 -18
package/CLAUDE.md
CHANGED
|
@@ -110,12 +110,25 @@ setup, or review surface — and before creating a new command — work through
|
|
|
110
110
|
live job exists (`execute-status` → `live-submitted` + a candidate + a
|
|
111
111
|
`.vclaw-jobs/*.json` file), and then the actual output downloaded + QC'd (frame
|
|
112
112
|
+ whisper). If you tell the user something is happening, prove it (a job id /
|
|
113
|
-
status / a frame) — do not assert progress you have not checked.
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
113
|
+
status / a frame) — do not assert progress you have not checked.
|
|
114
|
+
|
|
115
|
+
**QC the whole clip, not one frame.** A single mid-frame grab is not
|
|
116
|
+
verification: it passed 8 clips whose defect (extra figures walking in from the
|
|
117
|
+
frame edges) only began around the four-second mark, and the operator found it
|
|
118
|
+
on screen after delivery. Use `vclaw video clip-qc`, or a filmstrip —
|
|
119
|
+
`ffmpeg -i clip.mp4 -vf "fps=1,scale=200:-1,tile=8x1" strip.jpg` renders every
|
|
120
|
+
second in one pass. `consistency-audit` (one mid-frame, identity) and
|
|
121
|
+
`motion-qc` (nine frames, morph/vanish) are advisory and never block, so read
|
|
122
|
+
their findings rather than treating silence as clean.
|
|
123
|
+
|
|
124
|
+
**Re-render corollary — deleting the clip does NOT force a re-render.** The
|
|
125
|
+
resumable drivers resume from the **scene-selection artifact**, never from
|
|
126
|
+
disk, so a changed prompt plus a deleted `outputs/scene-N.mp4` yields
|
|
127
|
+
`skipped, attempts=0` and no provider call at all. Clear the selection with
|
|
128
|
+
`vclaw video reroll-scene --project <slug> --scene <i> --void` (it voids all
|
|
129
|
+
four stores atomically). After any re-render read the **per-scene statuses**,
|
|
130
|
+
not the file count — a silent no-op looks exactly like success from the
|
|
131
|
+
outside.
|
|
119
132
|
|
|
120
133
|
When in doubt, the on-disk project and its artifacts win over anything you
|
|
121
134
|
remember.
|
|
@@ -225,13 +238,13 @@ The portal generates the standardized HTML surfaces that used to be hand-written
|
|
|
225
238
|
|
|
226
239
|
### Storyboard grid & multi-shot prompt handoff
|
|
227
240
|
|
|
228
|
-
`src/video/multi-shot-prompt.ts` builds project-ready, provider-tuned multi-shot prompt packets (presets via `vclaw video multi-shot --presets`; see `references/video/multi-shot-framework.md`, especially its Anti-patterns section). `multi-shot --plan` can render through alternate composers via `--format default|seedance-paragraph|per-shot` (default = the original `{ preset, shots[] }` JSON, unchanged) and wrap the rendered text bilingually via `--lang en|zh|en+zh` (offline identity translator — the flag surfaces the two-block `en+zh` structure, not live translation); `--category <id>` drives the composed prose. On a non-`default` `--format`, `--hook <patternId>` (named `HOOK_PATTERNS` opening directive from `cinematography.ts`) prepends an `Opening hook — ...` line and `--dialogue "<speaker>: <line> [|| <speaker>: <line>]"` appends spoken dialogue to the opening via `withDialogue` — both are post-render text transforms (composers stay pure), default off / unchanged output. `--dialogue` parses a trailing `[emotion]` per speaker, and `--emotion-cues` rewrites those named emotions into physical-cue descriptors (`rewriteEmotionAsPhysical`/`EMOTION_PHYSICAL_CUE_MAP` in `emotion-cues.ts`) — advisory/additive, extremes left named, default off / byte-identical. `filmmaking-prompts --phase storyboard|video` gates the heavy video `seedancePackets` to `[]` in the `storyboard` phase (lock-the-grid step) while keeping the storyboard/camera-language portion. Joey cinematic-adaptation opt-in flags (all additive — omit = byte-identical legacy output) route through these same commands: `filmmaking-prompts` takes `--sheet 8-shot|6-panel` (`characterSheetSixPanelPrompt`), `--realism`/`--wet`/`--haze thin|light|heavy` (the `captureRealismBlock` keystone + `volumetricHaze`, at `--detail rich`), `--background mid-gray|white|black` (`backgroundPlate`), and `--lighting <id>`/`--grade <id>` (rich cinematography-suffix registers, e.g. `night-fire`/`bleach-bypass`); `multi-shot` takes `--genre <id>` (`resolveStyleLine`, Nolan fallback) and `--vfx <id>` (physical-VFX effects register, `src/video/vfx-register.ts`). Operator trigger-word map: mid-gray → `backgroundPlate`; haze → `volumetricHaze`; anti-plastic → `captureRealismBlock`; wet → moisture clause; bleach-bypass/lifted-blacks → lift/gamma grade; no-on-screen-text → Last Frame
|
|
241
|
+
`src/video/multi-shot-prompt.ts` builds project-ready, provider-tuned multi-shot prompt packets (presets via `vclaw video multi-shot --presets`; see `references/video/multi-shot-framework.md`, especially its Anti-patterns section). `multi-shot --plan` can render through alternate composers via `--format default|seedance-paragraph|per-shot` (default = the original `{ preset, shots[] }` JSON, unchanged) and wrap the rendered text bilingually via `--lang en|zh|en+zh` (offline identity translator — the flag surfaces the two-block `en+zh` structure, not live translation); `--category <id>` drives the composed prose. On a non-`default` `--format`, `--hook <patternId>` (named `HOOK_PATTERNS` opening directive from `cinematography.ts`) prepends an `Opening hook — ...` line and `--dialogue "<speaker>: <line> [|| <speaker>: <line>]"` appends spoken dialogue to the opening via `withDialogue` — both are post-render text transforms (composers stay pure), default off / unchanged output. `--dialogue` parses a trailing `[emotion]` per speaker, and `--emotion-cues` rewrites those named emotions into physical-cue descriptors (`rewriteEmotionAsPhysical`/`EMOTION_PHYSICAL_CUE_MAP` in `emotion-cues.ts`) — advisory/additive, extremes left named, default off / byte-identical. `filmmaking-prompts --phase storyboard|video` gates the heavy video `seedancePackets` to `[]` in the `storyboard` phase (lock-the-grid step) while keeping the storyboard/camera-language portion. Joey cinematic-adaptation opt-in flags (all additive — omit = byte-identical legacy output) route through these same commands: `filmmaking-prompts` takes `--sheet 8-shot|6-panel` (`characterSheetSixPanelPrompt`), `--realism`/`--wet`/`--haze thin|light|heavy` (the `captureRealismBlock` keystone + `volumetricHaze`, at `--detail rich`), `--background mid-gray|white|black` (`backgroundPlate`), and `--lighting <id>`/`--grade <id>` (rich cinematography-suffix registers, e.g. `night-fire`/`bleach-bypass`); `multi-shot` takes `--genre <id>` (`resolveStyleLine`, Nolan fallback) and `--vfx <id>` (physical-VFX effects register, `src/video/vfx-register.ts`). Operator trigger-word map: mid-gray → `backgroundPlate`; haze → `volumetricHaze`; anti-plastic → `captureRealismBlock`; wet → moisture clause; bleach-bypass/lifted-blacks → lift/gamma grade; no-on-screen-text → `noOnScreenTextBlock`, the FIRST directive block (it moved out of Last Frame: overlay text is decided early in the frame, so the instruction has to sit early in the prompt). See `docs/CLI_REFERENCE.md` ("Joey cinematic opt-in flags") and the framework Anti-patterns.
|
|
229
242
|
|
|
230
243
|
`src/video/storyboard-grid.ts` (`vclaw video storyboard-grid`, `renderStoryboardGrid`) renders a **deterministic shot-spec sheet** — a 3×3 SVG→PNG of CAM/MOVE/MOOD annotation panels — **not** a cinematic storyboard with character imagery. It is the *layout/intent contract*, not the finished reference image. The intended two-step is: (1) `storyboard-grid` to lock panel order + camera language, then (2) generate the real cinematic 3×3 grid via an image model (always `openai-gpt-image-2` for multi-panel composites) and re-attach it with `vclaw video filmmaking-prompts --storyboard-grid <path>`, which feeds it into the Seedance/Veo/Runway prompt packets.
|
|
231
244
|
|
|
232
245
|
Two production-learned gotchas baked into the generated packets (see the framework Anti-patterns): (a) grids passed as provider `reference_images` get **reproduced as a moving 9-panel split-screen** unless the prompt explicitly forces single-full-frame output — the packets now embed that guard; (b) real-person content filters (xskill/ARK Seedance) reject photoreal faces as `reference_images`, so use `filmmaking-prompts --no-faces` to render the grid prompt in a silhouette / no-face register.
|
|
233
246
|
|
|
234
|
-
`vclaw video prompt-lint` (`src/video/prompt-lint.ts`, pure/deterministic — the handler does the I/O) lints a filmmaking-prompts artifact BEFORE spend: Seedance
|
|
247
|
+
`vclaw video prompt-lint` (`src/video/prompt-lint.ts`, pure/deterministic — the handler does the I/O) lints a filmmaking-prompts artifact BEFORE spend: Seedance 13-block order, the 280–1000-words-per-packet window, brand/proper-name scrub leaks, the single-full-frame grid guard whenever a storyboard-grid reference is attached, NO ON-SCREEN TEXT / CAPTURE CADENCE / SUBJECT LOCK / CAPTURE REALISM / CAMERA CAPTURE presence on video packets, grid-panel annotation style (advisory), the character-identity word budget (30–60 words target, >100 hard failure), and two newer advisories: the reference-transfer contract and allocation-model over-allocation. `--checklist` prints the route checklist. `vclaw video cinema-profile` persists per-project cinematography defaults onto the project manifest (`updateProjectManifestCinemaProfile` in `workspace.ts`) so the prompt/packet layer picks them up without re-typing flags. `vclaw video diagnose` (`src/video/output-diagnosis.ts`) is the companion for AFTER a render: an output-quality troubleshoot tree — `--symptom <text>` matches an observed defect to causes + fixes, `--retry-pattern` prints the conservative retry pattern.
|
|
235
248
|
|
|
236
249
|
### Provider routes and adapters
|
|
237
250
|
|
|
@@ -248,7 +261,7 @@ Adapters receive JSON on stdin and must return JSON on stdout (`externalJobId` f
|
|
|
248
261
|
|
|
249
262
|
For `seedance-direct`, `veo-useapi`, `runway-useapi`, and `dreamina-useapi`, `vclaw` ships a built-in adapter binary (`dist/cli/provider-adapter.js`) used automatically unless the full `..._ADAPTER` override is set. The built-in adapters read route-specific `..._SUBMIT_CMD` / `..._POLL_CMD` / `..._CANCEL_CMD` command shims. Routes also have native in-process transports: `native-seedance.ts` (uses `SUTUI_API_KEY`), `native-veo.ts` (drives the local `vclaw-cli` Bun package), `native-runway.ts` (pure Node fetch + fs, UseAPI bearer auth), `native-dreamina.ts` (pure Node fetch + fs, UseAPI bearer auth).
|
|
250
263
|
|
|
251
|
-
**`dreamina-useapi` = Seedance 2.0 / Dreamina via useapi.net.** Dreamina (CapCut/ByteDance Seed) exposes the Seedance family (`seedance-2.0` default, `-2.0-fast`, `-2.0-mini`, `-1.5-pro`, `-1.0-pro`, `-1.0-mini`, `-1.0-fast`) and `sora2` through useapi.net; CA-region accounts unlock 1080p Seedance 2.0 (and 4k on `seedance-2.0` as of 2026-06-26 — opted into route-locally via `VCLAW_DREAMINA_RESOLUTION=4k`, since the shared execution profile only expresses 720p/1080p; the transport clamps 4k→1080p on non-seedance-2.0 models and →720p on the 720p-only ones). `-2.0-fast`/`-2.0-mini`/`sora2` are 720p-only. `native-dreamina.ts` reuses the **same `USEAPI_API_TOKEN`** as runway-useapi (no new token) and reads the account from `VCLAW_DREAMINA_ACCOUNT` (e.g. `CA:ai@example.com`), region from `VCLAW_DREAMINA_REGION` (default `CA`), and model from `VCLAW_DREAMINA_MODEL` (default `seedance-2.0`); the route adapter override is `VCLAW_DREAMINA_USEAPI_ADAPTER`. The account is registered server-side out-of-band (`POST /accounts` with `{email,password,region,maxJobs}`), so submit only needs the account id + token. For image-to-video, the first image reference is uploaded via `POST /dreamina/assets/<account>` to obtain an `assetRef`, which is passed as `firstFrameRef` on `POST /dreamina/videos` (first_frame mode auto-detects aspect ratio from the image); poll uses `GET /dreamina/videos/<jobid>` (`status: created → completed|failed`) and downloads `response.videoUrl`. Like runway-useapi, real human faces are rejected by Seedance moderation — describe stylized characters by visual descriptor.
|
|
264
|
+
**`dreamina-useapi` = Seedance 2.0 / Dreamina via useapi.net.** Dreamina (CapCut/ByteDance Seed) exposes the Seedance family (`seedance-2.0` default, `-2.0-fast`, `-2.0-mini`, `-1.5-pro`, `-1.0-pro`, `-1.0-mini`, `-1.0-fast`) and `sora2` through useapi.net; CA-region accounts unlock 1080p Seedance 2.0 (and 4k on `seedance-2.0` as of 2026-06-26 — opted into route-locally via `VCLAW_DREAMINA_RESOLUTION=4k`, since the shared execution profile only expresses 720p/1080p; the transport clamps 4k→1080p on non-seedance-2.0 models and →720p on the 720p-only ones). `-2.0-fast`/`-2.0-mini`/`sora2` are 720p-only. `native-dreamina.ts` reuses the **same `USEAPI_API_TOKEN`** as runway-useapi (no new token) and reads the account from `VCLAW_DREAMINA_ACCOUNT` (e.g. `CA:ai@example.com`), region from `VCLAW_DREAMINA_REGION` (default `CA`), and model from `VCLAW_DREAMINA_MODEL` (default `seedance-2.0`); the route adapter override is `VCLAW_DREAMINA_USEAPI_ADAPTER`. The account is registered server-side out-of-band (`POST /accounts` with `{email,password,region,maxJobs}`), so submit only needs the account id + token. For image-to-video, the first image reference is uploaded via `POST /dreamina/assets/<account>` to obtain an `assetRef`, which is passed as `firstFrameRef` on `POST /dreamina/videos` (first_frame mode auto-detects aspect ratio from the image); a scene's `endKeyframePath` (the same field the runway route uses) uploads a second frame passed as `endFrameRef` alongside `firstFrameRef` → **end_frame mode**, where the clip animates first→end (two stills → one continuous shot); poll uses `GET /dreamina/videos/<jobid>` (`status: created → completed|failed`) and downloads `response.videoUrl`. Like runway-useapi, real human faces are rejected by Seedance moderation — describe stylized characters by visual descriptor.
|
|
252
265
|
|
|
253
266
|
**Seedance character consistency = the Asset Library, not raw URLs.** `ark/seedance-2.0` (the official Volcengine Ark Seedance 2.0, Standard = 1080p) locks character identity via managed **Asset Library avatars** (`Asset://` URIs), NOT raw photoreal image URLs (those trip the "real person" content filter and don't lock identity). `src/video/seedance-asset-library.ts` (`vclaw video seedance-register-assets`) registers character images as Assets, waits for international-profile sync, and writes `artifacts/seedance-assets.json` (canonical schema `schemas/video/artifacts/seedance-assets.schema.json`; shape `{ schemaVersion, projectSlug, groupName, generatedAt, assets:[{name, assetId, assetUri, intlAssetUri}] }`); `readSeedanceAssets(workspaceRoot, slug)` reads it back into a name→`Asset://`-URI map (graceful when absent). On the `seedance-direct` route only, `buildExecutionPayload` (`execution-runtime.ts`) auto-resolves each scene's `referencePaths` from that artifact by matching `scene.characters` names → their `Asset://` URIs (a project without the artifact behaves as before); `native-seedance.ts`'s `seedanceReferenceParams` then routes `Asset://` references into `reference_images`. References are capped at ≤9 image / ≤3 video / ≤3 audio per submission via `assertReferenceBudget`, preflighted across the whole payload in `submitSeedanceDirectNative` before any submit (fail-fast, no partial submission). Describe characters by visual descriptor (not proper names) in prompts — names don't survive across generations. (Validated 2026-05-29 against the same Ark endpoint the user's production project uses.) `@Name` tags in scene prompts (`resolveAssetTags` in `prompt-rules.ts`, lookup via `asset-tag-lookup.ts` `buildAssetTagLookup`) resolve at `buildExecutionPayload` time to the character's visual descriptor (text) + its saved reference (`Asset://`/image), merged through `resolveSceneReferencePaths`; unresolved tags strip the `@` and warn (never fatal), `@imageN` positional bindings are reserved, and it runs before `stripProperNames`. `@location` tags resolve via locked environment plates: `vclaw video environment-auto-create` (`src/video/environment-auto-create.ts`, mirrors `character-auto-create`) generates seamless no-people location plates and writes `artifacts/environment-assets.json` (own schema, like seedance-assets); `readEnvironmentAssets` (`environment-assets.ts`) feeds `buildAssetTagLookup`'s `environmentsByName` so `@tokyo-alley` resolves to the plate descriptor + ref (absent → graceful no-op).
|
|
254
267
|
|
|
@@ -270,13 +283,17 @@ The repeatable cartoon-SHOW production system (from the Jack-Vs-AI workflow). `v
|
|
|
270
283
|
|
|
271
284
|
`vclaw video motion-overlay --input <video>` turns an existing talking-head video into a reel with speech-synced motion-graphics overlays. Pipeline: ingest → transcribe (Gemini STT) → slice into ≤10s takes → compose overlay prompts (retention principles + concept→animation metaphor map live as deterministic code, not markdown) → render via one of four layouts (`split|overlay|motion-only|avatar-host`). Render transports: Omni Flash V2V (moderation-prone on person footage), **local** per-frame render (`render-local.ts`/`animate*.ts` — word reveal, count-up, gauge fill), and `avatar-host` (locked go-bananas character via `--gb-character <Name:ID>`, pin+chain identity). Plan/dry by default; spend requires `--execute --confirm-spend`; retry/resume self-heals probabilistic Flow moderation. See `docs/MOTION_OVERLAY.md`.
|
|
272
285
|
|
|
286
|
+
### Mograph — style-locked motion graphics (`src/video/mograph/`)
|
|
287
|
+
|
|
288
|
+
`vclaw video mograph-sheet` / `mograph-pack` / `mograph-render` / `mograph-logos` generate fleets of motion-graphics clips that share ONE look: a **motion sheet** (`artifacts/motion-sheet.json` — master style-board image + ≤120-word style lock carrying the do-NOT-copy-the-sheet-layout guard + a negative ending in the five audio bans) locks the style once, and a **motion pack** (`artifacts/motion-pack.json` — coverage map + action-only `B###` blocks, P1/P2/P3, `t2v|ref2v|v2v-*` modes) carries pure choreography. `mograph-pack --check` is the anti-drift gate (style words/hex codes banned from actions, quoted on-screen text ≤4 words, SFX-never-music, coverage integrity); `mograph-render` is PLAN-ONLY — it assembles `style lock + SHOT + AUDIO + AVOID` per block and `--emit-batch` compiles a batch-queue manifest for the existing `batch-submit`/`batch-monitor` machinery (refs ride in `characterRefs`, the REFERENCE slot; v2v blocks are set aside for omni-flash or prompt-only, never dropped silently). Creative authoring lives in `skills/mograph/SKILL.md`; contract in `docs/MOGRAPH.md`; design spec in `docs/design/specs/2026-07-13-mograph-native-port.md`. Native port of a licensed external skill's concepts — original wording only, the purchased pack is never committed.
|
|
289
|
+
|
|
273
290
|
### Audio platform (`src/video/audio-platform/`)
|
|
274
291
|
|
|
275
292
|
`narrate`, `dialogue`, `sfx`, and `soundtrack` are backend-pluggable audio commands over a backend registry (`registry.ts`): TTS via `gemini-tts`/`elevenlabs-tts`, SFX via ElevenLabs, music via `lyria` (Vertex), `lyria3` (Gemini API, key-based), `flowmusic` (Lyria 3 Pro vocals via useapi.net), and Suno. All spend-gated: without `--confirm-spend` they exit 3 with `spend_confirmation_required` (`--dry-run` to plan). `assemble` consumes their outputs via the mix-plan (dialogue + SFX mixed at stitch; `assemble/narration-fit.ts` handles TTS-vs-video timing).
|
|
276
293
|
|
|
277
294
|
### Media production & local post-production
|
|
278
295
|
|
|
279
|
-
Two handler families cover the finishing lane. `handlers/media-production.ts`: `assemble` (FFmpeg stitch, incl. `--from-clips`), `gen-image` (diegetic prop/screen/overlay stills; Flow image models via `gen-image-flow.ts`), `overlay` (graphic/alert/lower-third motion graphics with a drawtext preflight), `music-video` (vocal-synced beat-exact assembler, plan/dry by default), `title-card` (Pillow+RAQM title overlays), `stitch-ad`, `animation-styles` (shared `animation-styles.json` registry), `finish` (`src/video/finish.ts` — upscale a rendered cut to an HD/QHD master via hosted Topaz (spend-gated) or local Real-ESRGAN/Topaz CLI; the anti-plastic recipe is baked in: photoreal model, denoise/sharpen DISABLED, film grain kept, and Topaz `grain` clamps to 0.1 because the published schema overstates the range), and `lipsync` (OmniHuman, spend-gated). `assemble`'s stitch layer also supports opt-in **reading-holds** (`assemble/stitch.ts`, `readingHold`) — readable pre-roll holds on dense motion-comic segments. `handlers/media-ops.ts` is local-FFmpeg-only post-production on a finished cut — `make-vertical`/`make-square`/`make-loop`, `thumbnail`, `burn-subtitles`, `verify-final`, and `qc` (recursively scans `projects/<slug>/final/` + `outputs/` for clips and runs the assemble media-QC probe: missing-audio, nonstandard codec, duration drift; graceful `status: 'skipped'` when no clips) — real file I/O but NO provider calls and NO spend. Two adjacent quality/finishing tools: `vclaw video image-ops` (`src/video/image-ops.ts` + `native-magnific.ts`) is still-image post-processing, currently the Magnific precision-v2 image upscaler (pure planning core + injectable runner; `--dry-run` plans without spending; the IMAGE endpoint is live-verified,
|
|
296
|
+
Two handler families cover the finishing lane. `handlers/media-production.ts`: `assemble` (FFmpeg stitch, incl. `--from-clips`), `gen-image` (diegetic prop/screen/overlay stills; Flow image models via `gen-image-flow.ts`), `overlay` (graphic/alert/lower-third motion graphics with a drawtext preflight), `music-video` (vocal-synced beat-exact assembler, plan/dry by default), `title-card` (Pillow+RAQM title overlays), `stitch-ad`, `animation-styles` (shared `animation-styles.json` registry), `finish` (`src/video/finish.ts` — upscale a rendered cut to an HD/QHD master via hosted Topaz (spend-gated) or local Real-ESRGAN/Topaz CLI; the anti-plastic recipe is baked in: photoreal model, denoise/sharpen DISABLED, film grain kept, and Topaz `grain` clamps to 0.1 because the published schema overstates the range), and `lipsync` (OmniHuman, spend-gated). `assemble`'s stitch layer also supports opt-in **reading-holds** (`assemble/stitch.ts`, `readingHold`) — readable pre-roll holds on dense motion-comic segments. `handlers/media-ops.ts` is local-FFmpeg-only post-production on a finished cut — `make-vertical`/`make-square`/`make-loop`, `thumbnail`, `burn-subtitles`, `verify-final`, and `qc` (recursively scans `projects/<slug>/final/` + `outputs/` for clips and runs the assemble media-QC probe: missing-audio, nonstandard codec, duration drift; graceful `status: 'skipped'` when no clips) — real file I/O but NO provider calls and NO spend. Two adjacent quality/finishing tools: `vclaw video image-ops` (`src/video/image-ops.ts` + `native-magnific.ts`) is still-image post-processing, currently the Magnific precision-v2 image upscaler (pure planning core + injectable runner; `--dry-run` plans without spending; the IMAGE endpoint is live-verified, a different service from the video upscaler), and `vclaw video consistency-audit` (`src/video/consistency-audit.ts`) is an automated character-consistency VISION audit across rendered scenes/keyframes — the engine-side forcing function that catches wardrobe/face drift on recurring characters BEFORE a render is presented as done.
|
|
280
297
|
|
|
281
298
|
### Gemini key pool
|
|
282
299
|
|
|
@@ -303,13 +320,34 @@ Two handler families cover the finishing lane. `handlers/media-production.ts`: `
|
|
|
303
320
|
- `check:skill-frontdoor` deliberately ignores `skills/seedance-prompts/SKILL.md` and the three presenter skills (`bunty`, `davendra-presenter`, `nex-presenter`) because their docs legitimately reference the legacy Python pipeline scripts. Don't "fix" the ignore list — it's load-bearing.
|
|
304
321
|
- Do not commit secrets, `.env.local`, provider cookies, or `.omx/` state (already gitignored).
|
|
305
322
|
|
|
323
|
+
## Start in your own worktree
|
|
324
|
+
|
|
325
|
+
Sessions share this repo's `.git`. Two in the MAIN checkout also share its
|
|
326
|
+
working tree, index, HEAD and `dist/` — which on 2026-08-01 absorbed one
|
|
327
|
+
session's uncommitted work into another's commit, wiped `dist/` mid-test-run
|
|
328
|
+
(322 phantom failures), and switched the branch under an in-flight commit. A
|
|
329
|
+
worktree gives a session its own copy of all four.
|
|
330
|
+
|
|
331
|
+
Run `scripts/new-session.sh <name> [branch]` before doing anything else. It
|
|
332
|
+
builds `.claude/worktrees/<name>` off a freshly fetched `origin/main`, links
|
|
333
|
+
`node_modules`, proves the link resolves, and prints the `cd`. Stage explicit
|
|
334
|
+
paths when committing, so a commit holds only what you touched.
|
|
335
|
+
|
|
336
|
+
Working in the main checkout is fine when you are certain you are the only
|
|
337
|
+
session. When you are not certain, you are not.
|
|
338
|
+
|
|
339
|
+
`scripts/hooks/install.sh` activates a `pre-commit` guard: it blocks a commit
|
|
340
|
+
made directly on `main`, and warns when you commit from the main checkout while
|
|
341
|
+
another worktree holds uncommitted work. Both are advisory-on-error and skippable
|
|
342
|
+
with `VCLAW_SKIP_GUARD=1` — a guard that wrongly blocks just gets deleted.
|
|
343
|
+
|
|
306
344
|
## Autonomy directive (from AGENTS.md)
|
|
307
345
|
|
|
308
346
|
Proceed by default on obvious next steps. Keep work scoped to this repository and its generated `projects/<slug>/` folders. If a blocker is local and solvable, solve it; if it's external, note it and continue with the next meaningful lane rather than pausing for confirmation.
|
|
309
347
|
|
|
310
348
|
## Recommended reading order
|
|
311
349
|
|
|
312
|
-
`docs/ARCHITECTURE.md` → `docs/CLI_REFERENCE.md` → `docs/STUDIO.md` → `docs/ASSEMBLE.md` → `docs/PRODUCTION_WORKFLOW.md` → `docs/REVIEW_UI_STORYBOARD_WORKFLOW.md` → `docs/preview-portal-audit.md` → `docs/STORY_BIBLE.md` → `docs/DIRECTOR_BLUEPRINT.md` → `docs/MOTION_OVERLAY.md` → `docs/REFERENCE_SHEETS.md` → `docs/SCENE_CANDIDATES.md` → `docs/OPERATIONS.md` → `docs/GENERATION_TELEMETRY.md` → `docs/OBSIDIAN.md` → `docs/TEMPLATES.md` → `docs/MIGRATION.md` → `docs/DEPRECATION.md` → `docs/RELEASE_READINESS.md` → `docs/MASTER_PLAN_ALIGNMENT.md` → `docs/DIAGRAMS_SOURCE.md`.
|
|
350
|
+
`docs/ARCHITECTURE.md` → `docs/CLI_REFERENCE.md` → `docs/STUDIO.md` → `docs/ASSEMBLE.md` → `docs/PRODUCTION_WORKFLOW.md` → `docs/REVIEW_UI_STORYBOARD_WORKFLOW.md` → `docs/preview-portal-audit.md` → `docs/STORY_BIBLE.md` → `docs/DIRECTOR_BLUEPRINT.md` → `docs/MOTION_OVERLAY.md` → `docs/MOGRAPH.md` → `docs/REFERENCE_SHEETS.md` → `docs/SCENE_CANDIDATES.md` → `docs/OPERATIONS.md` → `docs/GENERATION_TELEMETRY.md` → `docs/OBSIDIAN.md` → `docs/TEMPLATES.md` → `docs/MIGRATION.md` → `docs/DEPRECATION.md` → `docs/RELEASE_READINESS.md` → `docs/MASTER_PLAN_ALIGNMENT.md` → `docs/DIAGRAMS_SOURCE.md`.
|
|
313
351
|
|
|
314
352
|
Architecture decision records live in `docs/adr/` (no-silent-fallback across routes, on-disk project as source of truth, Seedance identity via Asset Library, director-mode approval gate) — consult them before relitigating those decisions.
|
|
315
353
|
|
package/README.md
CHANGED
|
@@ -21,6 +21,8 @@ A command-line tool (`vclaw`) that takes a plain-English idea like *"a 15-second
|
|
|
21
21
|
The complete, idiot-proof **and** agent-ready docs: an [interactive guide](https://videoclaw-docs.vercel.app/guide/), a page for [**every feature**](https://videoclaw-docs.vercel.app/features/) (30+), a [recipe book](https://videoclaw-docs.vercel.app/guide/what-videos) of what you can make, the [skills catalog](https://videoclaw-docs.vercel.app/skills/), and all the deep [reference docs](https://videoclaw-docs.vercel.app/reference/) — with diagrams throughout.
|
|
22
22
|
|
|
23
23
|
> **New here?** The easiest path is to **[drive it by talking to Claude Code](https://videoclaw-docs.vercel.app/guide/with-claude-code)** (or any agent host); there's a dedicated [how-it-works page for agents](https://videoclaw-docs.vercel.app/for-agents/) too.
|
|
24
|
+
>
|
|
25
|
+
> **Agents working in this repo:** read [`docs/CAPABILITIES.md`](docs/CAPABILITIES.md) (or [`llms.txt`](llms.txt)) — a one-read capability manifest: what videoclaw can produce, the provider routes, the spend-safety model, and the full command index. Run `vclaw schema --json` for exact flags.
|
|
24
26
|
> Once you're in Claude Code in this repo, just type **`/concierge`** (or **`/clawbot`**) — or say *"make me a video"* — and **Clawbot**, VideoClaw's mascot and concierge, walks you from idea to finished film, with a preview and your approval before anything costs money.
|
|
25
27
|
|
|
26
28
|
<a href="https://videoclaw-docs.vercel.app/"><img src="./docs/assets/docsite-preview.png" alt="videoclaw documentation site — make AI videos by just talking" width="100%" /></a>
|
|
@@ -152,6 +154,7 @@ No global install? Run it on demand with `npx -p videoclaw@alpha vclaw video pro
|
|
|
152
154
|
```bash
|
|
153
155
|
git clone https://github.com/davendra/videoclaw-v3 && cd videoclaw-v3
|
|
154
156
|
npm install # Node 20+
|
|
157
|
+
python3 -m pip install -r requirements-test.txt # Python 3.9+ test helpers
|
|
155
158
|
npm run build # compile the CLI
|
|
156
159
|
npm test # run the full test suite
|
|
157
160
|
node dist/cli/vclaw.js video providers # show which AI providers are ready
|
|
@@ -172,9 +175,9 @@ node dist/cli/vclaw.js video status --project demo
|
|
|
172
175
|
|
|
173
176
|
> **Zero keys needed to try it.** Everything above — install, `providers`, and the full `init → brief → storyboard → plan → produce --dry-run → status` lifecycle — runs with **no API keys and no credits**. Provider keys gate only the **real render** step. (`vclaw video verify-env` lists `GOOGLE_API_KEY` / `GO_BANANAS_API_KEY` / `SUTUI_API_KEY` as *required* because they're required to *render* — you can explore the whole pipeline, artifacts, and review surfaces before wiring up a single key.)
|
|
174
177
|
|
|
175
|
-
Add `--auto-chain` to `produce`/`execute` to render the whole storyboard sequentially, each scene seeded from the previous scene's output video (continuity chain, unattended).
|
|
178
|
+
Add `--auto-chain` to `produce`/`execute` to render the whole storyboard sequentially, each scene seeded from the previous scene's output video (continuity chain, unattended). Add `--enqueue` to compile the same chain as a zero-call durable DAG: later scenes remain blocked behind their predecessor, carry an explicit deferred selected-video source policy, and enter exact quotation only when the required source exists.
|
|
176
179
|
|
|
177
|
-
`vclaw video pool --project <slug> [--max-concurrent <N>] [--scenes <csv>]` renders a project's pending scenes as independent units **in parallel** (no chaining, unlike `--auto-chain`), resumable (scenes with a selected candidate are skipped) and spend-gated (`--dry-run` to plan, `--confirm-spend` to render). `--max-concurrent` caps the number of scenes in flight (default 2) and the pool auto-refills a slot as each scene completes. Concurrent renders are lost-update-safe: each scene's `scene-candidates.json`/`scene-selection.json` read-modify-write runs under a shared artifact lock (re-read current → apply this scene's delta → write), so two scenes never clobber each other (no double-spend), while their slow provider submit/poll overlaps. The concurrency scheduler is built + adversarially tested.
|
|
180
|
+
`vclaw video pool --project <slug> [--max-concurrent <N>] [--scenes <csv>]` renders a project's pending scenes as independent units **in parallel** (no chaining, unlike `--auto-chain`), resumable (scenes with a selected candidate are skipped) and spend-gated (`--dry-run` to plan, `--confirm-spend` to render). `--enqueue` instead compiles the exact pending execution tasks into the shared durable Cinema queue with an immutable zero-call receipt and maps the cap onto one LaneQueue lane; paid tasks remain `awaiting-quote`. `--max-concurrent` caps the number of scenes in flight (default 2) and the pool auto-refills a slot as each scene completes. Concurrent renders are lost-update-safe: each scene's `scene-candidates.json`/`scene-selection.json` read-modify-write runs under a shared artifact lock (re-read current → apply this scene's delta → write), so two scenes never clobber each other (no double-spend), while their slow provider submit/poll overlaps. The concurrency scheduler is built + adversarially tested.
|
|
178
181
|
|
|
179
182
|
`vclaw video render-scenes --project <slug> [--method <route>] [--fallback-chain] [--continue-from <i>] [--scenes <csv>]` is the **fallback-ladder** driver: it renders pending scenes **sequentially** and, per scene, walks a **fallback route ladder** — try the primary route; if the provider rejects it, escalate to the next route, and so on (the first route that succeeds wins). This productizes the hand-written `voice-render.mjs` / `chain.mjs` loops (render one scene, on rejection escalate to a fallback method, resumable across crashes). `--method` picks the primary route; `--fallback-chain` appends the project's `routePreference` / mode defaults as the fallback rungs (without it the ladder is just the primary — a plain sequential render). Resumable via `--continue-from <i>` (skips scenes below `i`) and already-selected scenes; spend-gated (`--dry-run` to plan, `--confirm-spend` to render). Contrast: `--auto-chain` = sequential + chained on one route; `pool` = parallel + independent on one route; `render-scenes` = sequential + per-scene route fallback.
|
|
180
183
|
|
|
@@ -394,7 +397,7 @@ flowchart TD
|
|
|
394
397
|
| `SUTUI_API_KEY` | seedance-direct (native) | XSkill API credentials for in-process transport |
|
|
395
398
|
| `VCLAW_MAGNIFIC_REST_ADAPTER` · `_SUBMIT_CMD` · `_POLL_CMD` · `_CANCEL_CMD` | magnific-rest | custom adapter override / command shim |
|
|
396
399
|
| `MAGNIFIC_API_KEY` | magnific-rest (native) + `finish --backend magnific-precision` | Magnific/Freepik REST key (`x-magnific-api-key`) for video generation + upscale |
|
|
397
|
-
| `VCLAW_MAGNIFIC_MODEL` · `VCLAW_MAGNIFIC_API_URL` | magnific-rest | proxied model (default = cheapest catalog model fitting the op; premium
|
|
400
|
+
| `VCLAW_MAGNIFIC_MODEL` · `VCLAW_MAGNIFIC_API_URL` | magnific-rest | proxied image-to-video model (default = cheapest catalog model fitting the op; premium `kling-o1-pro` opt-in; unknown ids throw) · API base override |
|
|
398
401
|
| `VIDEOCLAW_APPROVE_STORYBOARD` | director mode | `=1` to approve storyboard and allow provider submission |
|
|
399
402
|
| `DIRECTOR_AUTO_FIX_CONTENT` | director mode | `=1` to rewrite provider-risk phrases in storyboard |
|
|
400
403
|
| `SKIP_DIRECTOR_PREFLIGHT` | director mode | `=1` to bypass preflight (use sparingly) |
|
|
@@ -436,7 +439,9 @@ workflow documented in
|
|
|
436
439
|
[`docs/REFERENCE_VIDEO_SEEDANCE_MOTION_DESIGN_WORKFLOW.md`](https://videoclaw-docs.vercel.app/reference/REFERENCE_VIDEO_SEEDANCE_MOTION_DESIGN_WORKFLOW).
|
|
437
440
|
Use its director defaults to save a production ledger that follows the
|
|
438
441
|
still-frame-first, start/end-frame, bridge-pose, variant-pass, and post-retiming
|
|
439
|
-
recipe.
|
|
442
|
+
recipe. It binds to loopback by default and uses a one-time launch token plus an
|
|
443
|
+
HttpOnly session cookie; non-loopback hosts require an explicit `--allow-remote`,
|
|
444
|
+
and wildcard binds are refused. Treat the printed launch URL as a credential.
|
|
440
445
|
|
|
441
446
|
`review-autopilot` lets the agent do that handoff without manual clicks once
|
|
442
447
|
storyboard still candidates exist. It locks the best available stills, promotes
|
|
@@ -460,12 +465,16 @@ regenerated automatically on every `produce`/`execute` and `execute-status` poll
|
|
|
460
465
|
`analyze` · `analyze-template` · `template-create` · `template-save` · `template-list` · `template-show` · `template-validate` · `clone-plan` · `clone-init` · `clone-ad` · `clone-execute` · `storyboard-from-clone` · `storyboard-template-list` · `storyboard-template-show`
|
|
461
466
|
|
|
462
467
|
### Character subsystem
|
|
463
|
-
`character-add` · `character-list` · `character-show` · `character-consistency` · `consistency-audit` · `motion-qc` · `character-auto-create` · `environment-auto-create` · `character-import-library` · `find-library` · `library find` · `library clean` · `list-library` · `seedance-register-assets` · `flow-register-characters` · `flow-register-voices` · `voice-clone` · `show-bible` · `show-preflight`
|
|
468
|
+
`character-add` · `character-list` · `character-show` · `character-consistency` · `consistency-audit` · `motion-qc` · `clip-qc` · `keyframe-qc` · `character-auto-create` · `environment-auto-create` · `character-import-library` · `find-library` · `library find` · `library clean` · `list-library` · `seedance-register-assets` · `flow-register-characters` · `flow-register-voices` · `voice-clone` · `show-bible` · `show-preflight`
|
|
464
469
|
|
|
465
470
|
`consistency-audit` is the **automated character identity/costume vision audit**: for each rendered scene it extracts a representative mid-frame and asks an (injectable, Gemini-backed) vision client whether each registered scene character still matches its locked reference face/hair AND costume/colours, plus a deterministic dark-border check and an extra-figure flag — catching wardrobe/identity drift (a dhoti rendering crimson in one scene and tan in another) BEFORE a render is presented as done. It writes `consistency-audit.json` and also runs advisory/non-fatal at the end of a real `produce`/`execute` run when a Gemini key is configured.
|
|
466
471
|
|
|
467
472
|
`motion-qc` is its sibling for **rendering artifacts a still-frame QC pass is blind to**: it samples K dense frames per rendered clip (default 9) and runs a per-frame lane (breath-vapour condensation puffs, film grain rendering as drifting fog over dark regions) plus an adjacent-pair lane (objects/faces **morphing** between moments, solid props **vanishing** mid-clip — anchored on the scene keyframe when bound). Conservative prompts, advisory on transport failure, `clipChecked:false` for image-only/unrendered scenes. Writes `motion-artifact-qc.json`; requires a Gemini vision key. See `docs/CLI_REFERENCE.md`.
|
|
468
473
|
|
|
474
|
+
`clip-qc` is the third lane: a **per-second headcount** over every rendered clip. `consistency-audit` samples one mid-frame and `motion-qc` looks for morph/vanish artefacts — neither counts people, so invented, duplicated, or edge-entering cast is invisible to both (eight clips of a 37-shot film shipped that way). Flags `headcount-variance` (the count changes mid-clip) and `headcount-exceeds-cast` (more people than the scene names), and writes a filmstrip contact sheet per clip to `projects/<slug>/qc/` — that lane needs no vision key. Writes `clip-qc.json`. See `docs/CLI_REFERENCE.md`.
|
|
475
|
+
|
|
476
|
+
`keyframe-qc` is the **fail-fast PRE-render keyframe readiness gate** — deterministic and offline (pure Node PNG IHDR header parse; no vision model, no spend). Given the storyboard's scene count it verifies every scene has `references/scene<i>-keyframe.png`, that each is a readable PNG, and that all keyframes share the dominant WxH; a missing storyboard, missing/unreadable keyframe, or dimension mismatch fails the gate (exit 3, GATE) so an `&&` chain halts BEFORE `produce` spends on drifted keyframes. A uniform-but-non-1280x720 set passes with an advisory. Writes `keyframe-qc.json`.
|
|
477
|
+
|
|
469
478
|
### Portfolio · ops · reporting
|
|
470
479
|
`list` · `index` · `metrics` · `workload` · `next-actions` · `dependencies` · `status` · `doctor-project` · `doctor-portfolio` · `report` · `report-snapshot` · `report-history` · `report-diff` · `trends` · `export-csv` · `artifact-history` · `verify-env` · `cost-estimate`
|
|
471
480
|
|
|
@@ -485,6 +494,9 @@ regenerated automatically on every `produce`/`execute` and `execute-status` poll
|
|
|
485
494
|
### Multi-shot prompt
|
|
486
495
|
`multi-shot` — scaffold / validate / Gemini-author timecoded multi-shot cinematic prompts, with preset discovery, storyboard scene hydration, provider-shaped defaults, and parsed shot artifacts ([docs](https://videoclaw-docs.vercel.app/reference/CLI_REFERENCE))
|
|
487
496
|
|
|
497
|
+
### Motion graphics (style-locked)
|
|
498
|
+
`mograph-sheet` · `mograph-pack` · `mograph-render` · `mograph-logos` — lock a motion-graphics look ONCE in a motion sheet (master style board + ≤120-word style lock), turn the VO into a coverage-mapped pack of action-only P1/P2/P3 blocks, lint them against style drift, and compile batch-eligible blocks into a batch-queue manifest for overnight rendering ([docs](https://videoclaw-docs.vercel.app/reference/MOGRAPH))
|
|
499
|
+
|
|
488
500
|
### Director & brand layer
|
|
489
501
|
`director-blueprint` — validate + persist the project visual bible (`artifacts/project-blueprint.json`); `filmmaking-prompts` auto-appends a prose `DIRECTOR` addendum when present ([docs](https://videoclaw-docs.vercel.app/reference/DIRECTOR_BLUEPRINT)) · `brand-definition` — validate + persist the locked brand system (`artifacts/brand-definition.json`: palette/voice/typography/theme map, strict `#RRGGBB` hex validation); `filmmaking-prompts` auto-appends a prose `BRAND` line when present ([docs](https://videoclaw-docs.vercel.app/reference/BRAND_AGENCY))
|
|
490
502
|
|
|
@@ -507,6 +519,7 @@ Two recent additions are worth calling out because they fix the two things that
|
|
|
507
519
|
- **Diegetic stills** (`vclaw video gen-image`) — generate an in-world **prop**, on-screen **screen** (UI/dashboard), or **overlay** graphic (e.g. a "SYSTEM COMPROMISED" alert) into `assets/props/`. Three backends via `--backend`: **gobananas** (default, `GO_BANANAS_API_KEY`, no OpenAI key), **openai** (gpt-image), and **flow** — Google Flow via useapi.net (`USEAPI_API_TOKEN` + `USEAPI_ACCOUNT_EMAIL`): `imagen-4` / `nano-banana` / `nano-banana-pro` auto-selected by reference count, repeated `--ref` (`reference_1..10`, local paths upload first) + `--character` (`character_1..7`, names resolve via `flow-characters.json`) slots, `--count`/`--seed`, and inline `@reference_N`/`@character_N` prompt markers validated **before any upload or spend**. Per-kind render directives (screens/overlays keep text, props suppress it); `--dry-run` prints the composed request with no spend. Composite it onto footage with the assemble overlay builders. Full guide: [`docs/CLI_REFERENCE.md`](https://videoclaw-docs.vercel.app/reference/CLI_REFERENCE).
|
|
508
520
|
- **Motion-graphics overlays** (`vclaw video overlay`) — composite a graphic onto a clip (time-gated, faded, positioned — pairs with `gen-image` to drop a generated screen/alert onto footage, **font-free + real-render validated**), or burn a pulsing `--alert` / boxed `--lower-third` caption (FFmpeg `drawtext`, needs a libfreetype build). `--dry-run` prints the planned ffmpeg command. Full guide: [`docs/CLI_REFERENCE.md`](https://videoclaw-docs.vercel.app/reference/CLI_REFERENCE).
|
|
509
521
|
- **Motion-overlay reels** (`vclaw video motion-overlay`) — turn an existing **talking-head video** into a reel with **motion-graphics overlays synced to the speech** via Google Flow's **Omni Flash V2V** (kinetic typography / icons / metaphors painted on the footage, original voice preserved). Plan/dry by default — ingest → Gemini STT (or `--transcript`) → sentence-boundary slice into ≤10s takes → per-take overlay-prompt composition → work folder + manifest + `--preview` review surface, **no spend**. `--execute --confirm-spend` renders each take (V2V → audio-restore → clip-stitch). Four layouts (`split` / `overlay` / `motion-only` / `avatar-host`); the `avatar-host` layout fills the frame with an **identity-locked character host** (go-bananas `generate_with_character` → Veo I2V) and needs `--gb-character <Name:ID>`. Full guide: [`docs/MOTION_OVERLAY.md`](https://videoclaw-docs.vercel.app/reference/MOTION_OVERLAY).
|
|
522
|
+
- **Style-locked motion graphics** (`vclaw video mograph-sheet` / `mograph-pack` / `mograph-render` / `mograph-logos`) — generate **fleets of explainer B-roll clips that share one look with zero drift**. A **motion sheet** (master style-board image + ≤120-word style lock, persisted as `artifacts/motion-sheet.json`) locks the visual system ONCE; a **motion pack** turns the VO into time-coded, **action-only** blocks tagged P1/P2/P3, gated by an anti-drift lint (style words and hex codes are banned from choreography). `mograph-render` is plan-only — it assembles `style lock + SHOT + AUDIO + AVOID` per block and compiles a **batch-queue manifest** for `batch-submit`/`batch-monitor` (free explore lane by default); v2v modes route to omni-flash. Clips carry **sound design only** (never music/VO — they sit under your own narration). Full guide: [`docs/MOGRAPH.md`](https://videoclaw-docs.vercel.app/reference/MOGRAPH).
|
|
510
523
|
|
|
511
524
|
- **Music videos** (`vclaw video music-video`) — the **vocal-synced, beat-exact assembler**. From a hand-authored config (song + clip registry + B-roll pools + an explicit vocal map *or* a transcript it auto-classifies into rap / hook / instrumental / outro by **word density**), it pins each performer to **their own vocal** time-aligned across B-roll cutaways (lips stay locked to the muxed song), cuts every segment **frame-exact** (`-frames:v`, never `-t`, so there is **zero cumulative drift**), then concats + applies one grade pass + muxes the song. **Fully local — ffmpeg only, no provider, no spend.** Plan/dry by default; `--execute` renders and asserts the built master matches the plan within one frame. Full guide: [`docs/CLI_REFERENCE.md`](https://videoclaw-docs.vercel.app/reference/CLI_REFERENCE).
|
|
512
525
|
|
|
@@ -635,6 +648,7 @@ Every stage writes a canonical JSON artifact under `projects/<slug>/artifacts/`.
|
|
|
635
648
|
- **character consistency** → `character-consistency.json`
|
|
636
649
|
- **consistency audit** → `consistency-audit.json`
|
|
637
650
|
- **motion-artifact QC** → `motion-artifact-qc.json`
|
|
651
|
+
- **keyframe QC** → `keyframe-qc.json`
|
|
638
652
|
|
|
639
653
|
Artifacts are append-only via `artifacts/history/` and every write emits a machine-readable event to `events/events.jsonl`.
|
|
640
654
|
|
|
@@ -647,6 +661,10 @@ Unit + CLI contract tests run via `node:test`:
|
|
|
647
661
|
```bash
|
|
648
662
|
npm test # build + full suite
|
|
649
663
|
npm run test:node # rerun compiled tests only
|
|
664
|
+
npm run test:coverage # critical security/execution coverage gate
|
|
665
|
+
npm run lint # source safety/style checks
|
|
666
|
+
npm run check:module-size # prevent oversized-module growth
|
|
667
|
+
npm run check:test-python # verify Pillow/fonttools test prerequisites
|
|
650
668
|
node --test dist/tests/cli-full-flow.test.js # single test file
|
|
651
669
|
```
|
|
652
670
|
|
|
@@ -1655,7 +1655,13 @@
|
|
|
1655
1655
|
const asset = (path) => {
|
|
1656
1656
|
const raw = String(path || "");
|
|
1657
1657
|
if (!raw) return "";
|
|
1658
|
-
if (/^https?:\/\//.test(raw))
|
|
1658
|
+
if (/^https?:\/\//.test(raw)) {
|
|
1659
|
+
const canonical = new URL(raw).href;
|
|
1660
|
+
const mediaId = inventory.remoteMediaIds?.[canonical];
|
|
1661
|
+
if (!mediaId) return "";
|
|
1662
|
+
const project = new URLSearchParams(window.location.search).get("project") || "";
|
|
1663
|
+
return `/api/media-proxy?project=${encodeURIComponent(project)}&id=${encodeURIComponent(mediaId)}`;
|
|
1664
|
+
}
|
|
1659
1665
|
let normalized = raw;
|
|
1660
1666
|
if (inventory.root && normalized.startsWith(inventory.root)) {
|
|
1661
1667
|
normalized = normalized.slice(inventory.root.length).replace(/^\/+/, "");
|
|
@@ -1706,6 +1712,7 @@
|
|
|
1706
1712
|
|
|
1707
1713
|
const inventory = {
|
|
1708
1714
|
root: "",
|
|
1715
|
+
remoteMediaIds: {},
|
|
1709
1716
|
projects: [
|
|
1710
1717
|
{ id: "fresh-proof", name: "fresh-proof", path: "projects/fresh-proof", status: "empty scaffold" }
|
|
1711
1718
|
],
|
|
@@ -1848,6 +1855,9 @@
|
|
|
1848
1855
|
next.mediaAssets = Array.isArray(api.mediaAssets)
|
|
1849
1856
|
? api.mediaAssets.map((item) => item.path)
|
|
1850
1857
|
: inventory.mediaAssets;
|
|
1858
|
+
next.remoteMediaIds = api.remoteMediaIds && typeof api.remoteMediaIds === "object"
|
|
1859
|
+
? api.remoteMediaIds
|
|
1860
|
+
: {};
|
|
1851
1861
|
next.referenceSheets = api.referenceSheets || { sheets: [] };
|
|
1852
1862
|
next.sceneCandidates = api.sceneCandidates || { scenes: [] };
|
|
1853
1863
|
next.sceneSelection = api.sceneSelection || { scenes: [] };
|
package/dist/cli/args.js
CHANGED
|
@@ -146,12 +146,12 @@ export function parseSceneCharacters(args) {
|
|
|
146
146
|
for (const assignment of assignments) {
|
|
147
147
|
const separatorIndex = assignment.indexOf(':');
|
|
148
148
|
if (separatorIndex < 0) {
|
|
149
|
-
throw new
|
|
149
|
+
throw new VclawError('invalid_flag_value', `Invalid --scene-character value: "${assignment}". Expected sceneIndex:name`, { flag: '--scene-character', value: assignment });
|
|
150
150
|
}
|
|
151
151
|
const sceneIndex = Number(assignment.slice(0, separatorIndex));
|
|
152
152
|
const name = assignment.slice(separatorIndex + 1).trim();
|
|
153
153
|
if (!Number.isInteger(sceneIndex) || sceneIndex < 0 || !name) {
|
|
154
|
-
throw new
|
|
154
|
+
throw new VclawError('invalid_flag_value', `Invalid --scene-character value: "${assignment}". Expected sceneIndex:name`, { flag: '--scene-character', value: assignment });
|
|
155
155
|
}
|
|
156
156
|
const current = charactersByScene.get(sceneIndex) ?? [];
|
|
157
157
|
current.push(name);
|
|
@@ -174,10 +174,10 @@ export function parseSceneColorStates(args) {
|
|
|
174
174
|
const sceneIndex = separatorIndex >= 0 ? Number(assignment.slice(0, separatorIndex)) : NaN;
|
|
175
175
|
const gradeId = separatorIndex >= 0 ? assignment.slice(separatorIndex + 1).trim() : '';
|
|
176
176
|
if (!Number.isInteger(sceneIndex) || sceneIndex < 0 || !gradeId) {
|
|
177
|
-
throw new
|
|
177
|
+
throw new VclawError('invalid_flag_value', `Invalid --scene-color value: "${assignment}". Expected sceneIndex:gradeId`, { flag: '--scene-color', value: assignment });
|
|
178
178
|
}
|
|
179
179
|
if (!GRADE_FILTER_IDS.includes(gradeId)) {
|
|
180
|
-
throw new
|
|
180
|
+
throw new VclawError('invalid_flag_value', `Invalid --scene-color grade "${gradeId}". Known grades: ${GRADE_FILTER_IDS.join(', ')}`, { flag: '--scene-color', value: assignment });
|
|
181
181
|
}
|
|
182
182
|
colorByScene.set(sceneIndex, gradeId);
|
|
183
183
|
}
|
|
@@ -196,7 +196,7 @@ export function parseSceneVoicePresets(args) {
|
|
|
196
196
|
const sceneIndex = separatorIndex >= 0 ? Number(assignment.slice(0, separatorIndex)) : NaN;
|
|
197
197
|
const preset = separatorIndex >= 0 ? assignment.slice(separatorIndex + 1).trim() : '';
|
|
198
198
|
if (!Number.isInteger(sceneIndex) || sceneIndex < 0 || !preset) {
|
|
199
|
-
throw new
|
|
199
|
+
throw new VclawError('invalid_flag_value', `Invalid --scene-voice value: "${assignment}". Expected sceneIndex:preset`, { flag: '--scene-voice', value: assignment });
|
|
200
200
|
}
|
|
201
201
|
voiceByScene.set(sceneIndex, preset);
|
|
202
202
|
}
|
|
@@ -216,7 +216,7 @@ export function parseSceneRefVideos(args) {
|
|
|
216
216
|
const sceneIndex = separatorIndex >= 0 ? Number(assignment.slice(0, separatorIndex)) : NaN;
|
|
217
217
|
const mediaId = separatorIndex >= 0 ? assignment.slice(separatorIndex + 1).trim() : '';
|
|
218
218
|
if (!Number.isInteger(sceneIndex) || sceneIndex < 0 || !mediaId) {
|
|
219
|
-
throw new
|
|
219
|
+
throw new VclawError('invalid_flag_value', `Invalid --scene-ref-video value: "${assignment}". Expected sceneIndex:mediaId`, { flag: '--scene-ref-video', value: assignment });
|
|
220
220
|
}
|
|
221
221
|
refVideoByScene.set(sceneIndex, mediaId);
|
|
222
222
|
}
|
|
@@ -235,7 +235,7 @@ export function parseSceneFirstFrames(args) {
|
|
|
235
235
|
for (const token of assignment.split(',')) {
|
|
236
236
|
const sceneIndex = Number(token.trim());
|
|
237
237
|
if (!Number.isInteger(sceneIndex) || sceneIndex < 0) {
|
|
238
|
-
throw new
|
|
238
|
+
throw new VclawError('invalid_flag_value', `Invalid --scene-first-frame value: "${assignment}". Expected sceneIndex or sceneIndex,sceneIndex`, { flag: '--scene-first-frame', value: assignment });
|
|
239
239
|
}
|
|
240
240
|
firstFrameScenes.add(sceneIndex);
|
|
241
241
|
}
|
package/dist/cli/args.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"args.js","sourceRoot":"","sources":["../../src/cli/args.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"args.js","sourceRoot":"","sources":["../../src/cli/args.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AAEzE,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC;IAClC,SAAS;IACT,WAAW;IACX,aAAa;IACb,QAAQ;IACR,OAAO;IACP,SAAS;IACT,QAAQ;IACR,UAAU;IACV,YAAY;IACZ,OAAO;IACP,KAAK;CACN,CAAC,CAAC;AAEH,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;QAC1C,MAAM,IAAI,UAAU,CAClB,cAAc,EACd,4CAA4C,KAAK,CAAC,MAAM,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EACrF,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAClC,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,UAAU,CAClB,cAAc,EACd,mEAAmE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI;YAC5F,6HAA6H,EAC7H,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAC1C,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,UAAU,CAClB,cAAc,EACd,wEAAwE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK;YAClG,uFAAuF,EACvF,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,CACnC,CAAC;IACJ,CAAC;IACD,IAAI,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,UAAU,CAClB,cAAc,EACd,oBAAoB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,6CAA6C;YACtF,aAAa,CAAC,GAAG,mBAAmB,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAC1D,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,CACpC,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,UAAU,CAClB,cAAc,EACd,iEAAiE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAC1F,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,CACzC,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAAc,EAAE,IAAY;IACzD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,IAAI,KAAK,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IAChC,OAAO,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;AACzB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAAe;IAClD,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,EAAE,kBAAkB,CAAC,IAAI,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACxF,IAAI,IAAI;YAAE,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IACD,OAAO,2BAA2B,EAAE,CAAC;AACvC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAAc,EAAE,IAAI,GAAG,WAAW;IACrE,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACzC,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC1C,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,UAAU,CAClB,cAAc,EACd,GAAG,IAAI,UAAU,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,8CAA8C;YACpF,iCAAiC,IAAI,GAAG,EACxC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAChD,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,UAAU,CAClB,cAAc,EACd,GAAG,IAAI,UAAU,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,+BAA+B;YACrE,oFAAoF,EACpF,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CACzC,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAc,EAAE,IAAY;IAC9D,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACpD,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;YACzB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,IAAc,EAAE,IAAY;IACnE,MAAM,GAAG,GAAG,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACvC,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACxC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,UAAU,CAAC,oBAAoB,EAAE,qBAAqB,IAAI,qCAAqC,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;IACxI,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,IAAc,EAAE,IAAY;IACtE,MAAM,GAAG,GAAG,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACvC,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACxC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,UAAU,CAAC,oBAAoB,EAAE,qBAAqB,IAAI,yCAAyC,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;IAC5I,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAc;IAChD,MAAM,GAAG,GAAG,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC5C,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,MAAM,IAAI,UAAU,CAAC,uBAAuB,EAAE,8BAA8B,EAAE,EAAE,OAAO,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAC1G,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,UAAU,CAAC,oBAAoB,EAAE,0BAA0B,GAAG,oCAAoC,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;IACjJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,IAAc;IACjD,MAAM,WAAW,GAAG,mBAAmB,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;IACnE,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAoB,CAAC;IACtD,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC/C,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,UAAU,CAAC,oBAAoB,EAAE,qCAAqC,UAAU,6BAA6B,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;QAC7K,CAAC;QACD,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC;QAC/D,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACzD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAC7D,MAAM,IAAI,UAAU,CAAC,oBAAoB,EAAE,qCAAqC,UAAU,6BAA6B,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;QAC7K,CAAC;QACD,MAAM,OAAO,GAAG,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;QACxD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,iBAAiB,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAAc;IAClD,MAAM,WAAW,GAAG,mBAAmB,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;IAC/D,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC/C,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC/C,MAAM,UAAU,GAAG,cAAc,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAC3F,MAAM,OAAO,GAAG,cAAc,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvF,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAChE,MAAM,IAAI,UAAU,CAAC,oBAAoB,EAAE,iCAAiC,UAAU,gCAAgC,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;QACxK,CAAC;QACD,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACxC,MAAM,IAAI,UAAU,CAAC,oBAAoB,EAAE,gCAAgC,OAAO,oBAAoB,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;QACrL,CAAC;QACD,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAAc;IACnD,MAAM,WAAW,GAAG,mBAAmB,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;IAC/D,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC/C,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC/C,MAAM,UAAU,GAAG,cAAc,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAC3F,MAAM,MAAM,GAAG,cAAc,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtF,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAC/D,MAAM,IAAI,UAAU,CAAC,oBAAoB,EAAE,iCAAiC,UAAU,+BAA+B,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;QACvK,CAAC;QACD,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAc;IAChD,MAAM,WAAW,GAAG,mBAAmB,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;IACnE,MAAM,eAAe,GAAG,IAAI,GAAG,EAAkB,CAAC;IAClD,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC/C,MAAM,UAAU,GAAG,cAAc,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAC3F,MAAM,OAAO,GAAG,cAAc,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvF,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAChE,MAAM,IAAI,UAAU,CAAC,oBAAoB,EAAE,qCAAqC,UAAU,gCAAgC,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;QAChL,CAAC;QACD,eAAe,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,eAAe,CAAC;AACzB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAAc;IAClD,MAAM,WAAW,GAAG,mBAAmB,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC;IACrE,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;IAC3C,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1C,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YACxC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;gBACpD,MAAM,IAAI,UAAU,CAAC,oBAAoB,EAAE,uCAAuC,UAAU,iDAAiD,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;YACrM,CAAC;YACD,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IACD,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAa;IAC1C,OAAO,KAAK;SACT,IAAI,EAAE;SACN,WAAW,EAAE;SACb,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC;SAC3B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;SACvB,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,KAAa;IACtC,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,IAAc,EACd,MAAe,EACf,OAAe,EACf,QAAgB;IAEhB,IAAI,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QAAE,OAAO;IACvD,MAAM,IAAI,UAAU,CAClB,6BAA6B,EAC7B,SAAS,OAAO,sBAAsB,QAAQ,iGAAiG,EAC/I,EAAE,OAAO,EAAE,IAAI,EAAE,6BAA6B,EAAE,CACjD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,IAAc;IACvD,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACjD,MAAM,OAAO,GAAG,0BAA0B,CAAC;QACzC,WAAW,EAAE,cAAc,CAAC,IAAI,EAAE,gBAAgB,CAAC;QACnD,OAAO,EAAE,cAAc,CAAC,IAAI,EAAE,WAAW,CAAC;QAC1C,UAAU,EAAE,cAAc,CAAC,IAAI,EAAE,cAAc,CAAC;QAChD,aAAa,EAAE,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;QACrH,WAAW,EAAE,cAAc,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;QACtG,QAAQ,EAAE,cAAc,CAAC,IAAI,EAAE,aAAa,CAAC;KAC9C,CAAC,CAAC;IACH,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,qCAAqC,CACnD,QAA4B,EAC5B,OAAgC;IAEhC,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC/D,IAAI,CAAC,UAAU;QAAE,OAAO,OAAO,CAAC;IAEhC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QACzB,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,gBAAgB,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC5F,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC;QAC/B,CAAC;aAAM,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/D,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC;QAC/B,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,KAStC;IACC,OAAO;QACL,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,GAAG,CAAC,OAAO,KAAK,CAAC,oBAAoB,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,KAAK,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/G,GAAG,CAAC,OAAO,KAAK,CAAC,mBAAmB,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,KAAK,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5G,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9C,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,GAAG,CAAC,KAAK,CAAC,gBAAgB,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,MAAM,GAAG,CAAC;YAC1E,CAAC,CAAC,EAAE,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,EAAE;YAC9C,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClD,CAAC;AACJ,CAAC"}
|
|
@@ -18,4 +18,28 @@ export declare function handleVideoConsistencyAudit(args: string[]): Promise<voi
|
|
|
18
18
|
* operator knows the audit could not actually look at the frames.
|
|
19
19
|
*/
|
|
20
20
|
export declare function handleVideoMotionQc(args: string[]): Promise<void>;
|
|
21
|
+
/**
|
|
22
|
+
* `vclaw video keyframe-qc` — fail-fast pre-render keyframe readiness gate.
|
|
23
|
+
* Deterministic and offline (pure Node fs, PNG IHDR header parse — no vision
|
|
24
|
+
* model, no spend): given the storyboard's scene count it verifies every scene
|
|
25
|
+
* has `references/scene<i>-keyframe.png`, that each is a readable PNG, and that
|
|
26
|
+
* all keyframes share the dominant WxH. Persists `artifacts/keyframe-qc.json`
|
|
27
|
+
* and exits `ExitCode.GATE` (3) on status 'fail' so an `&&` chain or driver
|
|
28
|
+
* halts BEFORE `produce` spends on drifted/missing keyframes. A uniform but
|
|
29
|
+
* non-1280x720 set is advisory-only ('pass'). `--json` keeps the same
|
|
30
|
+
* machine-readable output (it always emits JSON).
|
|
31
|
+
*/
|
|
32
|
+
export declare function handleVideoKeyframeQc(args: string[]): Promise<void>;
|
|
33
|
+
/**
|
|
34
|
+
* `vclaw video clip-qc` — per-second headcount over every rendered clip.
|
|
35
|
+
*
|
|
36
|
+
* The gap it fills: `consistency-audit` samples ONE mid-frame (identity) and
|
|
37
|
+
* `motion-qc` samples nine looking for morph/vanish artefacts. Neither counts
|
|
38
|
+
* people, so a figure walking into frame at t≈4s is invisible to both — and to
|
|
39
|
+
* the single-frame grabs an operator does by hand. Eight clips shipped that way.
|
|
40
|
+
*
|
|
41
|
+
* The filmstrip lane runs WITHOUT a vision key, because the contact sheet is
|
|
42
|
+
* what a human actually reads and is what exposed the original defect.
|
|
43
|
+
*/
|
|
44
|
+
export declare function handleVideoClipQc(args: string[]): Promise<void>;
|
|
21
45
|
//# sourceMappingURL=analysis.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analysis.d.ts","sourceRoot":"","sources":["../../../src/cli/handlers/analysis.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"analysis.d.ts","sourceRoot":"","sources":["../../../src/cli/handlers/analysis.ts"],"names":[],"mappings":"AAgCA,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAuEtE;AAED,wBAAsB,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAsB3E;AAED;;;;;;;GAOG;AACH,wBAAsB,2BAA2B,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA+B/E;AAED;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA4CvE;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA8BzE;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAoIrE"}
|