Sora 2 Remix
openai/sora-2/video-to-video/remixSora 2 Video To Video Remix is OpenAI's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.
- Base price
- $0.10USD / run
- Execution
- async
- Model type
- video
- Input fields
- 2
Try the model
Playground
Your output will appear here
Complete the inputs, then click Run.
Specifications
Pricing
- Base price
- $0.10 / run
- Billing formula
- params.duration * 0.10
Context & modalities
- Input
- Schema-defined
- Output
- video
Capabilities
- Chat
- Not supported
- Vision
- Not supported
- Reasoning
- Not supported
- Structured output
- Not supported
- Function calling
- Not supported
- Audio input
- Not supported
Access
- Provider
- OpenAI
- Model ID
- openai/sora-2/video-to-video/remix
- Execution
- async
- API
- Unified Run API
- Endpoint
- /v1/run
API README
Sora 2 Video To Video Remix
Sora 2 Video To Video Remix is the Sora 2 route for prompt-directed video remixing, turning an existing video and revised direction into a production-ready result while keeping the operation distinct from neighboring endpoints. Sora 2 Video To Video Remix is OpenAI's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification. The workflow is designed for creators who need the model’s specific transformation to remain visible in the request, so the source, intended change, and finished artifact can be reviewed as one coherent creative decision.
In practical use, this route exposes prompt, video_id, sync_mode, delete_video, safety_tolerance to shape the exact deliverable. Those controls let a team preserve the important source constraints, state subject behavior or material treatment precisely, choose supported timing or output characteristics, and reproduce successful settings across alternate takes. The result fits an iterative pipeline: establish the core brief, compare controlled variations, then pass the selected asset into editorial, design, localization, visualization, or publishing work.
Highlights
- Source-video remix. Reinterpret an existing clip from a new written direction without treating the request as a fresh text-only scene.
- Scene continuity. Maintain subjects, environments, and motion across the generated or remixed shot.
- Directable cinematography. Express action, camera movement, framing, pacing, and visual tone in the prompt.
- Resolution and timing choices. Select the documented duration and delivery format appropriate to this Sora 2 route.
Pricing
| Configuration | Price |
|---|---|
| 1 seconds | $0.10 |
| 2 seconds | $0.20 |
| 3 seconds | $0.30 |
| 4 seconds | $0.40 |
| 5 seconds | $0.50 |
| 6 seconds | $0.60 |
| 7 seconds | $0.70 |
| 8 seconds | $0.80 |
| 9 seconds | $0.90 |
| 10 seconds | $1.00 |
| 11 seconds | $1.10 |
| 12 seconds | $1.20 |
| 13 seconds | $1.30 |
| 14 seconds | $1.40 |
| 15 seconds | $1.50 |
| 16 seconds | $1.60 |
| 17 seconds | $1.70 |
| 18 seconds | $1.80 |
| 19 seconds | $1.90 |
| 20 seconds | $2.00 |
When to Use
| Scenario | Why it fits |
|---|---|
| Exact workflow fit | Choose this route when the required deliverable is prompt-directed video remixing, rather than a related route with different source media. |
| Directed creative iteration | Use it when subject, motion, material, speech, framing, or finish should be expressed explicitly and compared across controlled variants. |
| Existing-asset continuity | Use it when supplied images, video, audio, references, or styles must remain the anchor for the generated result. |
| Repeatable production | Use it when successful inputs need to be saved and rerun across a campaign, asset set, localization pass, or batch. |
| Pipeline handoff | Use it when the returned artifact will move into editorial, compositing, visualization, review, storage, or publishing. |
Prompt Guide
Start with the source or subject, then describe the intended transformation, movement or behavior, camera and composition, and the desired finish. Keep media URLs reachable, use only fields documented for this exact route, and change one major control at a time when comparing results. For source-led tasks, describe what should change as well as what must remain recognizable.
{
"prompt": "A cinematic close shot with clear subject action, camera movement, lighting, and final visual treatment."
}
Technical Specs
| Property | Value |
|---|---|
| Model ID | openai/sora-2/video-to-video/remix |
| Execution mode | async |
| Required inputs | prompt |
prompt | string |
video_id | string |
sync_mode | boolean; default: false |
delete_video | boolean; default: true |
safety_tolerance | string; default: 6 |
Related Models
openai/sora-2/image-to-video/proopenai/sora-2/text-to-video/proopenai/sora-2/charactersopenai/sora-2/image-to-video
Start building
Send your first request
OpenAI-compatible endpoint with unified authentication and usage tracking.
# The quoted heredoc keeps Unicode and shell metacharacters unchanged.
result=$(curl --fail-with-body --silent \
-X POST "https://api.sandbase.ai/v1/run" \
-H "Authorization: Bearer $SANDBASE_API_KEY" \
-H "Content-Type: application/json" \
--data-binary @- <<'SANDBASE_JSON'
{
"model": "openai/sora-2/video-to-video/remix",
"prompt": "Change the cat's fur color to purple.",
"video_id": "video_123"
}
SANDBASE_JSON
)
run_id=$(printf '%s' "$result" | jq -r .id)
for attempt in $(seq 1 120); do
status=$(printf '%s' "$result" | jq -r .status)
case "$status" in completed|failed|timeout) break ;; esac
sleep 2
result=$(curl --fail-with-body --silent \
-H "Authorization: Bearer $SANDBASE_API_KEY" \
"https://api.sandbase.ai/v1/run/$run_id")
done
status=$(printf '%s' "$result" | jq -r .status)
[ "$status" = completed ] || { echo "Generation ended: $status" >&2; exit 1; }
printf '%s\n' "$result"Choose your model
Compare models
| Model | Context | Input / 1M | Output / 1M | Released |
|---|---|---|---|---|
Sora 2 RemixThis model OpenAI | — | — | — | Oct 8, 2025 |
OpenAI | — | — | — | Mar 12, 2026 |
OpenAI | — | — | — | Oct 6, 2025 |
OpenAI | — | — | — | Oct 6, 2025 |
OpenAI | — | — | — | Oct 6, 2025 |
OpenAI | — | — | — | Oct 6, 2025 |
