Sora 2
OpenAI Sora 2 via Azure AI Foundry — text-to-video AND image-to-video at 720p with synchronized audio. 4s default; 4, 8, or 12s. Portrait or landscape. Image-to-video takes a non-human reference image (human faces are rejected upstream — use Seedance + RealFace for real people). $0.10/sec.
azure/sora-2POST /api/v1/videos/generationsfrom blockrun_llm import LLMClient
client = LLMClient() # uses BLOCKRUN_WALLET_KEY (never sent to server)
job = client.video_generate(
model="azure/sora-2",
prompt="a red apple slowly spinning on a wooden table",
duration_seconds=4,
image_url="https://example.com/seed.jpg", # optional
)
print(job["data"][0]["url"]) # MP4 URLTry It — Video Generation
Type a prompt below and click Generate.
Output: downloadable MP4. Payment in USDC via x402 — no API key.
Connect your wallet to generate. Pay-per-call in USDC on Base via x402 — no API key needed.
About OpenAI Sora 2
OpenAI Sora 2 via Azure AI Foundry — text-to-video AND image-to-video at 720p with synchronized audio. 4s default; 4, 8, or 12s. Portrait or landscape. Image-to-video takes a non-human reference image (human faces are rejected upstream — use Seedance + RealFace for real people). $0.10/sec. It is built by OpenAI and served through BlockRun's video generation API, which means you can call it without an account, an API key, or a subscription. Requests are paid for individually, in USDC, at the moment they are made.
What it costs
Sora 2 is billed by the length of the clip it produces. A default 4-second generation costs $0.421, settlement fee included, and the maximum supported length is 12 seconds. The exact price is quoted in the 402 before you pay. Generation is asynchronous: the API returns a job you poll, and the finished MP4 is mirrored to BlockRun storage so the URL does not expire.
Specifications
- Default duration
- 4 seconds
- Maximum duration
- 12 seconds
- Input modes
- Text-to-video and image-to-video
- Payment
- Pay-per-call USDC via x402
- Output hosting
- Permanent MP4 hosting on BlockRun
Calling it from your code
Pass azure/sora-2 as the model field to the video generation endpoint. The response contains a job id; poll it until the clip is ready.
The first request comes back as an HTTP 402 carrying a signed price quote. Your client signs that quote with a wallet holding USDC and retries; the second request returns the completion, and the payment settles on-chain. Client libraries handle this handshake for you, so in practice it is a single call. See the documentation for request and response shapes, or browse the full catalog of 71 chat models to compare alternatives.
Other video models
Every model on BlockRun is reached through the same endpoint and the same payment flow, so switching is a one-line change to the model field. These are the closest alternatives to Sora 2:
- ByteDance Seedance 1.5 Pro$0.355 for 5s
- ByteDance Seedance 2.0 Fast$0.827 for 5s
- ByteDance Seedance 2.0 Pro$1.136 for 5s
- ByteDance Seedance 2.5$1.579 for 5s
- xAI Grok Imagine Video$0.421 for 8s