@sogni-ai/sogni-client 5.69.0 → 5.70.0

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.
@@ -272,11 +272,11 @@ export const SOGNI_HOSTED_TOOLS_MANIFEST: unknown = {
272
272
  },
273
273
  "width": {
274
274
  "type": "number",
275
- "description": "Video width in pixels. LTX 2.3: 640-3840. WAN: 480-1536. Default resolution depends on model and quality tier: LTX Fast about 720p and High/Pro about 1080p; WAN Fast uses 480p short side and High/Pro uses 720p short side. Set width only when the user specifies an exact width or orientation-qualified exact pixels. A bare named resolution like \"720p resolution\" is a short-side target, not an instruction to make landscape 1280x720. If the user gives only one exact dimension, set only that dimension and preserve/infer the sensible aspect ratio. User-requested exact dimensions override the default media quality. Mappings when orientation is explicit: 480p landscape=854x480, 480p portrait=480x854, 720p landscape=1280x720, 720p portrait=720x1280, 1080p landscape=1920x1080, 1080p portrait=1080x1920, 4K landscape=3840x2160. Non-step values are accepted when in bounds; LTX snaps to the nearest 64px step and WAN snaps to the nearest 16px step internally, so do not ask the user to adjust by a few pixels."
275
+ "description": "Video width in pixels. LTX 2.3: 640-3840. Wan 2.2 (wan22): 480-1536 per side and at most 1,048,576 pixels (1024x1024); a larger size renders scaled down to that at its aspect ratio (1920x1080 renders at 1360x768). Wan 3 (wan3.0-video, wan3.0-spicy-video): 480-1920 per side; it renders the 480p, 720p, or 1080p class nearest the short side, at the nearest of 16:9, 4:3, 1:1, 3:4, or 9:16, not the exact pixels. Default resolution depends on model and quality tier: LTX Fast about 720p and High/Pro about 1080p; WAN Fast uses 480p short side and High/Pro uses 720p short side. Set width only when the user specifies an exact width or orientation-qualified exact pixels. A bare named resolution like \"720p resolution\" is a short-side target, not an instruction to make landscape 1280x720. If the user gives only one exact dimension, set only that dimension and preserve/infer the sensible aspect ratio. User-requested exact dimensions override the default media quality. Mappings when orientation is explicit: 480p landscape=854x480, 480p portrait=480x854, 720p landscape=1280x720, 720p portrait=720x1280, 1080p landscape=1920x1080, 1080p portrait=1080x1920, 4K landscape=3840x2160. Non-step values are accepted when in bounds; LTX snaps to the nearest 64px step and Wan 2.2 snaps to the nearest 16px step internally, so do not ask the user to adjust by a few pixels."
276
276
  },
277
277
  "height": {
278
278
  "type": "number",
279
- "description": "Video height in pixels. LTX 2.3: 640-3840. WAN: 480-1536. Set height only when the user specifies an exact height or orientation-qualified exact pixels. A bare named resolution like \"720p resolution\" is a short-side target; do not convert it to landscape dimensions unless the user says landscape/horizontal/widescreen. If the user gives only one exact dimension, set only that dimension and preserve/infer the sensible aspect ratio. User-requested exact dimensions override Default Media Quality, including Pro. Non-step values are accepted when in bounds; LTX snaps to the nearest 64px step and WAN snaps to the nearest 16px step internally, so do not ask the user to adjust by a few pixels."
279
+ "description": "Video height in pixels. LTX 2.3: 640-3840. Wan 2.2 (wan22): 480-1536 per side and at most 1,048,576 pixels (1024x1024); a larger size renders scaled down to that at its aspect ratio (1920x1080 renders at 1360x768). Wan 3 (wan3.0-video, wan3.0-spicy-video): 480-1920 per side; it renders the 480p, 720p, or 1080p class nearest the short side, at the nearest of 16:9, 4:3, 1:1, 3:4, or 9:16, not the exact pixels. Set height only when the user specifies an exact height or orientation-qualified exact pixels. A bare named resolution like \"720p resolution\" is a short-side target; do not convert it to landscape dimensions unless the user says landscape/horizontal/widescreen. If the user gives only one exact dimension, set only that dimension and preserve/infer the sensible aspect ratio. User-requested exact dimensions override Default Media Quality, including Pro. Non-step values are accepted when in bounds; LTX snaps to the nearest 64px step and Wan 2.2 snaps to the nearest 16px step internally, so do not ask the user to adjust by a few pixels."
280
280
  },
281
281
  "targetResolution": {
282
282
  "type": "number",
@@ -1653,6 +1653,23 @@ function applyVideoParams(
1653
1653
  rejectRetiredOutputScale(params);
1654
1654
  validateMinimaxH3Params(params);
1655
1655
  const keyFrame: Record<string, any> = { ...inputKeyframe };
1656
+ if (params.referenceVideoCompression !== undefined) {
1657
+ if (!['none', 'vpack'].includes(params.referenceVideoCompression)) {
1658
+ throw new Error('referenceVideoCompression must be none or vpack.');
1659
+ }
1660
+ if (params.referenceVideoCompression === 'vpack') {
1661
+ if (
1662
+ !isMinimaxH3ReferenceModel(params.modelId) ||
1663
+ params.modelId.endsWith('_2stage') ||
1664
+ !getMinimaxH3ReferenceVideoSlots(params).length
1665
+ ) {
1666
+ throw new Error(
1667
+ 'VPack requires an uploaded reference video on a one-stage MiniMax H3 Reference to Video model.'
1668
+ );
1669
+ }
1670
+ keyFrame.referenceVideoCompression = 'vpack';
1671
+ }
1672
+ }
1656
1673
  if (params.referenceImage) {
1657
1674
  keyFrame.hasReferenceImage = true;
1658
1675
  }
@@ -717,6 +717,8 @@ export interface VideoProjectParams extends BaseProjectParams {
717
717
  * pricing and job admission. Omit this field when duration is unavailable.
718
718
  */
719
719
  referenceVideoDurations?: number[];
720
+ /** Opt-in VPack compression for one-stage MiniMax H3 reference video. Omitted/none preserves the original reference tokens. */
721
+ referenceVideoCompression?: 'none' | 'vpack';
720
722
  /**
721
723
  * Inpaint mask IMAGE for distilled LTX 2.5 or LTX 2.3 v2v inpaint workflows.
722
724
  * White pixels mark the region to regenerate. Maps to jobKey 'referenceMask'.
package/src/version.ts CHANGED
@@ -1,3 +1,3 @@
1
1
  // AUTO-GENERATED by scripts/generate-version.mjs — do not edit.
2
2
  // Source of truth: package.json version.
3
- export const LIB_VERSION = '5.69.0';
3
+ export const LIB_VERSION = '5.70.0';