Feature

API, SDKBreaking

Aspect ratio for video

Video takes a size, with the same shapes as images. The resolution tier moves into it.

POST /video/generate takes size, with the same shapes as images. Mynth picks the closest aspect ratio the model serves.

{
  "model": "bytedance/seedance-2.0-mini",
  "prompt": "A lighthouse beam sweeping over waves",
  "size": "9:16_720p"
}

The resolution tier moves into size, so the top-level resolution field is gone:

BeforeNow
resolution: "1080p"size: "auto_1080p"
no aspect ratiosize: "9:16", or size: "9:16_1080p" with a tier
no structured sizesize: { type: "aspect_ratio", aspect_ratio: "9:16", resolution: "1080p" }

The tier is still strict, because it sets the price. A tier the model does not serve answers 400 validation_error. With a first frame, the frame sets the shape and the aspect ratio is ignored.

Each video in the result has aspect_ratio, the ratio it was rendered at, or null when a first frame set it. The SDK returns it as aspectRatio. Generate video has the full list.