studio-lumiere-cli 0.1.10 → 0.1.11

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.
@@ -1,6 +1,8 @@
1
1
  import { GoogleGenAI } from "@google/genai";
2
2
  import { promises as fs } from "node:fs";
3
3
  import path from "node:path";
4
+ const VIDEO_POLL_INTERVAL_MS = 10_000;
5
+ const VIDEO_MAX_POLL_ATTEMPTS = 60;
4
6
  const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
5
7
  const isRetryableError = (error) => {
6
8
  const message = String(error?.message || "").toLowerCase();
@@ -103,51 +105,56 @@ export class GeminiClient {
103
105
  }, this.retry);
104
106
  }
105
107
  async generateVideo(params) {
106
- return withRetry(async () => {
107
- const request = {
108
- model: params.model ?? this.models.video,
109
- prompt: params.prompt,
110
- config: {
111
- aspectRatio: params.aspectRatio,
112
- durationSeconds: params.durationSeconds
113
- }
114
- };
115
- if (params.startFramePath) {
116
- const bytes = await fs.readFile(params.startFramePath);
117
- const ext = path.extname(params.startFramePath).toLowerCase();
118
- const mimeType = ext === ".png"
119
- ? "image/png"
120
- : ext === ".webp"
121
- ? "image/webp"
122
- : "image/jpeg";
123
- request.image = {
124
- imageBytes: bytes.toString("base64"),
125
- mimeType
126
- };
127
- request.config.personGeneration = "allow_adult";
108
+ const request = {
109
+ model: params.model ?? this.models.video,
110
+ prompt: params.prompt,
111
+ config: {
112
+ aspectRatio: params.aspectRatio,
113
+ durationSeconds: params.durationSeconds
128
114
  }
129
- let operation = await this.ai.models.generateVideos(request);
130
- while (!operation.done) {
131
- await sleep(10000);
132
- operation = await this.ai.operations.getVideosOperation({ operation });
115
+ };
116
+ if (params.startFramePath) {
117
+ const bytes = await fs.readFile(params.startFramePath);
118
+ const ext = path.extname(params.startFramePath).toLowerCase();
119
+ const mimeType = ext === ".png"
120
+ ? "image/png"
121
+ : ext === ".webp"
122
+ ? "image/webp"
123
+ : "image/jpeg";
124
+ request.image = {
125
+ imageBytes: bytes.toString("base64"),
126
+ mimeType
127
+ };
128
+ request.config.personGeneration = "allow_adult";
129
+ }
130
+ let operation = await withRetry(() => this.ai.models.generateVideos(request), this.retry);
131
+ for (let attempt = 0; !operation.done; attempt += 1) {
132
+ if (attempt >= VIDEO_MAX_POLL_ATTEMPTS) {
133
+ throw new Error("Gemini video generation timed out.");
133
134
  }
134
- const generated = operation.response?.generatedVideos?.[0]?.video;
135
- if (!generated) {
136
- return { operationName: operation.name };
135
+ await sleep(VIDEO_POLL_INTERVAL_MS);
136
+ operation = await this.ai.operations.getVideosOperation({ operation });
137
+ }
138
+ const generated = operation.response?.generatedVideos?.[0]?.video;
139
+ if (!generated) {
140
+ const filterReasons = operation.response?.raiMediaFilteredReasons;
141
+ if (filterReasons && filterReasons.length > 0) {
142
+ throw new Error(`Gemini video was filtered: ${filterReasons[0]}`);
137
143
  }
138
- const tempPath = `${process.cwd()}\\lumiere-video-${Date.now()}.mp4`;
139
- await this.ai.files.download({
144
+ throw new Error("Gemini completed without returning a video.");
145
+ }
146
+ const tempPath = `${process.cwd()}\\lumiere-video-${Date.now()}.mp4`;
147
+ try {
148
+ await withRetry(() => this.ai.files.download({
140
149
  file: generated,
141
150
  downloadPath: tempPath
142
- });
143
- try {
144
- const rawBytes = await fs.readFile(tempPath);
145
- return { operationName: operation.name, videoBytes: new Uint8Array(rawBytes) };
146
- }
147
- finally {
148
- await fs.unlink(tempPath).catch(() => undefined);
149
- }
150
- }, this.retry);
151
+ }), this.retry);
152
+ const rawBytes = await fs.readFile(tempPath);
153
+ return { operationName: operation.name, videoBytes: new Uint8Array(rawBytes) };
154
+ }
155
+ finally {
156
+ await fs.unlink(tempPath).catch(() => undefined);
157
+ }
151
158
  }
152
159
  }
153
160
  //# sourceMappingURL=geminiClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"geminiClient.js","sourceRoot":"","sources":["../../src/clients/geminiClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"geminiClient.js","sourceRoot":"","sources":["../../src/clients/geminiClient.ts"],"names":[],"mappings":"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"}
@@ -65,6 +65,9 @@ export const generateVideo = async (config, request) => {
65
65
  videoPath = path.join(outputDir, "video.mp4");
66
66
  await saveBinary(result.videoBytes, videoPath);
67
67
  }
68
+ if (!videoPath) {
69
+ throw new Error("Video generation completed but no local video file was produced.");
70
+ }
68
71
  const logPath = path.join(outputDir, "video.json");
69
72
  await writeJson(logPath, {
70
73
  engine: selection.engine,
@@ -1 +1 @@
1
- {"version":3,"file":"generateVideo.js","sourceRoot":"","sources":["../../src/pipelines/generateVideo.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEpD,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAE9E,MAAM,8BAA8B,GAAG,CAAC,CAAC;AAEzC,MAAM,aAAa,GAAG;IACpB,SAAS,EAAE,0BAA0B;IACrC,cAAc,EAAE,+BAA+B;CACvC,CAAC;AAEX,MAAM,UAAU,GAAG;IACjB,WAAW,EAAE,iBAAiB;CACtB,CAAC;AAEX,MAAM,qBAAqB,GAAG,CAAC,OAAqB,EAAE,EAAE;IACtD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC5B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,CAC/B,KAAK,KAAK,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CACzC,CAAC;IAEF,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,MAAM,KAAK,KAAK;YACrB,CAAC,CAAC,EAAE,MAAM,EAAE,KAAc,EAAE,KAAK,EAAE,WAAoB,EAAE,aAAa,EAAE,UAAU,CAAC,WAAW,CAAC,EAAE;YACjG,CAAC,CAAC,EAAE,MAAM,EAAE,QAAiB,EAAE,KAAK,EAAE,SAAkB,EAAE,aAAa,EAAE,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC;IACxG,CAAC;IAED,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACxB,MAAM,aAAa,GAAG,aAAa,CAAC,KAAmC,CAAC,CAAC;QACzE,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,2DAA2D,CAAC,CAAC;QAC7F,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;IAC1C,CAAC;IAED,MAAM,aAAa,GAAG,UAAU,CAAC,KAAgC,CAAC,CAAC;IACnE,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,6CAA6C,CAAC,CAAC;IAC/E,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;AAC1C,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAChC,MAAqB,EACrB,OAAqB,EACC,EAAE;IACxB,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IACpF,MAAM,SAAS,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;IACjD,MAAM,eAAe,GAAG,OAAO,CAAC,eAAe,IAAI,8BAA8B,CAAC;IAElF,IAAI,SAAS,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACpD,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,SAAS,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACtD,MAAM,IAAI,KAAK,CAAC,yHAAyH,CAAC,CAAC;IAC7I,CAAC;IAED,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,KAAK,KAAK;QACvC,CAAC,CAAC,MAAM,IAAI,SAAS,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC;YACxC,KAAK,EAAE,SAAS,CAAC,aAAa;YAC9B,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,cAAc,EAAE,OAAO,CAAC,UAAU;YAClC,YAAY,EAAE,OAAO,CAAC,QAAQ;YAC9B,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,eAAe;SAChB,CAAC;QACJ,CAAC,CAAC,MAAM,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC;YAC3C,KAAK,EAAE,SAAS,CAAC,aAAa;YAC9B,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,cAAc,EAAE,OAAO,CAAC,UAAU;YAClC,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,eAAe;SAChB,CAAC,CAAC;IACP,MAAM,aAAa,GAAG,eAAe,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;IACnF,MAAM,MAAM,GAAG,QAAQ,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IAC9D,MAAM,QAAQ,GAAG,UAAU,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IAEpE,IAAI,SAA6B,CAAC;IAClC,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACtB,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QAC9C,MAAM,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IACjD,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IACnD,MAAM,SAAS,CAAC,OAAO,EAAE;QACvB,MAAM,EAAE,SAAS,CAAC,MAAM;QACxB,KAAK,EAAE,SAAS,CAAC,KAAK;QACtB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,eAAe;QACf,aAAa;QACb,MAAM;QACN,QAAQ;QACR,SAAS;KACV,CAAC,CAAC;IAEH,OAAO;QACL,MAAM,EAAE,SAAS,CAAC,MAAM;QACxB,KAAK,EAAE,SAAS,CAAC,KAAK;QACtB,aAAa;QACb,MAAM;QACN,QAAQ;QACR,SAAS;QACT,OAAO;KACR,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"generateVideo.js","sourceRoot":"","sources":["../../src/pipelines/generateVideo.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "studio-lumiere-cli",
3
- "version": "0.1.10",
3
+ "version": "0.1.11",
4
4
  "description": "Local SDK + CLI for Studio Lumiere image and video generation",
5
5
  "type": "module",
6
6
  "bin": {