Video models

The video models, the resolutions, durations and frame inputs each one accepts, and why video always needs an explicit model id.

Video runs on POST /video/generate, and model is required. There is no auto for video.

ModelIdResolutionsDuration (s)Frame inputs
Seedance 2.0 Minibytedance/seedance-2.0-mini480p, 720p4–15, default 5first frame, last frame
Gemini Omni Flash 1.1google/gemini-omni-flash-1.1720p, 1080p, 4k3–10, default 8first frame, last frame
P-Videoprunaai/p-video720p, 1080p1–10, default 5first frame
Grok Imagine Video 1.5xai/grok-imagine-video-1.5480p, 720p, 1080p1–15, default 8first frame

Bold marks the default resolution. Every model does text-to-video and image-to-video, and generates audio by default. Image-to-video needs exactly one first_frame. A last_frame is optional where the model takes one. No video model accepts a reference input today.

This table is a snapshot. The SDK exports the same data as AVAILABLE_VIDEO_MODELS, and modes and pricing.perSecond on GET https://api.mynth.io/models are the live source for inputs and resolution tiers.

resolution, duration, audio, and inputs are checked against the model when the task is created. A value the model does not serve answers 400 VALIDATION_ERROR, and nothing is queued.

Price#

Video is priced per second at the requested resolution, so the same prompt costs different amounts on different models and tiers. Video estimates are always exact, because the model is always explicit.

curl https://api.mynth.io/video/generate/estimate \
  -H "Authorization: Bearer $MYNTH_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"bytedance/seedance-2.0-mini","prompt":"A lighthouse beam sweeping over waves","duration":5}'

Next steps#