Browse ModelsOpenaiOpenai Sora 2 Pro Image To Video

Openai Sora 2 Pro Image To Video

Openai Sora 2 Pro Image To Video

Playground

Try it on WavespeedAI!

OpenAI Sora 2 Pro Image-to-Video creates physics-aware, realistic videos from reference images with synchronized audio and strong steerability. Supports 720p and 1080p resolutions with durations up to 20 seconds. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

Features

OpenAI Sora 2 Pro Image-to-Video

Sora 2 Pro Image-to-Video is OpenAI’s premium image animation model. Upload an image and describe the motion — AI transforms your still photo into a cinematic video with physics-aware movement, synchronized audio, and professional-grade quality.


Why Choose This?

  • Premium quality Higher fidelity output with enhanced detail preservation and motion coherence.

  • Physics-aware motion Learns contact, inertia, and momentum so objects move and collide believably.

  • Synchronized audio Generates matching audio — ambient sounds, dialogue, and sound effects.

  • Temporal consistency Stable identities, minimal flicker/ghosting, and clean frame-to-frame transitions.

  • Resolution options Output in 720p or 1080p for high-definition results.

  • Extended duration Generate videos up to 20 seconds long.


Parameters

ParameterRequiredDescription
imageYesSource image to animate
promptYesDescribe the motion, action, and audio cues
durationNoVideo length: 4, 8, 12, 16, or 20 seconds
resolutionNoOutput resolution: 720p or 1080p

How to Use

  1. Upload your image — the still photo you want to animate.
  2. Write your prompt — describe the action, motion, camera movement, and audio.
  3. Set duration — choose 4, 8, 12, 16, or 20 seconds.
  4. Select resolution — 720p or 1080p.
  5. Submit — generate, preview, and download your video.

Pricing

Duration720p1080p
4 s$1.20$2.00
8 s$2.40$4.00
12 s$3.60$6.00
16 s$4.80$8.00
20 s$6.00$10.00

Billing Rules

  • 720p rate: $0.30 per second
  • 1080p rate: $0.50 per second
  • Duration options: 4, 8, 12, 16, or 20 seconds

Best Use Cases

  • Premium photo animation — Bring still photos to life with cinema-quality motion.
  • Commercial production — High-resolution output for professional marketing.
  • Art animation — Transform illustrations into broadcast-quality videos.
  • Product showcases — Animate product images for premium presentations.
  • Storytelling — Build cinematic narratives from key visual moments.

Pro Tips

  • Be specific about motion in your prompt for better results.
  • Include audio cues in your prompt for synchronized sound.
  • Higher resolution source images produce better output.
  • Use 1080p for final production, 720p for faster iteration.
  • Start with shorter durations to test your prompt.

Notes


Authentication

For authentication details, please refer to the Authentication Guide.

API Endpoints

Submit Task & Query Result


# Submit the task
curl --location --request POST "https://api.wavespeed.ai/api/v3/openai/sora-2-pro/image-to-video" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}" \
--data-raw '{
    "resolution": "720p",
    "duration": 4
}'

# Get the result
curl --location --request GET "https://api.wavespeed.ai/api/v3/predictions/${requestId}/result" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}"

Parameters

Task Submission Parameters

Request Parameters

ParameterTypeRequiredDefaultRangeDescription
imagestringYes-The image for generating the output.
promptstringYes-The positive prompt for the generation.
resolutionstringNo720p720p, 1080pThe resolution of the generated video.
durationintegerNo44, 8, 12, 16, 20The duration of the generated video in seconds.

Response Parameters

ParameterTypeDescription
codeintegerHTTP status code (e.g., 200 for success)
messagestringStatus message (e.g., “success”)
data.idstringUnique identifier for the prediction, Task Id
data.modelstringModel ID used for the prediction
data.outputsarrayArray of URLs to the generated content (empty when status is not completed)
data.urlsobjectObject containing related API endpoints
data.urls.getstringURL to retrieve the prediction result
data.has_nsfw_contentsarrayArray of boolean values indicating NSFW detection for each output
data.statusstringStatus of the task: created, processing, completed, or failed
data.created_atstringISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”)
data.errorstringError message (empty if no error occurred)
data.timingsobjectObject containing timing details
data.timings.inferenceintegerInference time in milliseconds

Result Request Parameters

ParameterTypeRequiredDefaultDescription
idstringYes-Task ID

Result Response Parameters

ParameterTypeDescription
codeintegerHTTP status code (e.g., 200 for success)
messagestringStatus message (e.g., “success”)
dataobjectThe prediction data object containing all details
data.idstringUnique identifier for the prediction, the ID of the prediction to get
data.modelstringModel ID used for the prediction
data.outputsstringArray of URLs to the generated content (empty when status is not completed).
data.urlsobjectObject containing related API endpoints
data.urls.getstringURL to retrieve the prediction result
data.statusstringStatus of the task: created, processing, completed, or failed
data.created_atstringISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”)
data.errorstringError message (empty if no error occurred)
data.timingsobjectObject containing timing details
data.timings.inferenceintegerInference time in milliseconds
© 2025 WaveSpeedAI. All rights reserved.