@koda-sl/baker-cli 0.296.0-dev.f25aa60dd → 0.297.0-dev.306c0952c
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 +17 -9
- package/dist/cli.js.map +1 -1
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -38223,6 +38223,15 @@ var scaffoldStaticAdCommand = defineCommand110({
|
|
|
38223
38223
|
}
|
|
38224
38224
|
});
|
|
38225
38225
|
|
|
38226
|
+
// src/commands/studio/avatarModel.ts
|
|
38227
|
+
function pinnedModelHint(input) {
|
|
38228
|
+
if (!input.avatar || !input.model) return null;
|
|
38229
|
+
if (input.model === DEFAULT_VIDEO_GENERATE_MODEL) return null;
|
|
38230
|
+
const speaks = input.generateAudio ?? true;
|
|
38231
|
+
if (!speaks) return null;
|
|
38232
|
+
return `You pinned --model ${input.model} on a speaking avatar. Without it this clip routes to ${DEFAULT_VIDEO_GENERATE_MODEL}, which was chosen for exactly this case: the better picture, both orientations, and audio always on. Drop --model unless the user asked for a specific one \u2014 and note ${input.model} may not take the length or the reference you are counting on.`;
|
|
38233
|
+
}
|
|
38234
|
+
|
|
38226
38235
|
// src/commands/canvas/scaffold-ad.ts
|
|
38227
38236
|
import { copyFile, cp, mkdir as mkdir7, readFile as readFile16, stat as stat4, writeFile as writeFile9 } from "fs/promises";
|
|
38228
38237
|
import path24 from "path";
|
|
@@ -38954,6 +38963,10 @@ function resolveShippedCanvasDir(name, startDir, exists2 = existsSync5, maxDepth
|
|
|
38954
38963
|
}
|
|
38955
38964
|
|
|
38956
38965
|
// src/commands/canvas/scaffold-ad.ts
|
|
38966
|
+
function pinnedOnAvatar(handle, model) {
|
|
38967
|
+
const hint = pinnedModelHint({ avatar: handle ?? void 0, model, generateAudio: true });
|
|
38968
|
+
return hint ? [hint] : [];
|
|
38969
|
+
}
|
|
38957
38970
|
var AD_IMAGE_MODEL = "openai/gpt-image-2.5-sunburst";
|
|
38958
38971
|
var SHIPPED_COMPOSITION_DIR = resolveShippedCanvasDir("video-overlay-composition", import.meta.dirname);
|
|
38959
38972
|
var SHIPPED_CAPTIONS_DIR = resolveShippedCanvasDir("tiktok-captions-composition", import.meta.dirname);
|
|
@@ -39276,6 +39289,10 @@ var scaffoldAdCommand = defineCommand111({
|
|
|
39276
39289
|
ok: true,
|
|
39277
39290
|
data: { canvas: outPath, beats: spec.data.beats.length, slug },
|
|
39278
39291
|
hints: [
|
|
39292
|
+
// Same reasoning as `studio animate`: a cast avatar that speaks routes to the
|
|
39293
|
+
// default model on purpose, and pinning one discards that silently. An ad's
|
|
39294
|
+
// beats always speak, so there is no silent case to exclude here.
|
|
39295
|
+
...pinnedOnAvatar(handle, requestedModel),
|
|
39279
39296
|
// `--until frames` on anything carrying a face or a mark, because that is where
|
|
39280
39297
|
// getting it wrong is expensive: the pictures cost a fraction of the clips, and
|
|
39281
39298
|
// every defect anyone has caught in a finished ad was visible in them. The run
|
|
@@ -57382,15 +57399,6 @@ import { defineCommand as defineCommand208 } from "citty";
|
|
|
57382
57399
|
// src/commands/studio/animate.ts
|
|
57383
57400
|
import { defineCommand as defineCommand200 } from "citty";
|
|
57384
57401
|
|
|
57385
|
-
// src/commands/studio/avatarModel.ts
|
|
57386
|
-
function pinnedModelHint(input) {
|
|
57387
|
-
if (!input.avatar || !input.model) return null;
|
|
57388
|
-
if (input.model === DEFAULT_VIDEO_GENERATE_MODEL) return null;
|
|
57389
|
-
const speaks = input.generateAudio ?? true;
|
|
57390
|
-
if (!speaks) return null;
|
|
57391
|
-
return `You pinned --model ${input.model} on a speaking avatar. Without it this clip routes to ${DEFAULT_VIDEO_GENERATE_MODEL}, which was chosen for exactly this case: the better picture, both orientations, and audio always on. Drop --model unless the user asked for a specific one \u2014 and note ${input.model} may not take the length or the reference you are counting on.`;
|
|
57392
|
-
}
|
|
57393
|
-
|
|
57394
57402
|
// src/commands/studio/batch.ts
|
|
57395
57403
|
function projectBatch(generation, full) {
|
|
57396
57404
|
const compact3 = {
|