@bitmagic/asset-core 0.2.19-dev.0 → 0.2.19-dev.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -51,17 +51,17 @@ export declare const animationParamsSchema: z.ZodObject<{
51
51
  length?: number | undefined;
52
52
  loop?: boolean | undefined;
53
53
  assetId?: string | undefined;
54
- model?: string | undefined;
55
54
  seed?: number | undefined;
55
+ model?: string | undefined;
56
56
  inPlace?: boolean | undefined;
57
57
  }, {
58
58
  description: string;
59
59
  length?: number | undefined;
60
60
  loop?: boolean | undefined;
61
61
  assetId?: string | undefined;
62
+ seed?: number | undefined;
62
63
  model?: string | undefined;
63
64
  cfgScale?: number | undefined;
64
- seed?: number | undefined;
65
65
  footIk?: boolean | undefined;
66
66
  inPlace?: boolean | undefined;
67
67
  }>;
@@ -0,0 +1,112 @@
1
+ import { z } from 'zod';
2
+ import type { AssetResultBase, GenerateDeps, WorldPatch } from '../types.js';
3
+ /**
4
+ * Runware video: a prompt (and optionally a first frame) becomes a short 720p
5
+ * clip — a cutscene stinger, an animated cover, a background loop.
6
+ *
7
+ * The asset row this writes is `type: 'video'`, which the engine already knows
8
+ * how to play: `engine.playVideo(assetId)` mounts a fullscreen overlay and
9
+ * resolves the URL out of `assets[]`. That API shipped with no way to produce
10
+ * anything for it; this is the producer.
11
+ *
12
+ * ALWAYS a job. asset-forger's route has no synchronous sibling because Runware
13
+ * video has none — `deliveryMethod` accepts nothing but `async` — and a run
14
+ * takes 40 s to several minutes. Same shape as video-to-motion, for the same
15
+ * reason.
16
+ */
17
+ /** The Forger route's own bounds (asset-forger `src/routes/video.ts`), restated so a bad ask fails here. */
18
+ export declare const VIDEO_MIN_SECONDS = 1;
19
+ export declare const VIDEO_MAX_SECONDS = 10;
20
+ export declare const VIDEO_DEFAULT_SECONDS = 5;
21
+ export declare const VIDEO_JOBS_ENDPOINT = "/ai/v1/generate-video/jobs";
22
+ /**
23
+ * Measured 2026-09 against the live Forger: 37-44 s for text-to-video, ~200 s
24
+ * with a first frame. Ten minutes is far past both while staying under the
25
+ * video-to-motion lane's twenty, so a wedged job is given up on rather than
26
+ * held open for a third of an hour.
27
+ */
28
+ export declare const VIDEO_TIMEOUT_MS: number;
29
+ export declare const videoParamsSchema: z.ZodObject<{
30
+ prompt: z.ZodString;
31
+ durationSeconds: z.ZodDefault<z.ZodNumber>;
32
+ name: z.ZodOptional<z.ZodString>;
33
+ imageUrl: z.ZodOptional<z.ZodString>;
34
+ seed: z.ZodOptional<z.ZodNumber>;
35
+ assetId: z.ZodOptional<z.ZodString>;
36
+ }, "strict", z.ZodTypeAny, {
37
+ prompt: string;
38
+ durationSeconds: number;
39
+ name?: string | undefined;
40
+ assetId?: string | undefined;
41
+ imageUrl?: string | undefined;
42
+ seed?: number | undefined;
43
+ }, {
44
+ prompt: string;
45
+ name?: string | undefined;
46
+ durationSeconds?: number | undefined;
47
+ assetId?: string | undefined;
48
+ imageUrl?: string | undefined;
49
+ seed?: number | undefined;
50
+ }>;
51
+ export type VideoParams = z.input<typeof videoParamsSchema>;
52
+ /** Where the clip landed, carried on the result so a caller that never writes world.json still has it. */
53
+ export interface VideoUrls {
54
+ /** The MP4 — H.264, faststart-remuxed, and what the engine plays. */
55
+ videoUrl: string;
56
+ /** The VP9 sibling, ~4x smaller. Absent if the Forger did not make one. */
57
+ webmUrl?: string;
58
+ videoId: string;
59
+ durationSeconds: number;
60
+ width?: number;
61
+ height?: number;
62
+ }
63
+ export type VideoResult = AssetResultBase & {
64
+ /**
65
+ * The clip's length, and what per-second billing reads (api-server's cli-assets.ts prices
66
+ * `lengthSeconds ?? 1`). Always set on success: the Forger's probed length, or the requested
67
+ * length when the Forger did not report one — never left for the biller to default to a second.
68
+ */
69
+ lengthSeconds?: number;
70
+ video?: VideoUrls;
71
+ sizeBytes?: number;
72
+ /** True once the Forger reported a stored video URL. Unset on any failure. */
73
+ billable?: boolean;
74
+ };
75
+ /** What asset-forger's job status carries in `result` once it succeeds. */
76
+ export interface VideoJobResult {
77
+ videoUrl: string;
78
+ webmUrl?: string;
79
+ videoId: string;
80
+ format: string;
81
+ durationSeconds: number;
82
+ width?: number;
83
+ height?: number;
84
+ model?: string;
85
+ cost?: number;
86
+ seed?: number;
87
+ }
88
+ /** Wire body of the asset-forger job POST. */
89
+ export interface VideoJobRequest {
90
+ prompt: string;
91
+ durationSeconds: number;
92
+ imageUrl?: string;
93
+ seed?: number;
94
+ }
95
+ export declare function buildVideoJobRequest(input: z.output<typeof videoParamsSchema>): VideoJobRequest;
96
+ /**
97
+ * The world.json row a finished job produces. Exported on its own so a host
98
+ * that polls the Forger job itself builds the same asset row as the in-process
99
+ * path — the same split `buildAnimationFromVideoPatch` exists for.
100
+ *
101
+ * `id` is what game code passes to `engine.playVideo()`, so a pre-minted
102
+ * `assetId` makes `engine.playVideo('intro')` resolve.
103
+ */
104
+ export declare function buildVideoPatch(input: z.output<typeof videoParamsSchema>, result: VideoJobResult, sizeBytes?: number): WorldPatch;
105
+ /**
106
+ * Turn the Forger's failure into copy the creator can act on. The job's
107
+ * `error.kind` travels inside the thrown message (postJobAndWait stringifies
108
+ * it), so match on that rather than parsing the JSON back out.
109
+ */
110
+ export declare function describeVideoFailure(error: Error): string;
111
+ export declare function generateVideo(params: VideoParams, deps: GenerateDeps): Promise<VideoResult>;
112
+ //# sourceMappingURL=video.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"video.d.ts","sourceRoot":"","sources":["../../src/generators/video.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAK7E;;;;;;;;;;;;;GAaG;AAEH,4GAA4G;AAC5G,eAAO,MAAM,iBAAiB,IAAI,CAAC;AACnC,eAAO,MAAM,iBAAiB,KAAK,CAAC;AACpC,eAAO,MAAM,qBAAqB,IAAI,CAAC;AAEvC,eAAO,MAAM,mBAAmB,+BAA+B,CAAC;AAEhE;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,QAAiB,CAAC;AAE/C,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;EAanB,CAAC;AAEZ,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,0GAA0G;AAC1G,MAAM,WAAW,SAAS;IACxB,qEAAqE;IACrE,QAAQ,EAAE,MAAM,CAAC;IACjB,2EAA2E;IAC3E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,WAAW,GAAG,eAAe,GAAG;IAC1C;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,2EAA2E;AAC3E,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,8CAA8C;AAC9C,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,iBAAiB,CAAC,GAAG,eAAe,CAO/F;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,iBAAiB,CAAC,EACzC,MAAM,EAAE,cAAc,EACtB,SAAS,CAAC,EAAE,MAAM,GACjB,UAAU,CAmBZ;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAiBzD;AAED,wBAAsB,aAAa,CACjC,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,YAAY,GACjB,OAAO,CAAC,WAAW,CAAC,CAqEtB"}
@@ -0,0 +1,157 @@
1
+ import { z } from 'zod';
2
+ import { fail, ok } from '../result.js';
3
+ import { fetchContentLength } from '../http.js';
4
+ import { formatZodIssues } from '../validation.js';
5
+ /**
6
+ * Runware video: a prompt (and optionally a first frame) becomes a short 720p
7
+ * clip — a cutscene stinger, an animated cover, a background loop.
8
+ *
9
+ * The asset row this writes is `type: 'video'`, which the engine already knows
10
+ * how to play: `engine.playVideo(assetId)` mounts a fullscreen overlay and
11
+ * resolves the URL out of `assets[]`. That API shipped with no way to produce
12
+ * anything for it; this is the producer.
13
+ *
14
+ * ALWAYS a job. asset-forger's route has no synchronous sibling because Runware
15
+ * video has none — `deliveryMethod` accepts nothing but `async` — and a run
16
+ * takes 40 s to several minutes. Same shape as video-to-motion, for the same
17
+ * reason.
18
+ */
19
+ /** The Forger route's own bounds (asset-forger `src/routes/video.ts`), restated so a bad ask fails here. */
20
+ export const VIDEO_MIN_SECONDS = 1;
21
+ export const VIDEO_MAX_SECONDS = 10;
22
+ export const VIDEO_DEFAULT_SECONDS = 5;
23
+ export const VIDEO_JOBS_ENDPOINT = '/ai/v1/generate-video/jobs';
24
+ /**
25
+ * Measured 2026-09 against the live Forger: 37-44 s for text-to-video, ~200 s
26
+ * with a first frame. Ten minutes is far past both while staying under the
27
+ * video-to-motion lane's twenty, so a wedged job is given up on rather than
28
+ * held open for a third of an hour.
29
+ */
30
+ export const VIDEO_TIMEOUT_MS = 10 * 60 * 1000;
31
+ export const videoParamsSchema = z.object({
32
+ prompt: z.string().min(1)
33
+ .describe('What happens in the clip (subject, motion, camera, mood)'),
34
+ durationSeconds: z.number().min(VIDEO_MIN_SECONDS).max(VIDEO_MAX_SECONDS).default(VIDEO_DEFAULT_SECONDS)
35
+ .describe('Clip length in seconds; billed per second'),
36
+ name: z.string().min(1).max(80).optional()
37
+ .describe('Display name of the asset, and what game code passes to engine.playVideo(). Defaults to the prompt.'),
38
+ imageUrl: z.string().url().optional()
39
+ .describe('Public URL of a first frame (image-to-video). Much slower than text-to-video, and the output aspect ratio follows the image rather than the 16:9 default.'),
40
+ seed: z.number().int().optional()
41
+ .describe('Fixed seed, to re-roll the same clip'),
42
+ assetId: z.string().min(1).optional()
43
+ .describe('Pre-generated asset id; the generator id is used when absent'),
44
+ }).strict();
45
+ export function buildVideoJobRequest(input) {
46
+ return {
47
+ prompt: input.prompt,
48
+ durationSeconds: input.durationSeconds,
49
+ ...(input.imageUrl !== undefined && { imageUrl: input.imageUrl }),
50
+ ...(input.seed !== undefined && { seed: input.seed }),
51
+ };
52
+ }
53
+ /**
54
+ * The world.json row a finished job produces. Exported on its own so a host
55
+ * that polls the Forger job itself builds the same asset row as the in-process
56
+ * path — the same split `buildAnimationFromVideoPatch` exists for.
57
+ *
58
+ * `id` is what game code passes to `engine.playVideo()`, so a pre-minted
59
+ * `assetId` makes `engine.playVideo('intro')` resolve.
60
+ */
61
+ export function buildVideoPatch(input, result, sizeBytes) {
62
+ return {
63
+ type: 'pushRoot',
64
+ path: ['assets'],
65
+ value: {
66
+ id: input.assetId ?? result.videoId,
67
+ name: input.name ?? input.prompt,
68
+ url: result.videoUrl,
69
+ type: 'video',
70
+ format: result.format,
71
+ prompt: input.prompt,
72
+ source: 'generated',
73
+ size: sizeBytes ?? 0,
74
+ durationSeconds: result.durationSeconds,
75
+ ...(result.webmUrl !== undefined && { webmUrl: result.webmUrl }),
76
+ ...(result.width !== undefined && { width: result.width }),
77
+ ...(result.height !== undefined && { height: result.height }),
78
+ },
79
+ };
80
+ }
81
+ /**
82
+ * Turn the Forger's failure into copy the creator can act on. The job's
83
+ * `error.kind` travels inside the thrown message (postJobAndWait stringifies
84
+ * it), so match on that rather than parsing the JSON back out.
85
+ */
86
+ export function describeVideoFailure(error) {
87
+ const text = error.message;
88
+ // Runware's own moderation, seen live on a bland test prompt: worth naming,
89
+ // because the creator's instinct is otherwise to retry the same words.
90
+ if (text.includes('invalidProviderContent')) {
91
+ return 'The video provider\'s content filter rejected this prompt. Rephrase it — describing a '
92
+ + 'scene and its motion works better than naming people, brands or styles.';
93
+ }
94
+ if (text.includes('invalid-request')) {
95
+ const detail = text.match(/"message":"([^"]*)"/)?.[1];
96
+ return detail ? `The video could not be generated: ${detail}` : 'The video request was refused as invalid.';
97
+ }
98
+ if (text.includes('exceeded client timeout') || text.includes('timeout')) {
99
+ return 'Video generation timed out. A first frame (--image) is much slower than a prompt alone; '
100
+ + 'try a shorter clip, or the same prompt without an image.';
101
+ }
102
+ return text;
103
+ }
104
+ export async function generateVideo(params, deps) {
105
+ const { forger, logger, onProgress } = deps;
106
+ const parsed = videoParamsSchema.safeParse(params);
107
+ if (!parsed.success) {
108
+ logger.warn({ err: parsed.error }, '[video] Invalid parameters');
109
+ return fail(formatZodIssues(parsed.error));
110
+ }
111
+ const input = parsed.data;
112
+ if (!forger.hasCredentials()) {
113
+ logger.error('[video] Missing Asset Forger credentials');
114
+ return fail(forger.getMissingCredentialsMessage());
115
+ }
116
+ onProgress(input.imageUrl
117
+ ? `Animating the image into ${input.durationSeconds}s of video (this takes a few minutes): ${input.prompt}`
118
+ : `Generating ${input.durationSeconds}s of video: ${input.prompt}`);
119
+ const request = buildVideoJobRequest(input);
120
+ logger.info({ payload: request }, '[video] Submitting job');
121
+ let result;
122
+ try {
123
+ result = await forger.postJobAndWait(VIDEO_JOBS_ENDPOINT, request, 'Video', { overallTimeoutMs: VIDEO_TIMEOUT_MS });
124
+ }
125
+ catch (error) {
126
+ const err = error instanceof Error ? error : new Error(String(error));
127
+ logger.error({ err }, '[video] Job failed');
128
+ return fail(describeVideoFailure(err));
129
+ }
130
+ if (!result?.videoUrl || !result.videoId) {
131
+ logger.error({ result }, '[video] Job succeeded without a video URL');
132
+ return fail('Video generation finished but returned no clip');
133
+ }
134
+ const sizeBytes = await fetchContentLength(result.videoUrl, logger);
135
+ // The Forger probes the finished file, so this is the real length rather than
136
+ // the requested one — and it is what the per-second charge is priced off.
137
+ const durationSeconds = typeof result.durationSeconds === 'number' && result.durationSeconds > 0
138
+ ? result.durationSeconds
139
+ : input.durationSeconds;
140
+ const patch = buildVideoPatch(input, { ...result, durationSeconds }, sizeBytes);
141
+ const assetId = patch.value.id;
142
+ logger.info({ videoUrl: result.videoUrl, assetId, cost: result.cost }, '[video] Video stored');
143
+ return ok(`Video generated: ${result.videoUrl}`, [patch], {
144
+ lengthSeconds: durationSeconds,
145
+ video: {
146
+ videoUrl: result.videoUrl,
147
+ ...(result.webmUrl !== undefined && { webmUrl: result.webmUrl }),
148
+ videoId: assetId,
149
+ durationSeconds,
150
+ ...(result.width !== undefined && { width: result.width }),
151
+ ...(result.height !== undefined && { height: result.height }),
152
+ },
153
+ sizeBytes,
154
+ billable: true,
155
+ });
156
+ }
157
+ //# sourceMappingURL=video.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"video.js","sourceRoot":"","sources":["../../src/generators/video.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -13,6 +13,9 @@ export { generateSoundEffect, soundEffectParamsSchema } from './generators/sound
13
13
  export type { SoundEffectParams, SoundEffectResult } from './generators/sound-effect.js';
