vidspotai-shared 1.0.30 → 1.0.32

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.
Files changed (70) hide show
  1. package/lib/globals/aiModels/enums.d.ts +40 -0
  2. package/lib/globals/aiModels/enums.d.ts.map +1 -0
  3. package/lib/globals/aiModels/enums.js +46 -0
  4. package/lib/globals/aiModels/index.d.ts +6 -0
  5. package/lib/globals/aiModels/index.d.ts.map +1 -0
  6. package/lib/globals/aiModels/index.js +35 -0
  7. package/lib/globals/aiModels/providers/bytedance.d.ts +4 -0
  8. package/lib/globals/aiModels/providers/bytedance.d.ts.map +1 -0
  9. package/lib/globals/aiModels/providers/bytedance.js +65 -0
  10. package/lib/globals/aiModels/providers/google.d.ts +4 -0
  11. package/lib/globals/aiModels/providers/google.d.ts.map +1 -0
  12. package/lib/globals/aiModels/providers/google.js +111 -0
  13. package/lib/globals/aiModels/providers/kling.d.ts +4 -0
  14. package/lib/globals/aiModels/providers/kling.d.ts.map +1 -0
  15. package/lib/globals/aiModels/providers/kling.js +129 -0
  16. package/lib/globals/aiModels/providers/minimax.d.ts +4 -0
  17. package/lib/globals/aiModels/providers/minimax.d.ts.map +1 -0
  18. package/lib/globals/aiModels/providers/minimax.js +66 -0
  19. package/lib/globals/aiModels/providers/openai.d.ts +4 -0
  20. package/lib/globals/aiModels/providers/openai.d.ts.map +1 -0
  21. package/lib/globals/aiModels/providers/openai.js +82 -0
  22. package/lib/globals/aiModels/providers/pixverse.d.ts +4 -0
  23. package/lib/globals/aiModels/providers/pixverse.d.ts.map +1 -0
  24. package/lib/globals/aiModels/providers/pixverse.js +108 -0
  25. package/lib/globals/aiModels/providers/runway.d.ts +4 -0
  26. package/lib/globals/aiModels/providers/runway.d.ts.map +1 -0
  27. package/lib/globals/aiModels/providers/runway.js +52 -0
  28. package/lib/globals/aiModels/types.d.ts +45 -0
  29. package/lib/globals/aiModels/types.d.ts.map +1 -0
  30. package/lib/globals/aiModels/types.js +2 -0
  31. package/lib/globals/aiModels.d.ts +9 -14
  32. package/lib/globals/aiModels.d.ts.map +1 -1
  33. package/lib/globals/aiModels.js +187 -495
  34. package/lib/globals/ttsModels/index.d.ts +6 -0
  35. package/lib/globals/ttsModels/index.d.ts.map +1 -0
  36. package/lib/globals/ttsModels/index.js +25 -0
  37. package/lib/globals/ttsModels/providers/elevenlabs.d.ts +3 -0
  38. package/lib/globals/ttsModels/providers/elevenlabs.d.ts.map +1 -0
  39. package/lib/globals/ttsModels/providers/elevenlabs.js +13 -0
  40. package/lib/globals/ttsModels/types.d.ts +15 -0
  41. package/lib/globals/ttsModels/types.d.ts.map +1 -0
  42. package/lib/globals/ttsModels/types.js +2 -0
  43. package/lib/globals/ttsModels/voices.d.ts +21 -0
  44. package/lib/globals/ttsModels/voices.d.ts.map +1 -0
  45. package/lib/globals/ttsModels/voices.js +135 -0
  46. package/lib/services/aiGen/providers/bytedance/bytedance.service.d.ts.map +1 -1
  47. package/lib/services/aiGen/providers/bytedance/bytedance.service.js +36 -7
  48. package/lib/services/aiGen/providers/pixverse/pixverse.service.d.ts +9 -0
  49. package/lib/services/aiGen/providers/pixverse/pixverse.service.d.ts.map +1 -0
  50. package/lib/services/aiGen/providers/pixverse/pixverse.service.js +188 -0
  51. package/lib/services/tts/index.d.ts +4 -0
  52. package/lib/services/tts/index.d.ts.map +1 -0
  53. package/lib/services/tts/index.js +19 -0
  54. package/lib/services/tts/providers/elevenlabs.service.d.ts +7 -0
  55. package/lib/services/tts/providers/elevenlabs.service.d.ts.map +1 -0
  56. package/lib/services/tts/providers/elevenlabs.service.js +44 -0
  57. package/lib/services/tts/ttsFactory.service.d.ts +4 -0
  58. package/lib/services/tts/ttsFactory.service.d.ts.map +1 -0
  59. package/lib/services/tts/ttsFactory.service.js +12 -0
  60. package/lib/services/tts/types.d.ts +14 -0
  61. package/lib/services/tts/types.d.ts.map +1 -0
  62. package/lib/services/tts/types.js +6 -0
  63. package/lib/utils/helpers.js +2 -2
  64. package/lib/utils/logger.d.ts +1 -2
  65. package/lib/utils/logger.d.ts.map +1 -1
  66. package/lib/utils/logger.js +0 -2
  67. package/lib/utils/ttsUtils.d.ts +11 -0
  68. package/lib/utils/ttsUtils.d.ts.map +1 -0
  69. package/lib/utils/ttsUtils.js +16 -0
  70. package/package.json +1 -1
