@koda-sl/baker-cli 0.281.8-dev.1f1c09c80 → 0.281.9-dev.1f1c09c80

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cli.js CHANGED
@@ -33377,6 +33377,12 @@ registerSchema({
33377
33377
  required: false,
33378
33378
  description: "Cast this avatar as the ad's recurring person \u2014 the same flag, the same word and the same meaning as on `baker studio generate` and `baker studio animate`. Every beat they appear in is grounded on their identity sheet and their subject description is copied verbatim, so it is one face throughout and the same face as the rest of the company's work. Overrides `cast.avatar` in the spec. `baker avatars list` shows who there is."
33379
33379
  },
33380
+ "video-model": {
33381
+ type: "string",
33382
+ required: false,
33383
+ description: "Curated video model id for the shots. Only for comparing models on one brief.",
33384
+ enum: [...VIDEO_GENERATE_MODELS]
33385
+ },
33380
33386
  slug: {
33381
33387
  type: "string",
33382
33388
  required: false,
@@ -33397,6 +33403,11 @@ var scaffoldAdCommand = defineCommand105({
33397
33403
  args: {
33398
33404
  spec: { type: "string", required: true, description: "Path to the ad spec JSON" },
33399
33405
  avatar: { type: "string", required: false, description: "Cast this avatar as the ad's recurring person \u2014 the same flag, the same word and the same meaning as on `baker studio generate` and `baker studio animate`. Every beat they appear in is grounded on their identity sheet and their subject description is copied verbatim, so it is one face throughout and the same face as the rest of the company's work. Overrides `cast.avatar` in the spec. `baker avatars list` shows who there is." },
33406
+ "video-model": {
33407
+ type: "string",
33408
+ required: false,
33409
+ description: "Which curated video model renders the shots. Defaults to the one the lane picks; pass this only to compare models on the same brief, because mixing models across a campaign changes how the same face reads. `baker canvas catalog` lists what each one takes."
33410
+ },
33400
33411
  slug: {
33401
33412
  type: "string",
33402
33413
  required: false,
@@ -33475,6 +33486,20 @@ var scaffoldAdCommand = defineCommand105({
33475
33486
  process.exit(1);
33476
33487
  return;
33477
33488
  }
33489
+ const requestedModel = args["video-model"]?.trim();
33490
+ if (requestedModel && !VIDEO_GENERATE_MODELS.includes(requestedModel)) {
33491
+ writeJson({
33492
+ ok: false,
33493
+ error: {
33494
+ code: "VALIDATION_ERROR",
33495
+ message: `\`${requestedModel}\` is not one of the curated video models.`,
33496
+ fix: `Pick one of: ${VIDEO_GENERATE_MODELS.join(", ")}. Leave --video-model off to use the default.`
33497
+ }
33498
+ });
33499
+ process.exit(1);
33500
+ return;
33501
+ }
33502
+ const chosenVideoModel = requestedModel ?? DEFAULT_VIDEO_GENERATE_MODEL;
33478
33503
  const handle = flagAvatar || spec.data.cast?.avatar?.trim();
33479
33504
  let avatar = null;
33480
33505
  let avatarError = null;
@@ -33609,7 +33634,7 @@ var scaffoldAdCommand = defineCommand105({
33609
33634
  // The sheet on the SAME model as the frames it feeds. A sheet from another
33610
33635
  // generator hands every frame a look its own model then reinterprets.
33611
33636
  sheetModel: AD_IMAGE_MODEL,
33612
- videoModel: DEFAULT_VIDEO_GENERATE_MODEL,
33637
+ videoModel: chosenVideoModel,
33613
33638
  overlayCompositionPath: path24.relative(outDir, compositionDest),
33614
33639
  captionsCompositionPath: path24.relative(outDir, captionsDest),
33615
33640
  blueprintPath: path24.relative(outDir, blueprintPath),