14
14
  export { generateMusic, musicParamsSchema, MUSIC_MIN_SECONDS, MUSIC_MAX_SECONDS, MUSIC_DEFAULT_SECONDS, } from './generators/music.js';
15
15
  export type { MusicParams, MusicResult, MusicUrls } from './generators/music.js';
16
+ export { generateVideo, videoParamsSchema, buildVideoJobRequest, buildVideoPatch, describeVideoFailure, VIDEO_MIN_SECONDS, VIDEO_MAX_SECONDS, VIDEO_DEFAULT_SECONDS, VIDEO_JOBS_ENDPOINT, VIDEO_TIMEOUT_MS, } from './generators/video.js';
17
+ export type { VideoParams, VideoResult, VideoUrls, VideoJobResult, VideoJobRequest } from './generators/video.js';
18
+ export { formatZodIssues } from './validation.js';
16
19
  export { generateImageAsset, imageAssetParamsSchema } from './generators/image.js';
17
20
  export type { ImageAssetParams, ImageAssetResult } from './generators/image.js';
18
21
  export { generateReferenceImage, referenceImageParamsSchema, REFERENCE_IMAGE_WIDTH, REFERENCE_IMAGE_HEIGHT, } from './generators/reference.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -6,6 +6,8 @@ export { generateBackground, backgroundParamsSchema } from './generators/backgro