@@ -2,19 +2,23 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.aiModelConfigs = exports.ETextGenModels = exports.EImageGenModels = exports.EVideoGenModels = void 0;
4
4
  const types_1 = require("../services/aiGen/providers/runway/types");
5
+ // export const EVideoGenModels = {
6
+ // GOOGLE_VEO_3: "google-veo-3",
7
+ // GOOGLE_VEO_3_FAST: "google-veo-3-fast",
8
+ // GOOGLE_VEO_2: "google-veo-2",
9
+ // RUNWAY_GEN4_TURBO: "runway-gen4-turbo",
10
+ // RUNWAY_GEN4_ALEPH: "runway-gen4-aleph",
11
+ // KLING_V1: "kling-v1",
12
+ // KLING_V1_6: "kling-v1.6",
13
+ // KLING_V2_MASTER: "kling-v2-master",
14
+ // KLING_V2_1_MASTER: "kling-v2.1-master",
15
+ // MINIMAX_HAILUO_02: "minimax-hailuo-02",
16
+ // T2V_01_DIRECTOR: "T2V-01-Director",
17
+ // T2V_01: "T2V-01",
18
+ // OPENAI_SORA: "openai-sora",
19
+ // } as const;
5
20
  var EVideoGenModels;
6
21
  (function (EVideoGenModels) {
7
- EVideoGenModels["PIXVERSE_V5_6"] = "pixverse-v5.6";
8
- EVideoGenModels["PIXVERSE_V5_5"] = "pixverse-v5.5";
9
- EVideoGenModels["PIXVERSE_V5"] = "pixverse-v5";
10
- // PIXVERSE_V4_5 = "pixverse-v4.5",
11
- // PIXVERSE_V4 = "pixverse-v4",
12
- // PIXVERSE_V3_5 = "pixverse-v3.5",
13
- EVideoGenModels["BYTEDANCE_SEEDANCE_1_5_PRO"] = "bytedance-seedance-1.5-pro";
14
- EVideoGenModels["BYTEDANCE_SEEDANCE_1_0_PRO_FAST"] = "bytedance-seedance-1.0-pro-fast";
15
- EVideoGenModels["BYTEDANCE_SEEDANCE_1_0_PRO"] = "bytedance-seedance-1.0-pro";
16
- // BYTEDANCE_SEEDANCE_1_0_LITE_T2V = "bytedance-seedance-1.0-lite-t2v",
17
- // BYTEDANCE_SEEDANCE_1_0_LITE_I2V = "bytedance-seedance-1.0-lite-i2v",
18
22
  EVideoGenModels["GOOGLE_VEO_3_1_PREVIEW"] = "google-veo-3.1-preview";
19
23
  EVideoGenModels["GOOGLE_VEO_3_1__FAST_PREVIEW"] = "google-veo-3.1-fast-preview";
20
24
  EVideoGenModels["GOOGLE_VEO_3"] = "google-veo-3";
@@ -22,25 +26,28 @@ var EVideoGenModels;
22
26
  EVideoGenModels["GOOGLE_VEO_2"] = "google-veo-2";
23
27
  EVideoGenModels["RUNWAY_GEN4_TURBO"] = "runway-gen4-turbo";
24
28
  EVideoGenModels["RUNWAY_GEN4_ALEPH"] = "runway-gen4-aleph";
25
- // KLING_V1 = "kling-v1",
26
- // KLING_V1_6 = "kling-v1.6",
29
+ EVideoGenModels["KLING_V1"] = "kling-v1";
30
+ EVideoGenModels["KLING_V1_6"] = "kling-v1.6";
27
31
  EVideoGenModels["KLING_V2_MASTER"] = "kling-v2-master";
28
- EVideoGenModels["KLING_V2_1"] = "kling-v2.1";
29
32
  EVideoGenModels["KLING_V2_1_MASTER"] = "kling-v2.1-master";
30
- EVideoGenModels["KLING_V2_5_TURBO"] = "kling-v2.5-turbo";
31
- EVideoGenModels["KLING_V2_6"] = "kling-v2.6";
32
- // KLING_VIDEO_O1 = "kling-video-o1",
33
- EVideoGenModels["MINIMAX_HAILUO_2_3_FAST"] = "minimax-hailuo-2.3-fast";
34
- EVideoGenModels["MINIMAX_HAILUO_2_3"] = "minimax-hailuo-2.3";
35
33
  EVideoGenModels["MINIMAX_HAILUO_02"] = "minimax-hailuo-02";
36
- // T2V_01_DIRECTOR = "T2V-01-Director",
37
- // T2V_01 = "T2V-01",
38
- // AZURE_SORA = "azure-sora",
39
- // ALIBABA_WAN_2_5 = "alibaba-wan-2.5",
40
- // ALIBABA_WAN_2_2 = "alibaba-wan-2.2",
34
+ EVideoGenModels["T2V_01_DIRECTOR"] = "T2V-01-Director";
35
+ EVideoGenModels["T2V_01"] = "T2V-01";
36
+ EVideoGenModels["AZURE_SORA"] = "azure-sora";
37
+ EVideoGenModels["ALIBABA_WAN_2_5"] = "alibaba-wan-2.5";
38
+ EVideoGenModels["ALIBABA_WAN_2_2"] = "alibaba-wan-2.2";
41
39
  EVideoGenModels["OPENAI_SORA_2"] = "openai-sora-2";
42
40
  EVideoGenModels["OPENAI_SORA_2_PRO"] = "openai-sora-2-pro";
43
41
  })(EVideoGenModels || (exports.EVideoGenModels = EVideoGenModels = {}));
