vidspotai-shared 1.0.124 → 1.0.126
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/lib/globals/aiModels/enums.d.ts +38 -0
- package/lib/globals/aiModels/enums.d.ts.map +1 -1
- package/lib/globals/aiModels/enums.js +49 -1
- package/lib/globals/aiModels/index.d.ts.map +1 -1
- package/lib/globals/aiModels/index.js +2 -0
- package/lib/globals/aiModels/providers/alibaba.d.ts.map +1 -1
- package/lib/globals/aiModels/providers/alibaba.js +460 -53
- package/lib/globals/aiModels/providers/bytedance.d.ts.map +1 -1
- package/lib/globals/aiModels/providers/bytedance.js +221 -39
- package/lib/globals/aiModels/providers/google.d.ts.map +1 -1
- package/lib/globals/aiModels/providers/google.js +178 -32
- package/lib/globals/aiModels/providers/kling.d.ts.map +1 -1
- package/lib/globals/aiModels/providers/kling.js +86 -12
- package/lib/globals/aiModels/providers/minimax.d.ts.map +1 -1
- package/lib/globals/aiModels/providers/minimax.js +77 -0
- package/lib/globals/aiModels/providers/openai.d.ts.map +1 -1
- package/lib/globals/aiModels/providers/openai.js +12 -0
- package/lib/globals/aiModels/providers/pixverse.d.ts.map +1 -1
- package/lib/globals/aiModels/providers/pixverse.js +101 -28
- package/lib/globals/aiModels/providers/runway.d.ts.map +1 -1
- package/lib/globals/aiModels/providers/runway.js +450 -24
- package/lib/globals/aiModels/providers/xai.d.ts +4 -0
- package/lib/globals/aiModels/providers/xai.d.ts.map +1 -0
- package/lib/globals/aiModels/providers/xai.js +72 -0
- package/lib/globals/aiModels/tierHelpers.d.ts +10 -0
- package/lib/globals/aiModels/tierHelpers.d.ts.map +1 -1
- package/lib/globals/aiModels/tierHelpers.js +48 -7
- package/lib/globals/aiModels/types.d.ts +21 -0
- package/lib/globals/aiModels/types.d.ts.map +1 -1
- package/lib/models/image.model.d.ts +24 -0
- package/lib/models/image.model.d.ts.map +1 -1
- package/lib/models/image.model.js +12 -0
- package/lib/models/index.d.ts +1 -0
- package/lib/models/index.d.ts.map +1 -1
- package/lib/models/index.js +1 -0
- package/lib/models/klingElement.model.d.ts +52 -0
- package/lib/models/klingElement.model.d.ts.map +1 -0
- package/lib/models/klingElement.model.js +24 -0
- package/lib/models/user.model.d.ts +7 -1
- package/lib/models/user.model.d.ts.map +1 -1
- package/lib/models/video.model.d.ts +11 -0
- package/lib/models/video.model.d.ts.map +1 -1
- package/lib/schemas/videoPlan.schema.d.ts +88 -0
- package/lib/schemas/videoPlan.schema.d.ts.map +1 -1
- package/lib/schemas/videoPlan.schema.js +27 -1
- package/lib/services/agent/executor/visual.d.ts.map +1 -1
- package/lib/services/agent/executor/visual.js +40 -2
- package/lib/services/agent/mentionedRefs.d.ts.map +1 -1
- package/lib/services/agent/mentionedRefs.js +4 -1
- package/lib/services/agent/planner/structuralRules.d.ts.map +1 -1
- package/lib/services/agent/planner/structuralRules.js +8 -3
- package/lib/services/agent/poster/posterAgent.schema.d.ts +3 -3
- package/lib/services/agent/providerFallback/chains.d.ts +25 -0
- package/lib/services/agent/providerFallback/chains.d.ts.map +1 -1
- package/lib/services/agent/providerFallback/chains.js +59 -5
- package/lib/services/agent/repair/strategies/llmRepair.strategy.d.ts.map +1 -1
- package/lib/services/agent/repair/strategies/llmRepair.strategy.js +2 -0
- package/lib/services/agent/tools/animateImage.tool.d.ts +31 -0
- package/lib/services/agent/tools/animateImage.tool.d.ts.map +1 -1
- package/lib/services/agent/tools/animateImage.tool.js +10 -3
- package/lib/services/agent/tools/generateImage.tool.d.ts +8 -4
- package/lib/services/agent/tools/generateImage.tool.d.ts.map +1 -1
- package/lib/services/agent/tools/generateImage.tool.js +24 -7
- package/lib/services/agent/tools/generateVideo.tool.d.ts +32 -0
- package/lib/services/agent/tools/generateVideo.tool.d.ts.map +1 -1
- package/lib/services/agent/tools/generateVideo.tool.js +37 -9
- package/lib/services/agent/tools/planVideo.tool.d.ts +19 -0
- package/lib/services/agent/tools/planVideo.tool.d.ts.map +1 -1
- package/lib/services/aiGen/aiGenFactory.service.d.ts.map +1 -1
- package/lib/services/aiGen/aiGenFactory.service.js +40 -0
- package/lib/services/aiGen/canonicalAdapters/cameraControl.types.d.ts +6 -3
- package/lib/services/aiGen/canonicalAdapters/cameraControl.types.d.ts.map +1 -1
- package/lib/services/aiGen/canonicalAdapters/cameraControl.types.js +35 -0
- package/lib/services/aiGen/canonicalAdapters/cameraDirection.d.ts +36 -0
- package/lib/services/aiGen/canonicalAdapters/cameraDirection.d.ts.map +1 -0
- package/lib/services/aiGen/canonicalAdapters/cameraDirection.js +168 -0
- package/lib/services/aiGen/canonicalAdapters/index.d.ts +1 -0
- package/lib/services/aiGen/canonicalAdapters/index.d.ts.map +1 -1
- package/lib/services/aiGen/canonicalAdapters/index.js +1 -0
- package/lib/services/aiGen/canonicalAdapters/multiShot.types.d.ts +3 -2
- package/lib/services/aiGen/canonicalAdapters/multiShot.types.d.ts.map +1 -1
- package/lib/services/aiGen/helpers.d.ts +40 -0
- package/lib/services/aiGen/helpers.d.ts.map +1 -1
- package/lib/services/aiGen/helpers.js +48 -2
- package/lib/services/aiGen/index.d.ts +1 -0
- package/lib/services/aiGen/index.d.ts.map +1 -1
- package/lib/services/aiGen/index.js +3 -0
- package/lib/services/aiGen/providers/alibaba/alibaba.d.ts +13 -1
- package/lib/services/aiGen/providers/alibaba/alibaba.d.ts.map +1 -1
- package/lib/services/aiGen/providers/alibaba/alibaba.js +313 -33
- package/lib/services/aiGen/providers/bytedance/bytedance.service.d.ts +29 -1
- package/lib/services/aiGen/providers/bytedance/bytedance.service.d.ts.map +1 -1
- package/lib/services/aiGen/providers/bytedance/bytedance.service.js +371 -54
- package/lib/services/aiGen/providers/google/google.service.d.ts +16 -0
- package/lib/services/aiGen/providers/google/google.service.d.ts.map +1 -1
- package/lib/services/aiGen/providers/google/google.service.js +372 -116
- package/lib/services/aiGen/providers/google/googleKeyPool.d.ts +6 -0
- package/lib/services/aiGen/providers/google/googleKeyPool.d.ts.map +1 -1
- package/lib/services/aiGen/providers/google/googleKeyPool.js +8 -0
- package/lib/services/aiGen/providers/kling/kling.service.d.ts +17 -1
- package/lib/services/aiGen/providers/kling/kling.service.d.ts.map +1 -1
- package/lib/services/aiGen/providers/kling/kling.service.js +59 -3
- package/lib/services/aiGen/providers/kling/klingCredits.d.ts +1 -1
- package/lib/services/aiGen/providers/kling/klingCredits.d.ts.map +1 -1
- package/lib/services/aiGen/providers/kling/klingCredits.js +19 -1
- package/lib/services/aiGen/providers/kling/klingRequests.d.ts +37 -7
- package/lib/services/aiGen/providers/kling/klingRequests.d.ts.map +1 -1
- package/lib/services/aiGen/providers/kling/klingRequests.js +191 -13
- package/lib/services/aiGen/providers/kling/types.d.ts +78 -0
- package/lib/services/aiGen/providers/kling/types.d.ts.map +1 -1
- package/lib/services/aiGen/providers/minimax/minimax.service.d.ts +11 -2
- package/lib/services/aiGen/providers/minimax/minimax.service.d.ts.map +1 -1
- package/lib/services/aiGen/providers/minimax/minimax.service.js +168 -2
- package/lib/services/aiGen/providers/minimax/types.d.ts +63 -0
- package/lib/services/aiGen/providers/minimax/types.d.ts.map +1 -1
- package/lib/services/aiGen/providers/pixverse/pixverse.service.d.ts +12 -0
- package/lib/services/aiGen/providers/pixverse/pixverse.service.d.ts.map +1 -1
- package/lib/services/aiGen/providers/pixverse/pixverse.service.js +131 -17
- package/lib/services/aiGen/providers/runway/hostedModels.d.ts +84 -0
- package/lib/services/aiGen/providers/runway/hostedModels.d.ts.map +1 -0
- package/lib/services/aiGen/providers/runway/hostedModels.js +266 -0
- package/lib/services/aiGen/providers/runway/index.d.ts +1 -0
- package/lib/services/aiGen/providers/runway/index.d.ts.map +1 -1
- package/lib/services/aiGen/providers/runway/index.js +1 -0
- package/lib/services/aiGen/providers/runway/runway.service.d.ts +1 -1
- package/lib/services/aiGen/providers/runway/runway.service.d.ts.map +1 -1
- package/lib/services/aiGen/providers/runway/runway.service.js +118 -21
- package/lib/services/aiGen/providers/runway/types.d.ts +18 -3
- package/lib/services/aiGen/providers/runway/types.d.ts.map +1 -1
- package/lib/services/aiGen/providers/runway/types.js +31 -3
- package/lib/services/aiGen/providers/types.d.ts +55 -0
- package/lib/services/aiGen/providers/types.d.ts.map +1 -1
- package/lib/services/aiGen/providers/xai/xai.service.d.ts +19 -0
- package/lib/services/aiGen/providers/xai/xai.service.d.ts.map +1 -0
- package/lib/services/aiGen/providers/xai/xai.service.js +205 -0
- package/lib/services/firestore.service.d.ts +4 -0
- package/lib/services/firestore.service.d.ts.map +1 -1
- package/lib/services/firestore.service.js +5 -0
- package/lib/services/index.d.ts +2 -0
- package/lib/services/index.d.ts.map +1 -1
- package/lib/services/index.js +2 -0
- package/lib/services/klingElements/klingElementLibrary.service.d.ts +37 -0
- package/lib/services/klingElements/klingElementLibrary.service.d.ts.map +1 -0
- package/lib/services/klingElements/klingElementLibrary.service.js +179 -0
- package/lib/services/trialGuard/index.d.ts +2 -0
- package/lib/services/trialGuard/index.d.ts.map +1 -0
- package/lib/services/trialGuard/index.js +17 -0
- package/lib/services/trialGuard/trialSignals.d.ts +88 -0
- package/lib/services/trialGuard/trialSignals.d.ts.map +1 -0
- package/lib/services/trialGuard/trialSignals.js +160 -0
- package/lib/utils/helpers.d.ts.map +1 -1
- package/lib/utils/helpers.js +5 -1
- package/package.json +2 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/services/aiGen/providers/kling/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/services/aiGen/providers/kling/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,7 +11,16 @@ export declare class MinimaxService extends BaseAiGenProviderService {
|
|
|
11
11
|
constructor();
|
|
12
12
|
private request;
|
|
13
13
|
generateVideo(params: VideoGenerationParams): Promise<VideoGenerationResult>;
|
|
14
|
-
checkVideoStatus({ task, outputFilename, outputFilePath, }: VideoStatusParams): Promise<VideoStatusResult>;
|
|
14
|
+
checkVideoStatus({ task, modelKey, outputFilename, outputFilePath, }: VideoStatusParams): Promise<VideoStatusResult>;
|
|
15
|
+
/**
|
|
16
|
+
* H3 family (video generation V2). One multimodal `content[]`: the prompt,
|
|
17
|
+
* then either first/last-frame images (image-to-video) or reference
|
|
18
|
+
* images / videos / audio (reference-to-video) — MiniMax rejects the two
|
|
19
|
+
* mixed, so when any reference is present the first frame joins the
|
|
20
|
+
* reference images and a last frame is dropped (same rule as Seedance omni).
|
|
21
|
+
*/
|
|
22
|
+
private generateVideoV2;
|
|
23
|
+
private checkVideoStatusV2;
|
|
15
24
|
/**
|
|
16
25
|
* MiniMax image-01. Sync — returns image URLs directly from /v1/image_generation.
|
|
17
26
|
* Supports up to 1 subject_reference[type=character] for character consistency
|
|
@@ -25,6 +34,6 @@ export declare class MinimaxService extends BaseAiGenProviderService {
|
|
|
25
34
|
* { model, prompt, lyrics?, refer_voice?, audio_setting: { sample_rate, bitrate, format } }
|
|
26
35
|
*/
|
|
27
36
|
generateMusic(params: MusicGenerationParams): Promise<MusicGenerationResult>;
|
|
28
|
-
getCreditUsed({ modelKey, resolution, duration, multiClip, numImages, creditFloor, }: CreditUsageParams): number;
|
|
37
|
+
getCreditUsed({ modelKey, resolution, duration, multiClip, numImages, numInputImages, hasInputVideo, inputVideoDurationSec, creditFloor, }: CreditUsageParams): number;
|
|
29
38
|
}
|
|
30
39
|
//# sourceMappingURL=minimax.service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"minimax.service.d.ts","sourceRoot":"","sources":["../../../../../src/services/aiGen/providers/minimax/minimax.service.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"minimax.service.d.ts","sourceRoot":"","sources":["../../../../../src/services/aiGen/providers/minimax/minimax.service.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,UAAU,CAAC;AAclB;;;GAGG;AAGH,eAAO,MAAM,+BAA+B,uBAAuB,CAAC;AAsJpE,qBAAa,cAAe,SAAQ,wBAAwB;IAC1D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA4B;IAEpD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;;YAUlB,OAAO;IAuDf,aAAa,CACjB,MAAM,EAAE,qBAAqB,GAC5B,OAAO,CAAC,qBAAqB,CAAC;IAiE3B,gBAAgB,CAAC,EACrB,IAAI,EACJ,QAAQ,EACR,cAAc,EACd,cAAyB,GAC1B,EAAE,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA4EjD;;;;;;OAMG;YACW,eAAe;YAgFf,kBAAkB;IAwChC;;;;OAIG;IACG,aAAa,CACjB,MAAM,EAAE,qBAAqB,GAC5B,OAAO,CAAC,qBAAqB,CAAC;IAqDjC;;;;;OAKG;IACG,aAAa,CACjB,MAAM,EAAE,qBAAqB,GAC5B,OAAO,CAAC,qBAAqB,CAAC;IA2CjC,aAAa,CAAC,EACZ,QAAQ,EACR,UAAmB,EACnB,QAAY,EACZ,SAAiB,EACjB,SAAa,EACb,cAAkB,EAClB,aAAqB,EACrB,qBAAqB,EACrB,WAAW,GACZ,EAAE,iBAAiB,GAAG,MAAM;CAoD9B"}
|
|
@@ -128,6 +128,37 @@ function isMinimaxTransientError(err) {
|
|
|
128
128
|
}
|
|
129
129
|
return false;
|
|
130
130
|
}
|
|
131
|
+
/** H3 family → video generation V2 endpoints. */
|
|
132
|
+
function isMinimaxV2Model(modelId) {
|
|
133
|
+
return modelId.startsWith("MiniMax-H3");
|
|
134
|
+
}
|
|
135
|
+
/** Reference mode takes at most 12 files across images, videos and audio. */
|
|
136
|
+
const MINIMAX_V2_MAX_REFERENCE_FILES = 12;
|
|
137
|
+
/**
|
|
138
|
+
* V2 errors come back as a real HTTP status with an OpenAI-style body whose
|
|
139
|
+
* message ends in the internal code, e.g. "... (2013)". request() folds that
|
|
140
|
+
* into its Error message; pull the code out and reuse the V1 classifier.
|
|
141
|
+
*/
|
|
142
|
+
function toMinimaxV2Error(err, op) {
|
|
143
|
+
const raw = err instanceof Error ? err.message : String(err);
|
|
144
|
+
const match = raw.match(/^Minimax API Error: (\d{3})[^—]*— (.*)$/s);
|
|
145
|
+
if (!match)
|
|
146
|
+
return err instanceof Error ? err : new Error(raw);
|
|
147
|
+
const status = Number(match[1]);
|
|
148
|
+
let body = {};
|
|
149
|
+
try {
|
|
150
|
+
body = JSON.parse(match[2]);
|
|
151
|
+
}
|
|
152
|
+
catch {
|
|
153
|
+
/* non-JSON body */
|
|
154
|
+
}
|
|
155
|
+
const message = body.error?.message ?? match[2];
|
|
156
|
+
const code = Number(message.match(/\((\d+)\)\s*$/)?.[1] ?? 0);
|
|
157
|
+
const cls = classifyMinimaxError(code, message.replace(/\s*\(\d+\)\s*$/, ""));
|
|
158
|
+
if (cls.isUserInput)
|
|
159
|
+
return new errors_1.UserFacingError(cls.message, cls.code);
|
|
160
|
+
return new Error(`Minimax v2 ${op} failed (${status}${code ? `, code ${code}` : ""}): ${message}`);
|
|
161
|
+
}
|
|
131
162
|
class MinimaxService extends baseAiGenProvider_service_1.BaseAiGenProviderService {
|
|
132
163
|
constructor() {
|
|
133
164
|
super();
|
|
@@ -186,6 +217,8 @@ class MinimaxService extends baseAiGenProvider_service_1.BaseAiGenProviderServic
|
|
|
186
217
|
if (!modelId) {
|
|
187
218
|
throw new Error(`Unknown modelKey: ${params.modelKey}`);
|
|
188
219
|
}
|
|
220
|
+
if (isMinimaxV2Model(modelId))
|
|
221
|
+
return this.generateVideoV2(params, modelId);
|
|
189
222
|
const requestBody = {
|
|
190
223
|
model: modelId,
|
|
191
224
|
prompt: params.prompt,
|
|
@@ -230,7 +263,11 @@ class MinimaxService extends baseAiGenProvider_service_1.BaseAiGenProviderServic
|
|
|
230
263
|
}
|
|
231
264
|
return { task: response.task_id, status: types_1.EVideoSceneStatus.TRIGGERED };
|
|
232
265
|
}
|
|
233
|
-
async checkVideoStatus({ task, outputFilename, outputFilePath = "videos", }) {
|
|
266
|
+
async checkVideoStatus({ task, modelKey, outputFilename, outputFilePath = "videos", }) {
|
|
267
|
+
const modelId = aiModels_1.aiModelConfigs[modelKey]?.modelId;
|
|
268
|
+
if (modelId && isMinimaxV2Model(modelId)) {
|
|
269
|
+
return this.checkVideoStatusV2(`${task}`, outputFilename, outputFilePath);
|
|
270
|
+
}
|
|
234
271
|
const result = await this.request(`/v1/query/video_generation`, "GET", undefined, { task_id: `${task}` });
|
|
235
272
|
if (result.status === "Fail") {
|
|
236
273
|
return {
|
|
@@ -276,6 +313,118 @@ class MinimaxService extends baseAiGenProvider_service_1.BaseAiGenProviderServic
|
|
|
276
313
|
// rest status are pending forms
|
|
277
314
|
return { status: types_1.EVideoSceneStatus.PENDING };
|
|
278
315
|
}
|
|
316
|
+
/**
|
|
317
|
+
* H3 family (video generation V2). One multimodal `content[]`: the prompt,
|
|
318
|
+
* then either first/last-frame images (image-to-video) or reference
|
|
319
|
+
* images / videos / audio (reference-to-video) — MiniMax rejects the two
|
|
320
|
+
* mixed, so when any reference is present the first frame joins the
|
|
321
|
+
* reference images and a last frame is dropped (same rule as Seedance omni).
|
|
322
|
+
*/
|
|
323
|
+
async generateVideoV2(params, modelId) {
|
|
324
|
+
const fields = aiModels_1.aiModelConfigs[params.modelKey].fields;
|
|
325
|
+
const cap = (items, field) => items.slice(0, fields[field]?.max ?? 0);
|
|
326
|
+
const refVideos = cap([...(params.inputVideoUrl ? [params.inputVideoUrl] : []), ...(params.referenceVideoUrls ?? [])], "referenceVideoUrls");
|
|
327
|
+
const refAudios = cap(params.referenceAudioUrls ?? [], "referenceAudioUrls");
|
|
328
|
+
const refImagesIn = params.referenceImageUrls ?? [];
|
|
329
|
+
const referenceMode = refVideos.length + refAudios.length + refImagesIn.length > 0;
|
|
330
|
+
const content = [{ type: "text", text: params.prompt }];
|
|
331
|
+
if (referenceMode) {
|
|
332
|
+
if (params.lastFrameImageUrl) {
|
|
333
|
+
logger_1.logger.warn("minimax h3: last frame dropped — can't combine with reference inputs", {
|
|
334
|
+
modelKey: params.modelKey,
|
|
335
|
+
});
|
|
336
|
+
}
|
|
337
|
+
const refImages = cap([...(params.inputImageUrl ? [params.inputImageUrl] : []), ...refImagesIn], "referenceImageUrls");
|
|
338
|
+
// Mixed reference input is capped at 12 files; images give way first.
|
|
339
|
+
const imageRoom = Math.max(0, MINIMAX_V2_MAX_REFERENCE_FILES - refVideos.length - refAudios.length);
|
|
340
|
+
if (refImages.length > imageRoom) {
|
|
341
|
+
logger_1.logger.warn("minimax h3: reference images capped by the 12-file limit", {
|
|
342
|
+
modelKey: params.modelKey,
|
|
343
|
+
given: refImages.length,
|
|
344
|
+
kept: imageRoom,
|
|
345
|
+
});
|
|
346
|
+
}
|
|
347
|
+
for (const url of refImages.slice(0, imageRoom)) {
|
|
348
|
+
content.push({ type: "image_url", image_url: { url }, role: "reference_image" });
|
|
349
|
+
}
|
|
350
|
+
for (const url of refVideos)
|
|
351
|
+
content.push({ type: "video_url", video_url: { url }, role: "reference_video" });
|
|
352
|
+
for (const url of refAudios)
|
|
353
|
+
content.push({ type: "audio_url", audio_url: { url }, role: "reference_audio" });
|
|
354
|
+
}
|
|
355
|
+
else {
|
|
356
|
+
if (params.inputImageUrl) {
|
|
357
|
+
content.push({ type: "image_url", image_url: { url: params.inputImageUrl }, role: "first_frame" });
|
|
358
|
+
}
|
|
359
|
+
if (params.lastFrameImageUrl) {
|
|
360
|
+
content.push({ type: "image_url", image_url: { url: params.lastFrameImageUrl }, role: "last_frame" });
|
|
361
|
+
}
|
|
362
|
+
}
|
|
363
|
+
const body = {
|
|
364
|
+
model: modelId,
|
|
365
|
+
content,
|
|
366
|
+
resolution: params.resolution ?? String(fields.resolution?.default ?? "768P"),
|
|
367
|
+
duration: params.duration ?? Number(fields.duration?.default ?? 5),
|
|
368
|
+
};
|
|
369
|
+
const isFrameMode = !referenceMode && content.length > 1;
|
|
370
|
+
// T2V requires a concrete ratio; frame mode always follows the image
|
|
371
|
+
// (omitted = adaptive); reference mode takes one if we have it.
|
|
372
|
+
if (!isFrameMode) {
|
|
373
|
+
const ratio = params.aspectRatio ?? (referenceMode ? undefined : "16:9");
|
|
374
|
+
if (ratio)
|
|
375
|
+
body.ratio = ratio;
|
|
376
|
+
}
|
|
377
|
+
if (params.promptOptimizer === false && "promptOptimizer" in fields) {
|
|
378
|
+
body.extra = { prompt_expansion_mode: "disabled" };
|
|
379
|
+
}
|
|
380
|
+
if (params.callbackUrl)
|
|
381
|
+
body.callback_url = params.callbackUrl;
|
|
382
|
+
let response;
|
|
383
|
+
try {
|
|
384
|
+
response = await this.request("/v2/video_generation", "POST", body);
|
|
385
|
+
}
|
|
386
|
+
catch (err) {
|
|
387
|
+
throw toMinimaxV2Error(err, "video_generation");
|
|
388
|
+
}
|
|
389
|
+
if (!response.task_id) {
|
|
390
|
+
throw new Error(`Minimax v2 video_generation returned no task_id: ${JSON.stringify(response)}`);
|
|
391
|
+
}
|
|
392
|
+
logger_1.logger.info("Minimax v2 video task created", { taskId: response.task_id, model: modelId });
|
|
393
|
+
return { task: response.task_id, status: types_1.EVideoSceneStatus.TRIGGERED };
|
|
394
|
+
}
|
|
395
|
+
async checkVideoStatusV2(taskId, outputFilename, outputFilePath) {
|
|
396
|
+
let task;
|
|
397
|
+
try {
|
|
398
|
+
({ task } = await this.request(`/v2/query/video_generation/${encodeURIComponent(taskId)}`, "GET"));
|
|
399
|
+
}
|
|
400
|
+
catch (err) {
|
|
401
|
+
throw toMinimaxV2Error(err, "query");
|
|
402
|
+
}
|
|
403
|
+
if (!task)
|
|
404
|
+
return { status: types_1.EVideoSceneStatus.PENDING };
|
|
405
|
+
if (task.status === "failed" || task.status === "cancelled") {
|
|
406
|
+
const code = Number(task.error?.code ?? 0);
|
|
407
|
+
return {
|
|
408
|
+
status: types_1.EVideoSceneStatus.FAILED,
|
|
409
|
+
errorMessage: minimaxStatusToUserMessage(code, task.error?.message ?? task.status),
|
|
410
|
+
};
|
|
411
|
+
}
|
|
412
|
+
if (task.status !== "succeeded")
|
|
413
|
+
return { status: types_1.EVideoSceneStatus.PENDING };
|
|
414
|
+
const url = task.content?.url;
|
|
415
|
+
if (!url) {
|
|
416
|
+
return { status: types_1.EVideoSceneStatus.FAILED, errorMessage: "MiniMax task succeeded without a video URL" };
|
|
417
|
+
}
|
|
418
|
+
// Output URLs are time-limited — copy the file now.
|
|
419
|
+
const videoResp = await axios_1.default.get(url, { responseType: "arraybuffer", timeout: 180000 });
|
|
420
|
+
if (videoResp.status !== 200) {
|
|
421
|
+
return { status: types_1.EVideoSceneStatus.FAILED, errorMessage: `Failed to download video: ${videoResp.status}` };
|
|
422
|
+
}
|
|
423
|
+
const filePath = `${outputFilePath}/${outputFilename}.mp4`;
|
|
424
|
+
// mediaStorage: GCS write + best-effort R2 mirror (zero-egress delivery).
|
|
425
|
+
const videoUrl = await storage_1.mediaStorage.put(filePath, Buffer.from(videoResp.data), "video/mp4");
|
|
426
|
+
return { videoUrl, status: types_1.EVideoSceneStatus.COMPLETED };
|
|
427
|
+
}
|
|
279
428
|
/**
|
|
280
429
|
* MiniMax image-01. Sync — returns image URLs directly from /v1/image_generation.
|
|
281
430
|
* Supports up to 1 subject_reference[type=character] for character consistency
|
|
@@ -372,7 +521,7 @@ class MinimaxService extends baseAiGenProvider_service_1.BaseAiGenProviderServic
|
|
|
372
521
|
providerRequestId: resp.trace_id,
|
|
373
522
|
};
|
|
374
523
|
}
|
|
375
|
-
getCreditUsed({ modelKey, resolution = "512P", duration = 6, multiClip = false, numImages = 1, creditFloor, }) {
|
|
524
|
+
getCreditUsed({ modelKey, resolution = "512P", duration = 6, multiClip = false, numImages = 1, numInputImages = 0, hasInputVideo = false, inputVideoDurationSec, creditFloor, }) {
|
|
376
525
|
const modelConfig = aiModels_1.aiModelConfigs[modelKey];
|
|
377
526
|
// Music-gen / image-gen — flat fixed price (music-1.5 ~$0.05, image-01 ~$0.01 × n).
|
|
378
527
|
if (modelConfig?.cost?.fixed !== undefined &&
|
|
@@ -384,6 +533,23 @@ class MinimaxService extends baseAiGenProvider_service_1.BaseAiGenProviderServic
|
|
|
384
533
|
modelConfig.type?.some((t) => t.endsWith("-to-image"))) {
|
|
385
534
|
return (0, helpers_2.getCreditsFromCost)(modelConfig.cost.fixed * Math.max(1, numImages), !multiClip, creditFloor);
|
|
386
535
|
}
|
|
536
|
+
// H3 family — per second by output resolution, plus reference video
|
|
537
|
+
// seconds and reference images beyond the free allowance.
|
|
538
|
+
const perSecond = modelConfig.cost?.perSecondByResolution;
|
|
539
|
+
if (perSecond) {
|
|
540
|
+
const res = (resolution && resolution.toUpperCase() in perSecond
|
|
541
|
+
? resolution.toUpperCase()
|
|
542
|
+
: String(modelConfig.fields.resolution?.default ?? ""));
|
|
543
|
+
const rate = perSecond[res];
|
|
544
|
+
if (rate !== undefined) {
|
|
545
|
+
const seconds = duration ?? Number(modelConfig.fields.duration?.default ?? 5);
|
|
546
|
+
const videoInRate = modelConfig.cost?.inputVideoPerSecond?.[res] ?? 0;
|
|
547
|
+
const videoIn = hasInputVideo ? videoInRate * (inputVideoDurationSec ?? 0) : 0;
|
|
548
|
+
const extraImages = Math.max(0, numInputImages - (modelConfig.cost?.freeInputImages ?? 0));
|
|
549
|
+
const imagesIn = extraImages * (modelConfig.cost?.perExtraInputImage ?? 0);
|
|
550
|
+
return (0, helpers_2.getCreditsFromCost)(rate * seconds + videoIn + imagesIn, !multiClip);
|
|
551
|
+
}
|
|
552
|
+
}
|
|
387
553
|
const cost = modelConfig.cost?.fixed ??
|
|
388
554
|
modelConfig.cost?.table?.[resolution]?.[duration];
|
|
389
555
|
if (cost === undefined || cost === null) {
|
|
@@ -33,4 +33,67 @@ export interface MinimaxVideoGenerateResponse {
|
|
|
33
33
|
status_msg: string;
|
|
34
34
|
};
|
|
35
35
|
}
|
|
36
|
+
export type MinimaxV2ContentItem = {
|
|
37
|
+
type: "text";
|
|
38
|
+
text: string;
|
|
39
|
+
} | {
|
|
40
|
+
type: "image_url";
|
|
41
|
+
image_url: {
|
|
42
|
+
url: string;
|
|
43
|
+
};
|
|
44
|
+
role: "first_frame" | "last_frame" | "reference_image";
|
|
45
|
+
} | {
|
|
46
|
+
type: "video_url";
|
|
47
|
+
video_url: {
|
|
48
|
+
url: string;
|
|
49
|
+
};
|
|
50
|
+
role: "reference_video";
|
|
51
|
+
} | {
|
|
52
|
+
type: "audio_url";
|
|
53
|
+
audio_url: {
|
|
54
|
+
url: string;
|
|
55
|
+
};
|
|
56
|
+
role: "reference_audio";
|
|
57
|
+
};
|
|
58
|
+
export interface MinimaxV2VideoRequest {
|
|
59
|
+
model: string;
|
|
60
|
+
content: MinimaxV2ContentItem[];
|
|
61
|
+
resolution: string;
|
|
62
|
+
duration: number;
|
|
63
|
+
ratio?: string;
|
|
64
|
+
extra?: {
|
|
65
|
+
prompt_expansion_mode: "disabled" | "balanced" | "quality";
|
|
66
|
+
};
|
|
67
|
+
callback_url?: string;
|
|
68
|
+
}
|
|
69
|
+
export interface MinimaxV2VideoTask {
|
|
70
|
+
id: string;
|
|
71
|
+
model?: string;
|
|
72
|
+
status: "queued" | "running" | "succeeded" | "failed" | "cancelled";
|
|
73
|
+
error?: {
|
|
74
|
+
code?: string;
|
|
75
|
+
message?: string;
|
|
76
|
+
};
|
|
77
|
+
content?: {
|
|
78
|
+
url?: string;
|
|
79
|
+
};
|
|
80
|
+
resolution?: string;
|
|
81
|
+
duration?: number;
|
|
82
|
+
ratio?: string;
|
|
83
|
+
usage?: {
|
|
84
|
+
output_seconds?: number;
|
|
85
|
+
input_seconds?: number;
|
|
86
|
+
input_image_count?: number;
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
/** OpenAI-style error body the V2 endpoints return with a real HTTP status. */
|
|
90
|
+
export interface MinimaxV2ErrorBody {
|
|
91
|
+
type?: "error";
|
|
92
|
+
error?: {
|
|
93
|
+
type?: string;
|
|
94
|
+
message?: string;
|
|
95
|
+
http_code?: string;
|
|
96
|
+
};
|
|
97
|
+
request_id?: string;
|
|
98
|
+
}
|
|
36
99
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/services/aiGen/providers/minimax/types.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,gBAAgB,GACxB,oBAAoB,GACpB,yBAAyB,GACzB,mBAAmB,GACnB,iBAAiB,GACjB,QAAQ,GACR,QAAQ,CAAC;AAEb,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,WAAW,CAAC;IAClB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,2BAA2B;IAC1C,KAAK,EAAE,gBAAgB,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,uBAAuB,EAAE,CAAC;CAC/C;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,WAAW,GAAG,UAAU,GAAG,YAAY,GAAG,SAAS,GAAG,MAAM,CAAC;IACrE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE;QACT,WAAW,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;QAC3C,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;CACH;AAED,MAAM,WAAW,4BAA4B;IAC3C,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE;QACT,WAAW,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;QACzD,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;CACH"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/services/aiGen/providers/minimax/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,6 +10,18 @@ export declare class PixVerseService extends BaseAiGenProviderService {
|
|
|
10
10
|
* multipart boundary itself when the body is a FormData.
|
|
11
11
|
*/
|
|
12
12
|
private uploadImage;
|
|
13
|
+
/**
|
|
14
|
+
* Uploads a video or audio file by URL (POST /openapi/v2/media/upload,
|
|
15
|
+
* multipart `file_url`) and returns its integer `media_id`. Used by lip sync;
|
|
16
|
+
* the same id feeds extend / sound-effect / restyle per PixVerse's docs.
|
|
17
|
+
*/
|
|
18
|
+
private uploadMedia;
|
|
19
|
+
/**
|
|
20
|
+
* Lip sync — POST /video/lip_sync/generate. Video: `source_video_id` (a
|
|
21
|
+
* prior PixVerse video_id) or `video_media_id` (uploaded). Speech:
|
|
22
|
+
* `audio_media_id` or TTS speaker + content — never both, per the API.
|
|
23
|
+
*/
|
|
24
|
+
private generateLipSync;
|
|
13
25
|
generateVideo(params: VideoGenerationParams): Promise<VideoGenerationResult>;
|
|
14
26
|
checkVideoStatus({ task, outputFilename, outputFilePath, }: VideoStatusParams): Promise<VideoStatusResult>;
|
|
15
27
|
getCreditUsed(params: CreditUsageParams): number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pixverse.service.d.ts","sourceRoot":"","sources":["../../../../../src/services/aiGen/providers/pixverse/pixverse.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,UAAU,CAAC;AAgGlB,qBAAa,eAAgB,SAAQ,wBAAwB;IAC3D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkD;IAK1E;;;;;;OAMG;YACW,WAAW;
|
|
1
|
+
{"version":3,"file":"pixverse.service.d.ts","sourceRoot":"","sources":["../../../../../src/services/aiGen/providers/pixverse/pixverse.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,UAAU,CAAC;AAgGlB,qBAAa,eAAgB,SAAQ,wBAAwB;IAC3D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkD;IAK1E;;;;;;OAMG;YACW,WAAW;IA+CzB;;;;OAIG;YACW,WAAW;IA0CzB;;;;OAIG;YACW,eAAe;IA6CvB,aAAa,CACjB,MAAM,EAAE,qBAAqB,GAC5B,OAAO,CAAC,qBAAqB,CAAC;IAsN3B,gBAAgB,CAAC,EACrB,IAAI,EACJ,cAAc,EACd,cAAyB,GAC1B,EAAE,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAyHjD,aAAa,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM;CAwDjD"}
|
|
@@ -134,6 +134,86 @@ class PixVerseService extends baseAiGenProvider_service_1.BaseAiGenProviderServi
|
|
|
134
134
|
},
|
|
135
135
|
});
|
|
136
136
|
}
|
|
137
|
+
/**
|
|
138
|
+
* Uploads a video or audio file by URL (POST /openapi/v2/media/upload,
|
|
139
|
+
* multipart `file_url`) and returns its integer `media_id`. Used by lip sync;
|
|
140
|
+
* the same id feeds extend / sound-effect / restyle per PixVerse's docs.
|
|
141
|
+
*/
|
|
142
|
+
async uploadMedia(mediaUrl, traceId) {
|
|
143
|
+
const form = new FormData();
|
|
144
|
+
form.append("file_url", (0, storage_1.toCdnUrl)(mediaUrl, { visibility: "private" }));
|
|
145
|
+
return (0, transientRetry_1.withTransientRetry)("pixverse:uploadMedia", async () => {
|
|
146
|
+
const resp = await fetch(`https://app-api.pixverse.ai/openapi/v2/media/upload`, {
|
|
147
|
+
method: "POST",
|
|
148
|
+
headers: {
|
|
149
|
+
"API-KEY": process.env.PIXVERSE_API_KEY,
|
|
150
|
+
"Ai-trace-id": traceId,
|
|
151
|
+
},
|
|
152
|
+
body: form,
|
|
153
|
+
});
|
|
154
|
+
if (!resp.ok) {
|
|
155
|
+
const errText = await resp.text();
|
|
156
|
+
throw classifyPixVerseHttpError(resp.status, errText, "uploadMedia");
|
|
157
|
+
}
|
|
158
|
+
const data = await resp.json();
|
|
159
|
+
if (data.ErrCode !== undefined && data.ErrCode !== 0) {
|
|
160
|
+
throw classifyPixVerseApiError(data.ErrCode, data.ErrMsg ?? "", "uploadMedia");
|
|
161
|
+
}
|
|
162
|
+
const mediaId = data?.Resp?.media_id;
|
|
163
|
+
if (mediaId === undefined || mediaId === null) {
|
|
164
|
+
throw new Error("PixVerse media upload did not return media_id");
|
|
165
|
+
}
|
|
166
|
+
return Number(mediaId);
|
|
167
|
+
}, {
|
|
168
|
+
onRetry: ({ attempt, maxAttempts, backoffMs, err }) => {
|
|
169
|
+
logger_1.logger.warn(`PixVerse uploadMedia transient error — retrying`, {
|
|
170
|
+
attempt,
|
|
171
|
+
maxAttempts,
|
|
172
|
+
backoffMs,
|
|
173
|
+
message: err.message,
|
|
174
|
+
});
|
|
175
|
+
},
|
|
176
|
+
});
|
|
177
|
+
}
|
|
178
|
+
/**
|
|
179
|
+
* Lip sync — POST /video/lip_sync/generate. Video: `source_video_id` (a
|
|
180
|
+
* prior PixVerse video_id) or `video_media_id` (uploaded). Speech:
|
|
181
|
+
* `audio_media_id` or TTS speaker + content — never both, per the API.
|
|
182
|
+
*/
|
|
183
|
+
async generateLipSync(params, traceId) {
|
|
184
|
+
const ttsContent = params.lipSync?.ttsContent?.trim();
|
|
185
|
+
if (!params.sourceTaskId && !params.inputVideoUrl) {
|
|
186
|
+
throw new errors_1.UserFacingError("Lip sync needs a video: upload one, or pick a previous PixVerse generation.", errors_1.USER_FACING_ERROR_CODES.CAPABILITY_MISMATCH);
|
|
187
|
+
}
|
|
188
|
+
if (!params.inputAudioUrl && !ttsContent) {
|
|
189
|
+
throw new errors_1.UserFacingError("Lip sync needs speech: upload a voice clip or type the line to speak.", errors_1.USER_FACING_ERROR_CODES.CAPABILITY_MISMATCH);
|
|
190
|
+
}
|
|
191
|
+
const body = {};
|
|
192
|
+
if (params.sourceTaskId)
|
|
193
|
+
body.source_video_id = Number(params.sourceTaskId);
|
|
194
|
+
else
|
|
195
|
+
body.video_media_id = await this.uploadMedia(params.inputVideoUrl, traceId);
|
|
196
|
+
if (params.inputAudioUrl) {
|
|
197
|
+
body.audio_media_id = await this.uploadMedia(params.inputAudioUrl, traceId);
|
|
198
|
+
}
|
|
199
|
+
else {
|
|
200
|
+
body.lip_sync_tts_speaker_id = params.lipSync?.ttsSpeakerId || "auto";
|
|
201
|
+
body.lip_sync_tts_content = ttsContent;
|
|
202
|
+
}
|
|
203
|
+
const data = await pixverseFetch(`${this.baseUrl}/lip_sync/generate`, {
|
|
204
|
+
method: "POST",
|
|
205
|
+
headers: {
|
|
206
|
+
"Content-Type": "application/json",
|
|
207
|
+
"API-KEY": process.env.PIXVERSE_API_KEY,
|
|
208
|
+
"Ai-trace-id": traceId,
|
|
209
|
+
},
|
|
210
|
+
body: JSON.stringify(body),
|
|
211
|
+
}, "lipSync");
|
|
212
|
+
const videoId = data?.Resp?.video_id;
|
|
213
|
+
if (!videoId)
|
|
214
|
+
throw new Error("PixVerse lip sync did not return video_id");
|
|
215
|
+
return { task: String(videoId), status: types_1.EVideoSceneStatus.TRIGGERED };
|
|
216
|
+
}
|
|
137
217
|
// =========================================================
|
|
138
218
|
// GENERATE VIDEO
|
|
139
219
|
// =========================================================
|
|
@@ -142,6 +222,8 @@ class PixVerseService extends baseAiGenProvider_service_1.BaseAiGenProviderServi
|
|
|
142
222
|
const modelConfig = aiModels_1.aiModelConfigs[params.modelKey];
|
|
143
223
|
const modelId = modelConfig.modelId;
|
|
144
224
|
const traceId = crypto_1.default.randomUUID();
|
|
225
|
+
if (modelId === "lipsync")
|
|
226
|
+
return this.generateLipSync(params, traceId);
|
|
145
227
|
// Extend a previously-generated PixVerse video. Takes the prior video_id;
|
|
146
228
|
// returns a new task whose status is polled via the same /result/{id} endpoint.
|
|
147
229
|
if (params.endpoint === "extend") {
|
|
@@ -223,44 +305,54 @@ class PixVerseService extends baseAiGenProvider_service_1.BaseAiGenProviderServi
|
|
|
223
305
|
throw new Error("PixVerse effect did not return video_id");
|
|
224
306
|
return { task: String(videoId), status: types_1.EVideoSceneStatus.TRIGGERED };
|
|
225
307
|
}
|
|
308
|
+
const isImageToVideo = !!params.inputImageUrl;
|
|
226
309
|
const body = {
|
|
227
|
-
aspect_ratio: params.aspectRatio,
|
|
228
310
|
duration: params.duration,
|
|
229
311
|
model: modelId,
|
|
230
312
|
prompt: params.prompt,
|
|
231
313
|
quality: params.resolution,
|
|
232
314
|
};
|
|
315
|
+
// aspect_ratio is a t2v field; i2v takes the source image's shape.
|
|
316
|
+
if (!isImageToVideo)
|
|
317
|
+
body.aspect_ratio = params.aspectRatio;
|
|
318
|
+
// Only send switches the model's config declares — the API reference
|
|
319
|
+
// scopes each to specific versions (audio v5.5+, multi-clip v5.5/v6,
|
|
320
|
+
// sound effect + lip sync v5 and below; C1 documents none of the legacy
|
|
321
|
+
// negative_prompt / motion_mode / style / template / thinking knobs).
|
|
322
|
+
const declared = modelConfig.fields;
|
|
233
323
|
// Optional negative prompt
|
|
234
|
-
if (params.negativePrompt) {
|
|
324
|
+
if (params.negativePrompt && "negative_prompt" in declared) {
|
|
235
325
|
body.negative_prompt = params.negativePrompt;
|
|
236
326
|
}
|
|
237
|
-
// Optional audio support (v5.5 / v5.6)
|
|
238
|
-
if (params.audio !== undefined) {
|
|
327
|
+
// Optional audio support (v5.5 / v5.6 / v6 / c1)
|
|
328
|
+
if (params.audio !== undefined && "audio" in declared) {
|
|
239
329
|
body.generate_audio_switch = Boolean(params.audio);
|
|
240
330
|
}
|
|
241
|
-
// Multi clip (v5.5
|
|
242
|
-
if (params.multiClip !== undefined) {
|
|
331
|
+
// Multi clip (v5.5 / v6 — C1 does multi-shot from the prompt)
|
|
332
|
+
if (params.multiClip !== undefined && "multiClip" in declared) {
|
|
243
333
|
body.generate_multi_clip_switch = Boolean(params.multiClip);
|
|
244
334
|
}
|
|
245
335
|
if (params.seed !== undefined)
|
|
246
336
|
body.seed = params.seed;
|
|
247
|
-
if (params.motionMode)
|
|
337
|
+
if (params.motionMode && "motionMode" in declared)
|
|
248
338
|
body.motion_mode = params.motionMode;
|
|
249
|
-
if (params.watermark !== undefined)
|
|
339
|
+
if (params.watermark !== undefined && "watermark" in declared)
|
|
250
340
|
body.water_mark = !params.watermark; // API field is "remove watermark"
|
|
251
|
-
if (params.style)
|
|
341
|
+
if (params.style && "style" in declared)
|
|
252
342
|
body.style = params.style;
|
|
253
|
-
if (params.templateId)
|
|
343
|
+
if (params.templateId && "templateId" in declared)
|
|
254
344
|
body.template_id = params.templateId;
|
|
255
|
-
if (params.thinkingType)
|
|
345
|
+
if (params.thinkingType && "thinkingType" in declared)
|
|
256
346
|
body.thinking_type = params.thinkingType;
|
|
257
|
-
if (params.soundEffect) {
|
|
347
|
+
if (params.soundEffect && "soundEffect" in declared) {
|
|
258
348
|
body.sound_effect_switch = params.soundEffect.switch;
|
|
259
349
|
if (params.soundEffect.content)
|
|
260
350
|
body.sound_effect_content = params.soundEffect.content;
|
|
261
351
|
}
|
|
262
|
-
if (params.lipSync) {
|
|
263
|
-
|
|
352
|
+
if (params.lipSync && "lipSync" in declared) {
|
|
353
|
+
// REMOVED FOR v2 — kept for reference: undocumented field name.
|
|
354
|
+
// body.lip_sync_switch = params.lipSync.switch;
|
|
355
|
+
body.lip_sync_tts_switch = params.lipSync.switch;
|
|
264
356
|
if (params.lipSync.ttsContent)
|
|
265
357
|
body.lip_sync_tts_content = params.lipSync.ttsContent;
|
|
266
358
|
if (params.lipSync.ttsSpeakerId)
|
|
@@ -274,8 +366,21 @@ class PixVerseService extends baseAiGenProvider_service_1.BaseAiGenProviderServi
|
|
|
274
366
|
// img_id or api_gen_img_ids must be provided." So we upload first, then
|
|
275
367
|
// pass the returned img_id. (Distinct from the /template/generate "effect"
|
|
276
368
|
// path above, which DOES take a customer_img_url directly.)
|
|
277
|
-
|
|
278
|
-
|
|
369
|
+
// First + last frame → /transition/generate (all versions, incl. v6/c1):
|
|
370
|
+
// same body minus aspect_ratio / img_id, plus first_frame_img +
|
|
371
|
+
// last_frame_img upload ids; polled via the same /result/{id}.
|
|
372
|
+
const isTransition = isImageToVideo && !!params.lastFrameImageUrl && "lastFrameImageUrl" in declared;
|
|
373
|
+
if (isTransition) {
|
|
374
|
+
const [first, last] = await Promise.all([
|
|
375
|
+
this.uploadImage(params.inputImageUrl, traceId),
|
|
376
|
+
this.uploadImage(params.lastFrameImageUrl, traceId),
|
|
377
|
+
]);
|
|
378
|
+
body.first_frame_img = first;
|
|
379
|
+
body.last_frame_img = last;
|
|
380
|
+
// Multi-clip is t2v/i2v only (v6 parameter table).
|
|
381
|
+
delete body.generate_multi_clip_switch;
|
|
382
|
+
}
|
|
383
|
+
else if (isImageToVideo) {
|
|
279
384
|
body.img_id = await this.uploadImage(params.inputImageUrl, traceId);
|
|
280
385
|
}
|
|
281
386
|
// I2V path is `/img/generate` — NOT `/image/generate`, which returns a bare
|
|
@@ -284,7 +389,11 @@ class PixVerseService extends baseAiGenProvider_service_1.BaseAiGenProviderServi
|
|
|
284
389
|
// This affected ALL PixVerse image-to-video models; it surfaced in prod as
|
|
285
390
|
// "pixverse-v6 404" only because v6 sits low in the I2V fallback chain and
|
|
286
391
|
// was the model selected when the rare fallback fired.
|
|
287
|
-
const endpoint =
|
|
392
|
+
const endpoint = isTransition
|
|
393
|
+
? `${this.baseUrl}/transition/generate`
|
|
394
|
+
: isImageToVideo
|
|
395
|
+
? `${this.baseUrl}/img/generate`
|
|
396
|
+
: `${this.baseUrl}/text/generate`;
|
|
288
397
|
const data = await pixverseFetch(endpoint, {
|
|
289
398
|
method: "POST",
|
|
290
399
|
headers: {
|
|
@@ -400,6 +509,11 @@ class PixVerseService extends baseAiGenProvider_service_1.BaseAiGenProviderServi
|
|
|
400
509
|
// =========================================================
|
|
401
510
|
getCreditUsed(params) {
|
|
402
511
|
const modelConfig = aiModels_1.aiModelConfigs[params.modelKey];
|
|
512
|
+
// Flat per-second tools (lip sync): priced on the spoken length.
|
|
513
|
+
if (typeof modelConfig?.cost?.perSecond === "number") {
|
|
514
|
+
const seconds = params.duration ?? Number(modelConfig.fields.duration?.default ?? 5);
|
|
515
|
+
return (0, helpers_2.getCreditsFromCost)(modelConfig.cost.perSecond * seconds, !params.multiClip);
|
|
516
|
+
}
|
|
403
517
|
if (!params.resolution || !params.duration) {
|
|
404
518
|
logger_1.logger.warn(`Missing resolution/duration for PixVerse credit calculation`);
|
|
405
519
|
return 10;
|