Model Details
Seedance 2.5 Video to Video generates a new clip from footage you already have — restage a shot elsewhere, change its look, carry its camera move and pacing into another scene, or continue the action past where the source ends. Send 1 to 10 source clips in `reference_videos`, optionally add reference images and audio, and describe the result. It is the only Seedance 2.5 variant that accepts existing footage, and the only one whose price scales with what you send as well as what you get back, so trim each source to the part that matters. Output is 480p or 720p, up to 30 seconds at 24 fps, with synchronized sound at no extra cost. The frame shape is yours: a 16:9 source can come back as a 9:16 vertical cut, or `adaptive` keeps the source's own shape.
**Name every reference in the prompt.** They are addressed positionally as `@Video1`…`@Video10`, `@Image1`…`@Image30` and `@Audio1`…`@Audio10`, numbered by their order in `reference_videos`, `reference_images` and `reference_audios`. A reference the prompt never names is usually ignored:
``` reference_videos: [ lantern-alley-night.mp4 ] reference_images: [ cherry-red-motorcycle.jpg ] prompt: "Match the camera movement and pacing of @Video1, but restage it on a sunlit desert roadside at midday; the rider pulls up on the motorcycle from @Image1." ```
## Best for - Restyling or restaging existing footage — new setting, season or look, with the source's camera move and pacing carried over - Extending or continuing a shot past where the source footage ends - Reframing as you transform — a landscape source into a vertical cut, or `adaptive` to keep the original shape - Mixing a source clip with reference images and audio in one generation, each addressed by name
## Choose another model when - You have no source footage: use `bytedance/seedance-v2.5/image-to-video` (one still), `bytedance/seedance-v2.5/first-last-frame` (a keyframe pair) or `bytedance/seedance-v2.5/text-to-video` (a prompt alone) - You have references but no video — `bytedance/seedance-v2.5/reference-to-video` costs less, pricing only the finished clip - You need more than 720p — `bytedance/seedance-v2/video-to-video` reaches 1080p - You need a frame-accurate edit of the original file — this returns a new generation, so exact frames, faces and on-screen text are not preserved - You need a fixed seed or a locked-off camera — neither exists on this generation
## Tips - Trim source clips before you send them: their duration is billed alongside the output, and a long or busy clip also dilutes the prompt's control - Order is the address: `@Video1` is the first URL in `reference_videos` - Say which property you are borrowing — motion, framing, light — not just "like the reference" - `reference_audios` is experimental: the clips are accepted and cost nothing, but their effect on the soundtrack is unverified
To run via the ModelRunner JavaScript client: ```js import { modelrunner } from "@modelrunner/client";
const result = await modelrunner.subscribe("bytedance/seedance-v2.5/video-to-video", { input: { prompt: "Match the camera movement and pacing of @Video1, but restage it on a sunlit desert roadside at midday; the rider pulls up on the cherry-red motorcycle from @Image1", reference_videos: ["https://media.modelrunner.ai/6m0I6xs8DL2oaJhQoD8x9.mp4"], reference_images: ["https://media.modelrunner.ai/6M3U2hs7xUtWJGZmjkvuN.jpeg"], resolution: "720p", aspect_ratio: "16:9", duration: 6, generate_audio: true, }, }); ```