6
6
  export { generateBlockType, blockTypeParamsSchema } from './generators/block-type.js';
7
7
  export { generateSoundEffect, soundEffectParamsSchema } from './generators/sound-effect.js';
8
8
  export { generateMusic, musicParamsSchema, MUSIC_MIN_SECONDS, MUSIC_MAX_SECONDS, MUSIC_DEFAULT_SECONDS, } from './generators/music.js';
9
+ export { generateVideo, videoParamsSchema, buildVideoJobRequest, buildVideoPatch, describeVideoFailure, VIDEO_MIN_SECONDS, VIDEO_MAX_SECONDS, VIDEO_DEFAULT_SECONDS, VIDEO_JOBS_ENDPOINT, VIDEO_TIMEOUT_MS, } from './generators/video.js';
10
+ export { formatZodIssues } from './validation.js';
9
11
  export { generateImageAsset, imageAssetParamsSchema } from './generators/image.js';
10
12
  export { generateReferenceImage, referenceImageParamsSchema, REFERENCE_IMAGE_WIDTH, REFERENCE_IMAGE_HEIGHT, } from './generators/reference.js';
11
13
  export { generateCharacter, characterParamsSchema } from './generators/character.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bitmagic/asset-core",
3
- "version": "0.2.19-dev.0",
3
+ "version": "0.2.19-dev.2",
4
4
  "license": "SEE LICENSE IN LICENSE.md",
5
5
  "author": "Bitmagic Oy",
6
6
  "type": "module",