Seedance 2.5ByteDance

Seedance 2.5 in the Video Model Arena

ByteDance's newest Seedance with long clips and native audio.

By category

CategoryScoreVotes
Anime—0
Realism—0
Motion—0
Text in video—0
Faces—0
Product—0

Seedance 2.5 clips

  • Latte art pour

    5s · 480p

  • Skateboard bowl trick

    5s · 480p

  • Neon sign in the rain

    5s · 480p

  • Fisherman portrait

    5s · 480p

  • Sneaker splash

    5s · 480p

  • Anime rooftop at dusk

    5s · 480p

Seedance 2.5 vs

Make this video in Korpi

Script, scenes, voice and captions in one place.

Run Seedance 2.5 via the API

Pay per clip on api.korpi.ai

Get API key
JavaScript
async function readResponse(response) {
  const result = await response.json();
  if (!response.ok || result.error || result.status === "failed") {
    throw new Error(JSON.stringify(result));
  }
  return result;
}

const res = await fetch("https://backend.korpi.ai/v1/videos/generations", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.KORPI_API_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    "model": "seedance-2.5",
    "prompt": "A girl with a red scarf turns toward the camera on a neon rooftop at dusk",
    "aspect_ratio": "9:16",
    "duration": 6
  }),
});
let result = await readResponse(res);

const deadline = Date.now() + 30 * 60_000;
while (true) {
  let next = result.result_url;
  if (!next && ["queued", "in_progress", "pending"].includes(result.status)) {
    next = `https://backend.korpi.ai/v1/videos/generations/${result.id}`;
  }
  if (!next) break;
  if (Date.now() >= deadline) throw new Error("Polling timed out");
  await new Promise((resolve) => setTimeout(resolve, 3000));
  const poll = await fetch(new URL(next, "https://backend.korpi.ai"), {
    headers: { Authorization: `Bearer ${process.env.KORPI_API_KEY}` },
  });
  result = await readResponse(poll);
}
console.log(result);