42
+ // export type TVideoGenModel =
43
+ // (typeof EVideoGenModels)[keyof typeof EVideoGenModels];
44
+ // export const EImageGenModels = {
45
+ // OPENAI_DALLE_3: "openai-dalle-3",
46
+ // STABILITY_STABLE_DIFFUSION: "stability-stable-diffusion",
47
+ // MIDJOURNEY_V6: "midjourney-v6",
48
+ // FLUX_1_1: "flux-1.1",
49
+ // IDEOGRAM_1_0: "ideogram-1.0",
50
+ // } as const;
44
51
  exports.EImageGenModels = {
45
52
  OPENAI_DALLE_3: "openai-dalle-3",
46
53
  STABILITY_STABLE_DIFFUSION: "stability-stable-diffusion",
@@ -48,6 +55,15 @@ exports.EImageGenModels = {
48
55
  FLUX_1_1: "flux-1.1",
49
56
  IDEOGRAM_1_0: "ideogram-1.0",
50
57
  };
58
+ // export type ImageGenModel =
59
+ // (typeof EImageGenModels)[keyof typeof EImageGenModels];
60
+ // export const ETextGenModels = {
61
+ // // OPENAI_GPT_4O: "openai-gpt-4o",
62
+ // OPENAI_GPT_4O_MINI: "openai-gpt-4o-mini",
63
+ // // OPENAI_GPT_3_5_TURBO: "openai-gpt-3.5-turbo",
64
+ // // ANTHROPIC_CLAUDE_3: "anthropic-claude-3",
65
+ // // ANTHROPIC_CLAUDE_INSTANT_100K: "anthropic-claude-instant-100k",
66
+ // } as const;
51
67
  var ETextGenModels;
52
68
  (function (ETextGenModels) {
53
69
  // OPENAI_GPT_4O = "openai-gpt-4o",
@@ -59,225 +75,6 @@ var ETextGenModels;
59
75
  })(ETextGenModels || (exports.ETextGenModels = ETextGenModels = {}));
60
76
  // Combined config
61
77
  exports.aiModelConfigs = {
62
- // --- Pixverse models ---
63
- "pixverse-v5.6": {
64
- modelId: "v5.6",
65
- type: ["text-to-video", "image-to-video"],
66
- fields: {
67
- prompt: { required: true },
68
- aspectRatio: { allowedValues: ["16:9", "9:16", "1:1"] },
69
- resolution: { allowedValues: ["360p", "540p", "720p", "1080p"] },
70
- duration: { allowedValues: [5, 8, 10] },
71
- audio: {},
72
- },
73
- durationRules: {
74
- 5: ["360p", "540p", "720p", "1080p"],
75
- 8: ["360p", "540p", "720p", "1080p"],
76
- 10: ["360p", "540p", "720p"], // 1080p not available for 10s
77
- },
78
- concurrentRequests: 5,
79
- cost: {
80
- noAudio: {
81
- table: {
82
- "360p": { 5: 0.35, 8: 0.7, 10: 0.77 },
83
- "540p": { 5: 0.35, 8: 0.7, 10: 0.77 },
84
- "720p": { 5: 0.45, 8: 0.9, 10: 0.99 },
85
- "1080p": { 5: 0.75, 8: 1.5 },
86
- },
87
- },
88
- audio: {
89
- table: {
90
- "360p": { 5: 0.8, 8: 1.15, 10: 1.22 },
91
- "540p": { 5: 0.8, 8: 1.15, 10: 1.22 },
92
- "720p": { 5: 0.8, 8: 1.35, 10: 1.44 },
93
- "1080p": { 5: 1.5, 8: 1.95 },
94
- },
95
- },
96
- },
97
- },
98
- "pixverse-v5.5": {
99
- modelId: "v5.5",
100
- type: ["text-to-video", "image-to-video", "video-to-video"],
101
- fields: {
102
- prompt: { required: true },
103
- multiClip: { default: false },
104
- resolution: { allowedValues: ["360p", "540p", "720p", "1080p"] },
105
- duration: { allowedValues: [5, 8, 10] },
106
- audio: {},
107
- },
108
- cost: {
109
- noAudio: {
110
- singleClip: {
111
- table: {
112
- "360p": { 5: 0.45, 8: 0.9, 10: 0.99 },
113
- "540p": { 5: 0.45, 8: 0.9, 10: 0.99 },
114
- "720p": { 5: 0.6, 8: 1.2, 10: 1.32 },
115
- "1080p": { 5: 1.2, 8: 2.4 },
116
- },
117
- },
118
- multiClip: {
119
- table: {
120
- "360p": { 5: 0.75, 8: 1.2, 10: 1.29 },
121
- "540p": { 5: 0.75, 8: 1.2, 10: 1.29 },
122
- "720p": { 5: 0.9, 8: 1.5, 10: 1.62 },
123
- "1080p": { 5: 1.5, 8: 2.7 },
124
- },
125
- },
126
- },
127
- audio: {
128
- singleClip: {
129
- table: {
130
- "360p": { 5: 0.55, 8: 1.0, 10: 1.09 },
131
- "540p": { 5: 0.55, 8: 1.0, 10: 1.09 },
132
- "720p": { 5: 0.7, 8: 1.3, 10: 1.42 },
133
- "1080p": { 5: 1.3, 8: 2.5 },
134
- },
135
- },
136
- multiClip: {
137
- table: {
138
- "360p": { 5: 0.85, 8: 1.3, 10: 1.39 },
139
- "540p": { 5: 0.85, 8: 1.3, 10: 1.39 },
140
- "720p": { 5: 1.0, 8: 1.6, 10: 1.72 },
141
- "1080p": { 5: 1.6, 8: 2.8 },
142
- },
143
- },
144
- },
145
- },
146
- },
147
- "pixverse-v5": {
148
- modelId: "v5",
149
- type: ["text-to-video", "image-to-video"],
150
- fields: {
151
- prompt: { required: true },
152
- resolution: { allowedValues: ["360p", "540p", "720p", "1080p"] },
153
- duration: { allowedValues: [5, 8] },
154
- },
155
- cost: {
156
- noAudio: {
157
- table: {
158
- "360p": { 5: 0.45, 8: 0.9 },
159
- "540p": { 5: 0.45, 8: 0.9 },
160
- "720p": { 5: 0.6, 8: 1.2 },
161
- "1080p": { 5: 1.2, 8: 2.4 },
162
- },
163
- },
164
- },
165
- },
166
- // "pixverse-v4.5": {
167
- // modelId: "pixverse-v4.5",
168
- // type: ["text-to-video", "image-to-video"],
169
- // fields: {
170
- // prompt: { required: true },
171
- // motionMode: { allowedValues: ["normal", "fast"], default: "normal" },
172
- // resolution: { allowedValues: ["360p", "540p", "720p", "1080p"] },
173
- // duration: { allowedValues: [5, 8] },
174
- // },
175
- // cost: {
176
- // table: {
177
- // "360p": { 5: 0.45, 8: 0.9 },
178
- // "540p": { 5: 0.45, 8: 0.9 },
179
- // "720p": { 5: 0.6, 8: 1.2 },
180
- // "1080p": { 5: 1.2 },
181
- // },
182
- // },
183
- // },
184
- // --- ByteDance models ---
185
- "bytedance-seedance-1.5-pro": {
186
- modelId: "seedance-1-5-pro-251215",
187
- type: ["text-to-video", "image-to-video"],
188
- fields: {
189
- prompt: { required: true }, // not required for image-to-video, but we can ignore that for simplicity
190
- aspectRatio: {
191
- allowedValues: ["21:9", "16:9", "9:16", "1:1", "4:3", "3:4"],
192
- },
193
- resolution: { allowedValues: ["480p", "720p", "1080p"] },
194
- duration: { allowedValues: [4, 5, 6, 7, 8, 9, 10, 11, 12] }, // in seconds
195
- audio: {},
196
- // firstFrame: {},
197
- // lastFrame: {},
198
- // referenceVideo: {},
199
- },
200
- requestPerMin: 600,
201
- concurrentRequests: 10,
202
- cost: {
203
- audio: {
204
- per1KTokens: 0.0024,
205
- },
206
- noAudio: {
207
- per1KTokens: 0.0012,
208
- },
209
- },
210
- },
211
- // width * height for each aspect ratio and resolution
212
- // with and without audio
213
- "bytedance-seedance-1.0-pro-fast": {
214
- modelId: "seedance-1-0-pro-fast-251015",
215
- type: ["text-to-video", "image-to-video"],
216
- fields: {
217
- prompt: { required: true },
218
- aspectRatio: {
219
- allowedValues: ["21:9", "16:9", "9:16", "1:1", "4:3", "3:4"],
220
- },
221
- resolution: { allowedValues: ["480p", "720p", "1080p"] },
222
- duration: { allowedValues: [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12] }, // in seconds
223
- },
224
- requestPerMin: 600,
225
- concurrentRequests: 10,
226
- cost: {
227
- per1KTokens: 0.001,
228
- },
229
- },
230
- "bytedance-seedance-1.0-pro": {
231
- modelId: "seedance-1-0-pro-250528",
232
- type: ["text-to-video", "image-to-video"],
233
- fields: {
234
- prompt: { required: true },
235
- aspectRatio: {
236
- allowedValues: ["21:9", "16:9", "9:16", "1:1", "4:3", "3:4"],
237
- },
238
- resolution: { allowedValues: ["480p", "720p", "1080p"] },
239
- duration: { allowedValues: [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12] }, // in seconds
240
- },
241
- requestPerMin: 600,
242
- concurrentRequests: 10,
243
- cost: {
244
- per1KTokens: 0.0025,
245
- },
246
- },
247
- // "bytedance-seedance-1.0-lite-t2v": {
248
- // modelId: "seedance-1-0-lite-t2v-250428",
249
- // type: ["text-to-video", "image-to-video"],
250
- // fields: {
251
- // prompt: { required: true },
252
- // aspectRatio: {
253
- // allowedValues: ["21:9", "16:9", "9:16", "1:1", "4:3", "3:4"],
254
- // },
255
- // resolution: { allowedValues: ["480p", "720p", "1080p"] },
256
- // duration: { allowedValues: [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12] }, // in seconds
257
- // },
258
- // requestPerMin: 300,
259
- // concurrentRequests: 5,
260
- // cost: {
261
- // per1KTokens: 0.0018,
262
- // },
263
- // },
264
- // "bytedance-seedance-1.0-lite-i2v": {
265
- // modelId: "seedance-1-0-lite-i2v-250428",
266
- // type: ["text-to-video", "image-to-video"],
267
- // fields: {
268
- // prompt: { required: true },
269
- // aspectRatio: {
270
- // allowedValues: ["21:9", "16:9", "9:16", "1:1", "4:3", "3:4"],
271
- // },
272
- // resolution: { allowedValues: ["480p", "720p", "1080p"] },
273
- // duration: { allowedValues: [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12] }, // in seconds
274
- // },
275
- // requestPerMin: 300,
276
- // concurrentRequests: 5,
277
- // cost: {
278
- // per1KTokens: 0.0018,
279
- // },
280
- // },
281
78
  // --- Google models ---
282
79
  "google-veo-3.1-preview": {
283
80
  modelId: "veo-3.1-generate-preview",
@@ -416,95 +213,49 @@ exports.aiModelConfigs = {
416
213
  perSecond: 0.15,
417
214
  },
418
215
  },
419
- // --- Kling models ---
420
- // "kling-v1": {
421
- // modelId: "kling-v1",
422
- // type: ["text-to-video"],
423
- // fields: {
424
- // prompt: { required: true },
425
- // aspectRatio: { allowedValues: ["16:9", "9:16", "1:1"] }, // default 16:9
426
- // duration: { allowedValues: [5, 10] }, // seconds (5 or 10)
427
- // cfg_scale: {}, // float, probably between 0 and 1
428
- // negative_prompt: {},
429
- // mode: { allowedValues: ["std", "pro"] },
430
- // },
431
- // concurrentRequests: 3,
432
- // // "std" = Standard mode, "pro" = Professional mode
433
- // cost: {
434
- // table: {
435
- // std: { 5: 0.14, 10: 0.28 },
436
- // pro: { 5: 0.49, 10: 0.98 },
437
- // },
438
- // },
439
- // },
440
- //
441
- // "kling-v1.6": {
442
- // modelId: "kling-v1-6",
443
- // type: ["text-to-video"],
444
- // fields: {
445
- // prompt: { required: true },
446
- // aspectRatio: { allowedValues: ["16:9", "9:16", "1:1"] }, // assumed similar to v1
447
- // duration: { allowedValues: [5, 10] }, // likely same limits
448
- // cfg_scale: {},
449
- // mode: { allowedValues: ["std", "pro"] },
450
- // negative_prompt: {},
451
- // },
452
- // concurrentRequests: 3,
453
- // cost: {
454
- // table: {
455
- // std: { 5: 0.28, 10: 0.56 },
456
- // pro: { 5: 0.49, 10: 0.98 },
457
- // },
458
- // },
459
- // },
460
- // "kling-video-o1": {}
461
- "kling-v2.6": {
462
- modelId: "kling-v2-6",
463
- type: ["text-to-video", "image-to-video"],
216
+ /// --- Kling models ---
217
+ "kling-v1": {
218
+ modelId: "kling-v1",
219
+ type: ["text-to-video"],
464
220
  fields: {
465
221
  prompt: { required: true },
466
- aspectRatio: { allowedValues: ["16:9", "9:16", "1:1"] },
467
- duration: { allowedValues: [5, 10] },
468
- mode: { allowedValues: ["std", "pro"] },
222
+ aspectRatio: { allowedValues: ["16:9", "9:16", "1:1"] }, // default 16:9
223
+ duration: { allowedValues: [5, 10] }, // seconds (5 or 10)
224
+ cfg_scale: {}, // float, probably between 0 and 1
469
225
  negative_prompt: {},
226
+ mode: { allowedValues: ["std", "pro"] },
470
227
  },
471
228
  concurrentRequests: 3,
229
+ // "std" = Standard mode, "pro" = Professional mode
472
230
  cost: {
473
- audio: {
474
- table: {
475
- std: { 5: 0.21, 10: 0.42 },
476
- pro: { 5: 0.35, 10: 0.7 },
477
- },
478
- },
479
- noAudio: {
480
- table: {
481
- std: { 5: 0.7, 10: 1.4 },
482
- pro: { 5: 0.84, 10: 1.68 },
483
- },
231
+ table: {
232
+ std: { 5: 0.14, 10: 0.28 },
233
+ pro: { 5: 0.49, 10: 0.98 },
484
234
  },
485
235
  },
486
236
  },
487
- "kling-v2.5-turbo": {
488
- modelId: "kling-v2-5-turbo",
489
- type: ["text-to-video", "image-to-video"],
237
+ "kling-v1.6": {
238
+ modelId: "kling-v1-6",
239
+ type: ["text-to-video"],
490
240
  fields: {
491
241
  prompt: { required: true },
492
- aspectRatio: { allowedValues: ["16:9", "9:16", "1:1"] },
493
- duration: { allowedValues: [5, 10] },
242
+ aspectRatio: { allowedValues: ["16:9", "9:16", "1:1"] }, // assumed similar to v1
243
+ duration: { allowedValues: [5, 10] }, // likely same limits
244
+ cfg_scale: {},
494
245
  mode: { allowedValues: ["std", "pro"] },
495
246
  negative_prompt: {},
496
247
  },
497
248
  concurrentRequests: 3,
498
249
  cost: {
499
250
  table: {
500
- std: { 5: 0.21, 10: 0.42 },
501
- pro: { 5: 0.35, 10: 0.7 },
251
+ std: { 5: 0.28, 10: 0.56 },
252
+ pro: { 5: 0.49, 10: 0.98 },
502
253
  },
503
254
  },
504
255
  },
505
256
  "kling-v2-master": {
506
257
  modelId: "kling-v2-master",
507
- type: ["text-to-video", "image-to-video"],
258
+ type: ["text-to-video"],
508
259
  fields: {
509
260
  prompt: { required: true },
510
261
  aspectRatio: { allowedValues: ["16:9", "9:16", "1:1"] },
@@ -519,27 +270,9 @@ exports.aiModelConfigs = {
519
270
  },
520
271
  },
521
272
  },
522
- "kling-v2.1": {
523
- modelId: "kling-v2-1",
524
- type: ["image-to-video"],
525
- fields: {
526
- prompt: { required: true },
527
- aspectRatio: { allowedValues: ["16:9", "9:16", "1:1"] },
528
- duration: { allowedValues: [5, 10] },
529
- mode: { allowedValues: ["std", "pro"] },
530
- negative_prompt: {},
531
- },
532
- concurrentRequests: 3,
533
- cost: {
534
- table: {
535
- std: { 5: 0.28, 10: 0.56 },
536
- pro: { 5: 0.49, 10: 0.98 },
537
- },
538
- },
539
- },
540
273
  "kling-v2.1-master": {
541
274
  modelId: "kling-v2-1-master",
542
- type: ["text-to-video", "image-to-video"],
275
+ type: ["text-to-video"],
543
276
  fields: {
544
277
  prompt: { required: true },
545
278
  aspectRatio: { allowedValues: ["16:9", "9:16", "1:1"] },
@@ -555,9 +288,9 @@ exports.aiModelConfigs = {
555
288
  },
556
289
  },
557
290
  // --- MINIMAX model ---
558
- "minimax-hailuo-2.3-fast": {
559
- modelId: "MiniMax-Hailuo-2.3-Fast",
560
- type: ["text-to-video", "image-to-video"],
291
+ "minimax-hailuo-02": {
292
+ modelId: "MiniMax-Hailuo-02",
293
+ type: ["text-to-video"],
561
294
  fields: {
562
295
  prompt: { required: true },
563
296
  resolution: { allowedValues: ["768P", "1080P"] }, // 768P as default
@@ -570,156 +303,115 @@ exports.aiModelConfigs = {
570
303
  // parallelRequests: 1,
571
304
  cost: {
572
305
  table: {
573
- "768P": { 6: 0.19, 10: 0.32 },
574
- "1080P": { 6: 0.33 },
306
+ "768P": { 6: 0.28, 10: 0.56 },
307
+ "1080P": { 6: 0.49 },
575
308
  },
576
309
  },
577
310
  },
578
- "minimax-hailuo-2.3": {
579
- modelId: "MiniMax-Hailuo-2.3",
311
+ "T2V-01-Director": {
312
+ modelId: "T2V-01-Director",
580
313
  type: ["text-to-video"],
581
314
  fields: {
582
315
  prompt: { required: true },
583
- resolution: { allowedValues: ["768P", "1080P"] }, // 768P as default
584
- duration: { allowedValues: [6, 10] }, // in seconds, 6s as default
316
+ resolution: { allowedValues: ["720P"] }, // 720P as default
317
+ duration: { allowedValues: [6] }, // in seconds, 5s as default
585
318
  },
586
319
  durationRules: {
587
- 6: ["768P", "1080P"],
588
- 10: ["768P"],
320
+ 6: ["720P"],
589
321
  },
590
322
  // parallelRequests: 1,
591
323
  cost: {
592
- table: {
593
- "768P": { 6: 0.28, 10: 0.56 },
594
- "1080P": { 6: 0.49 },
595
- },
324
+ fixed: 0.28, // cost per video generation
596
325
  },
597
326
  },
598
- "minimax-hailuo-02": {
599
- modelId: "MiniMax-Hailuo-02",
327
+ "T2V-01": {
328
+ modelId: "T2V-01",
600
329
  type: ["text-to-video"],
601
330
  fields: {
602
331
  prompt: { required: true },
603
- resolution: { allowedValues: ["512P", "768P", "1080P"] }, // 768P as default
604
- duration: { allowedValues: [6, 10] }, // in seconds, 6s as default
332
+ resolution: { allowedValues: ["720P"] }, // 720P as default
333
+ duration: { allowedValues: [6] }, // in seconds, 5s as default
605
334
  },
606
335
  durationRules: {
607
- 6: ["512P", "768P", "1080P"],
608
- 10: ["512P", "768P"],
336
+ 6: ["720P"],
609
337
  },
610
338
  // parallelRequests: 1,
339
+ cost: { fixed: 0.28 },
340
+ },
341
+ // --- Alibaba models ---
342
+ "alibaba-wan-2.5": {
343
+ modelId: "wan2.5-t2v-preview",
344
+ type: ["text-to-video"],
345
+ fields: {
346
+ prompt: { required: true },
347
+ resolution: {
348
+ allowedValues: ["480p", "720p", "1080p"],
349
+ default: "1080p",
350
+ },
351
+ aspectRatio: {
352
+ allowedValues: ["16:9", "9:16", "1:1", "4:3", "3:4"],
353
+ default: "16:9",
354
+ },
355
+ duration: {
356
+ allowedValues: [5, 10],
357
+ default: 5,
358
+ },
359
+ },
360
+ resolutionRules: {
361
+ "480p": ["16:9", "9:16", "1:1"],
362
+ "720p": ["16:9", "9:16", "1:1", "4:3", "3:4"],
363
+ "1080p": ["16:9", "1:1", "4:3", "3:4"],
364
+ },
611
365
  cost: {
612
366
  table: {
613
- "512P": { 6: 0.1, 10: 0.15 },
614
- "768P": { 6: 0.28, 10: 0.56 },
615
- "1080P": { 6: 0.49 },
367
+ "832x480": { 5: 0.25, 10: 0.5 },
368
+ "480x832": { 5: 0.25, 10: 0.5 },
369
+ "624x624": { 5: 0.25, 10: 0.5 },
370
+ "1280x720": { 5: 0.5, 10: 1.0 },
371
+ "720x1280": { 5: 0.5, 10: 1.0 },
372
+ "960x960": { 5: 0.5, 10: 1.0 },
373
+ "1088x832": { 5: 0.5, 10: 1.0 },
374
+ "832x1088": { 5: 0.5, 10: 1.0 },
375
+ "1920x1080": { 5: 0.75, 10: 1.5 },
376
+ "1080x1920": { 5: 0.75, 10: 1.5 },
377
+ "1440x1440": { 5: 0.75, 10: 1.5 },
378
+ "1632x1248": { 5: 0.75, 10: 1.5 },
379
+ "1248x1632": { 5: 0.75, 10: 1.5 },
380
+ },
381
+ },
382
+ },
383
+ "alibaba-wan-2.2": {
384
+ modelId: "wan2.2-t2v-plus",
385
+ type: ["text-to-video"],
386
+ fields: {
387
+ prompt: { required: true },
388
+ resolution: {
389
+ allowedValues: ["480p", "1080p"],
390
+ },
391
+ aspectRatio: {
392
+ allowedValues: ["16:9", "9:16", "1:1", "4:3", "3:4"],
393
+ },
394
+ duration: {
395
+ allowedValues: [5],
396
+ },
397
+ },
398
+ resolutionRules: {
399
+ "480p": ["16:9", "9:16", "1:1"],
400
+ "1080p": ["16:9", "1:1", "4:3", "3:4"],
401
+ },
402
+ cost: {
403
+ table: {
404
+ "832x480": { 5: 0.1 }, // 0.02/sec × 5s
405
+ "480x832": { 5: 0.1 },
406
+ "624x624": { 5: 0.1 },
407
+ "1920x1080": { 5: 0.5 }, // 0.10/sec × 5s
408
+ "1080x1920": { 5: 0.5 },
409
+ "1440x1440": { 5: 0.5 },
410
+ "1632x1248": { 5: 0.5 },
411
+ "1248x1632": { 5: 0.5 },
616
412
  },
617
413
  },
618
414
  },
619
- // "T2V-01-Director": {
620
- // modelId: "T2V-01-Director",
621
- // type: ["text-to-video"],
622
- // fields: {
623
- // prompt: { required: true },
624
- // resolution: { allowedValues: ["720P"] }, // 720P as default
625
- // duration: { allowedValues: [6] }, // in seconds, 5s as default
626
- // },
627
- // durationRules: {
628
- // 6: ["720P"],
629
- // },
630
- // // parallelRequests: 1,
631
- // cost: {
632
- // fixed: 0.28, // cost per video generation
633
- // },
634
- // },
635
- // "T2V-01": {
636
- // modelId: "T2V-01",
637
- // type: ["text-to-video"],
638
- // fields: {
639
- // prompt: { required: true },
640
- // resolution: { allowedValues: ["720P"] }, // 720P as default
641
- // duration: { allowedValues: [6] }, // in seconds, 5s as default
642
- // },
643
- // durationRules: {
644
- // 6: ["720P"],
645
- // },
646
- // // parallelRequests: 1,
647
- // cost: { fixed: 0.28 },
648
- // },
649
- // --- Alibaba models ---
650
- // "alibaba-wan-2.5": {
651
- // modelId: "wan2.5-t2v-preview",
652
- // type: ["text-to-video"],
653
- // fields: {
654
- // prompt: { required: true },
655
- // resolution: {
656
- // allowedValues: ["480p", "720p", "1080p"],
657
- // default: "1080p",
658
- // },
659
- // aspectRatio: {
660
- // allowedValues: ["16:9", "9:16", "1:1", "4:3", "3:4"],
661
- // default: "16:9",
662
- // },
663
- // duration: {
664
- // allowedValues: [5, 10],
665
- // default: 5,
666
- // },
667
- // },
668
- // resolutionRules: {
669
- // "480p": ["16:9", "9:16", "1:1"],
670
- // "720p": ["16:9", "9:16", "1:1", "4:3", "3:4"],
671
- // "1080p": ["16:9", "1:1", "4:3", "3:4"],
672
- // },
673
- // cost: {
674
- // table: {
675
- // "832x480": { 5: 0.25, 10: 0.5 },
676
- // "480x832": { 5: 0.25, 10: 0.5 },
677
- // "624x624": { 5: 0.25, 10: 0.5 },
678
- // "1280x720": { 5: 0.5, 10: 1.0 },
679
- // "720x1280": { 5: 0.5, 10: 1.0 },
680
- // "960x960": { 5: 0.5, 10: 1.0 },
681
- // "1088x832": { 5: 0.5, 10: 1.0 },
682
- // "832x1088": { 5: 0.5, 10: 1.0 },
683
- // "1920x1080": { 5: 0.75, 10: 1.5 },
684
- // "1080x1920": { 5: 0.75, 10: 1.5 },
685
- // "1440x1440": { 5: 0.75, 10: 1.5 },
686
- // "1632x1248": { 5: 0.75, 10: 1.5 },
687
- // "1248x1632": { 5: 0.75, 10: 1.5 },
688
- // },
689
- // },
690
- // },
691
- // "alibaba-wan-2.2": {
692
- // modelId: "wan2.2-t2v-plus",
693
- // type: ["text-to-video"],
694
- // fields: {
695
- // prompt: { required: true },
696
- // resolution: {
697
- // allowedValues: ["480p", "1080p"],
698
- // },
699
- // aspectRatio: {
700
- // allowedValues: ["16:9", "9:16", "1:1", "4:3", "3:4"],
701
- // },
702
- // duration: {
703
- // allowedValues: [5],
704
- // },
705
- // },
706
- // resolutionRules: {
707
- // "480p": ["16:9", "9:16", "1:1"],
708
- // "1080p": ["16:9", "1:1", "4:3", "3:4"],
709
- // },
710
- // cost: {
711
- // table: {
712
- // "832x480": { 5: 0.1 }, // 0.02/sec × 5s
713
- // "480x832": { 5: 0.1 },
714
- // "624x624": { 5: 0.1 },
715
- // "1920x1080": { 5: 0.5 }, // 0.10/sec × 5s
716
- // "1080x1920": { 5: 0.5 },
717
- // "1440x1440": { 5: 0.5 },
718
- // "1632x1248": { 5: 0.5 },
719
- // "1248x1632": { 5: 0.5 },
720
- // },
721
- // },
722
- // },
723
415
  "openai-sora-2": {
724
416
  modelId: "sora-2",
725
417
  type: ["text-to-video", "image-to-video", "video-to-video"],
@@ -768,44 +460,44 @@ exports.aiModelConfigs = {
768
460
  },
769
461
  requestPerMin: 10,
770
462
  },
771
- // "azure-sora": {
772
- // modelId: "sora",
773
- // type: ["text-to-video", "image-to-video", "video-to-video"],
774
- // fields: {
775
- // prompt: { required: true },
776
- // dimensions: {
777
- // allowedValues: [
778
- // "480x480",
779
- // "480x854",
780
- // "854x480",
781
- // "720x720",
782
- // "720x1280",
783
- // "1280x720",
784
- // "1080x1080",
785
- // "1080x1920",
786
- // "1920x1080",
787
- // ],
788
- // default: "480x480",
789
- // },
790
- // duration: {
791
- // allowedValues: [1, 5, 10, 15, 20], // in seconds
792
- // default: 5,
793
- // },
794
- // imageUrl: { required: false }, // up to 2
795
- // videoUrl: { required: false }, // up to 5s
796
- // },
797
- // // parallelRequests: 1,
798
- // cost: {
799
- // table: {
800
- // "480x480": { 5: 0.15, 10: 0.15, 15: 0.15, 20: 0.15 },
801
- // "480x854": { 5: 0.2, 10: 0.2, 15: 0.2, 20: 0.2 },
802
- // "720x720": { 5: 0.3, 10: 0.3, 15: 0.3, 20: 0.3 },
803
- // "1280x720": { 5: 0.45, 10: 0.5, 15: 0.65, 20: 0.75 },
804
- // "1080x1080": { 5: 0.6, 10: 0.75, 15: 1.1, 20: 1.35 },
805
- // "1920x1080": { 5: 1.3, 10: 1.85, 15: 2.9, 20: 3.6 },
806
- // },
807
- // },
808
- // },
463
+ "azure-sora": {
464
+ modelId: "sora",
465
+ type: ["text-to-video", "image-to-video", "video-to-video"],
466
+ fields: {
467
+ prompt: { required: true },
468
+ dimensions: {
469
+ allowedValues: [
470
+ "480x480",
471
+ "480x854",
472
+ "854x480",
473
+ "720x720",
474
+ "720x1280",
475
+ "1280x720",
476
+ "1080x1080",
477
+ "1080x1920",
478
+ "1920x1080",
479
+ ],
480
+ default: "480x480",
481
+ },
482
+ duration: {
483
+ allowedValues: [1, 5, 10, 15, 20], // in seconds
484
+ default: 5,
485
+ },
486
+ imageUrl: { required: false }, // up to 2
487
+ videoUrl: { required: false }, // up to 5s
488
+ },
489
+ // parallelRequests: 1,
490
+ cost: {
491
+ table: {
492
+ "480x480": { 5: 0.15, 10: 0.15, 15: 0.15, 20: 0.15 },
493
+ "480x854": { 5: 0.2, 10: 0.2, 15: 0.2, 20: 0.2 },
494
+ "720x720": { 5: 0.3, 10: 0.3, 15: 0.3, 20: 0.3 },
495
+ "1280x720": { 5: 0.45, 10: 0.5, 15: 0.65, 20: 0.75 },
496
+ "1080x1080": { 5: 0.6, 10: 0.75, 15: 1.1, 20: 1.35 },
497
+ "1920x1080": { 5: 1.3, 10: 1.85, 15: 2.9, 20: 3.6 },
498
+ },
499
+ },
500
+ },
809
501
  // --- TEXT GEN models ---
810
502
  "openai-gpt-4o-mini": {
811
503
  modelId: "gpt-4o-mini",