Video on demand
Video on demand API for developers
Upload, encode, host, and stream video across web, mobile, and any platform, from one video on demand API. Per-title encoding, multi-CDN delivery, captions, DRM, a player, and analytics, all built in.
# Create a VOD asset by pulling from a source URL.# POST /on-demand — auth is Basic (tokenId as user, tokenSecret as password).# Returns an asset with a playbackId you can embed once encoding is ready.curl -X POST https://api.fastpix.com/v1/on-demand \ -H "Content-Type: application/json" \ -u "<username>:<password>" \ -d '{ "inputs": [ { "type": "video", "url": "https://static.fastpix.com/fp-sample-video.mp4" } ], "accessPolicy": "public", "metadata": { "key1": "value1" }, "maxResolution": "1080p", "mediaQuality": "standard"}'3 calls from upload to playback ~50ms to 96% of viewers worldwide 35% better compression
AaoNxt streams premium microdrama on it. Rocketlane built RLTV on it. Sclera moved off DIY-on-AWS and cut cost 40%.
TRUSTED BY PRODUCT TEAMS SHIPPING VIDEO AT SCALE






Video on demand benefits
One API for video hosting, encoding, delivery, and AI
01
Instant playback with just-in-time encoding
Playback starts before the full encode finishes. A 30-second clip or a two-hour premiere, the first viewer is watching in seconds.
02
Encoder, storage, CDN, DRM, and player on one bill
The whole stack consolidates into one API and one invoice. When something breaks at 2am, you call one company.
03
AI and analytics on every video, from one API
In-Video AI turns every upload into searchable, chaptered, transcribed video, so viewers jump straight to the moment they want. Video Data captures granular quality and engagement metrics you can export to build dashboards or train your own models.
Upload
Upload any video, from any source
Send video from anywhere. Resumable, chunked uploads survive a dropped connection, and you can push from the browser or pull straight from cloud storage. Large files and long-form both handled.
- Resumable direct upload from browser, iOS, Android, Flutter
- Pull from S3, GCS, Azure Blob, or any HTTPS URL
- Built for large files and long-form video
- Webhooks on upload, encode, and ready
# Create a resumable, direct-to-storage upload URL.# POST /on-demand/upload — auth is Basic (tokenId as user, tokenSecret as password).# The response returns an "uploadUrl" your client PUTs the file to.curl -X POST https://api.fastpix.com/v1/on-demand/upload \ -H "Content-Type: application/json" \ -u "<username>:<password>" \ -d '{ "corsOrigin": "*", "pushMediaSettings": { "accessPolicy": "public", "metadata": { "key1": "value1" }, "maxResolution": "1080p", "mediaQuality": "standard" }}'Encoding
Per-title encoding, tuned per video
Per-title encoding profiles each source and builds the bitrate ladder that fits it, so a talking head and a fast-cut trailer get different ladders. AV1, HEVC, and H.264 out, CMAF-packaged, ready in seconds.
- Per-title adaptive bitrate ladder
- AV1, HEVC, and H.264 output
- Just-in-time CMAF packaging
- Video transcoding tuned per asset
Encoding pipeline
Quality
Better quality at lower bandwidth
Same picture, smaller files. Per-title encoding cuts delivered bytes by up to 35% at matched quality, across Standard, Pro, and Premium quality tiers, up to 4K with HDR.
- 35% smaller files at the same quality
- Standard, Pro, and Premium quality tiers
- 4K, HDR10, Dolby Vision, and HLG
- Quality measured with VMAF

Delivery
Stream to any device, anywhere
Delivery runs across a multi-CDN mesh that routes each viewer to the fastest edge, with per-region failover if one CDN degrades. 300+ points of presence, roughly 50ms to the first byte for most viewers.
- Multi-CDN mesh, no single-vendor lock-in
- 300+ global points of presence
- ~50ms first byte to 95% of viewers
- Automatic per-region failover, HLS and DASH output

Playback
Embed the player, play everywhere
Embed playback with the FastPix Player React component, or hand the playback ID to any HLS player. Adaptive bitrate, captions, and DRM travel with the stream to web, iOS, Android, and TV.
- Embed via React component or any HLS player
- One playback ID, every device
- Adaptive playback on web, iOS, Android, and TV
- Captions and DRM on playback

Captions
Auto-generate captions and subtitles
Every asset can generate captions and subtitles automatically. Multi-language output in WebVTT and SRT, editable cue points, and a full transcript you can export or make searchable.
- Auto-generated captions on every asset
- Multi-language subtitles in WebVTT and SRT
- Editable cue points
- Searchable transcript export

In-video AI
Search, chapter, and summarize every video
In-Video AI runs inline with encoding. Ask a natural-language question and jump to the moment, or auto-generate chapters, summaries, entities, and moderation flags on every upload.
- Conversational video search
- Auto-chapters and summaries
- Named-entity recognition
- NSFW moderation and speaker diarization
# Create an upload URL with In-Video AI enabled.# POST /on-demand/upload — auth is Basic (tokenId as user, tokenSecret as password).# "moderation" runs AI analysis (NSFW/moderation) inline with encoding.curl -X POST https://api.fastpix.com/v1/on-demand/upload \ -H "Content-Type: application/json" \ -u "<username>:<password>" \ -d '{ "corsOrigin": "*", "pushMediaSettings": { "accessPolicy": "public", "metadata": { "key1": "value1" }, "maxResolution": "1080p", "mediaQuality": "standard" "moderation": { "type": "video" } }}'Security
DRM, signed URLs, and access control
Protect premium content with studio-grade multi-DRM and signed playback URLs that expire on your schedule. Lock playback to your domains or a geography, and add a dynamic watermark.
- Widevine, FairPlay, and PlayReady DRM
- Signed playback URLs with configurable expiry
- Domain and geo restriction
- Dynamic watermarking
Security controls
How it works
From file to playback in three API calls
01
Upload the file
POST to /v1/on-demand with a source URL, or push the file directly with the resumable upload SDK.
02
Encode and package
FastPix runs per-title adaptive bitrate encoding and packages to CMAF, ready to stream in seconds.
03
Embed and play
Take the returned playback ID and render the FastPix Player React component, or point any HLS player at it.
Security, compliance, and partnerships
Customers
“What was great about the FastPix team is it felt like we were all working together. They felt like part of our team, not just vendors.”
Kaushik Das, Founder and CEO at AaoNXT
Kaushik Das, Founder and CEO at AaoNXT
“What was cool was seeing it all come alive, all the workflows as per our vision and UX. To do that with our brand colors, reflective of our community.”
Sivaprakash S, UX lead for RLTV at Rocketlane
B2B SaaS customer onboarding
35%
Better compression at the same quality
AAO NXT on FastPix encoding
7+
AWS media services replaced
Rocketlane on FastPix VOD
40%
Cost reduction migrating off DIY-on-AWS
Sclera customer story
6 weeks
From contract to launch with AI search
Knovo customer story
Capabilities that ship
Six key capabilities
Signed URLs and token authentication
Tokens expire on the schedule you set, so leaked links go cold.
Token auth guideToken and domain-based playback control
Restrict playback to signed users via JWT and lock it to your own domains. Entitlement rules become a config change
Secure playback controlDRM with Widevine and FairPlay
Studio-grade content protection on every asset. No separate license server to operate.
Piracy preventionContent-adaptive per-title encoding
35% better compression at the same quality across H.264, HEVC, AV1.
Per-title encoding explainedWebhooks on every asset event
Trigger downstream workflows on upload, encode-complete, first-play, or error. No polling.
Automation guideMulti-CDN delivery
Route VOD traffic across multiple CDNs with automatic failover, improving performance, reliability, and uptime.
ReadVerified performance, VOD
3.1x
Faster upload than any other vendors
177.2 MB on 4G
1.8x
Faster time-to-ready than any other vendors
177.2 MB on 4G
35%
Better compression at the same quality
H.264, HEVC, AV1
#1
Overall benchmark score
86/100 on 177.2 MB 4G test
Tech specs
What FastPix VOD handles.
Curated capability catalog for the most-asked formats, codecs, and integrations. See the features for everything.
Input formats










DRM




Output containers


Input codecs




Resolutions




Captions


HDR



Ingest Support







Where customers come from
Where most FastPix VOD customers come from.
FROM
AWS Elemental, MediaConvert, CloudFront
Move the encoder, storage, CDN, and DRM into one API. Keep your AWS account for source files if you want; FastPix pulls from S3.
AWS migration pathFROM
DIY ffmpeg on S3 plus a player you wrote
The build that made sense at 100 hours per month does not at 10,000. Move the heavy parts without giving up the working ones.
DIY migrationFROM
Vimeo
Bulk-import your existing library by URL. Keep playback live during the move, then cut over when you are ready.
Vimeo migrationQuestions developers ask
VOD questions, answered
How do I migrate from AWS Elemental / MediaConvert / CloudFront?
Move the encoder, storage, CDN, and DRM into one API. Keep your AWS account for source files if you want; FastPix pulls from S3 directly. Sclera did this and saw a 40% cost reduction. Full AWS migration path.How do I migrate from DIY ffmpeg or a player I wrote?
The build that made sense at 100 hours per month does not at 10,000. Move the heavy parts (encoding, CDN, player) without giving up the working ones. Asset-by-asset re-upload is the standard path. DIY migration guide.How do I add video upload and playback to a Next.js app?
POST the source file to the FastPix Assets endpoint, store the playback ID, and render the FastPix Player React component. Two server routes and one component. See the Next.js guide.How do I monitor playback quality and debug buffering in production?
FastPix Video Data tracks startup time, rebuffer ratio, error codes, and per-rendition quality on every session across 16 player surfaces with 56 dimensions per session. Drill from a flagged session to the exact error in one click.
Pricing
Per minute encoded, delivered, and stored.
No platform fee, no per-seat charge, no separate invoice for each surface. See full pricing or run the calculator.
ENCODING
Pay per minute encoded
$0.0267/min 1080p Pro
Per-title ABR encoding across H.264
STREAMING
Pay per minute streamed
$0.00067/min 1080p Pro
Multi-CDN delivery from 300+ POPs.
STORAGE
Pay per minute stored
$0.00268/min 1080p Pro
Assets stored and CDN caching, lifecycle handled.
Three ways to get unstuck
Whatever kind of help you need, there is a path.
Engineering support
Talk to a video engineer.
Stuck on an API call, a webhook signature, or a player integration? Reach the engineering team directly. Response within hours, not days.
Contact engineeringIntegration help
Docs, code samples, video tutorials.
Self-serve resources for the most common integrations. Quickstart guides, SDK examples, recorded walkthroughs on YouTube, and detailed playback logs in your dashboard.
Browse the docsSolution architect
Plan the rollout with a human.
New integration, migration off another platform, or a complex multi-tenant build. Book a session with a FastPix solution architect or join the Slack community to compare notes with other teams.
Join the Slack communityDeveloper resources
Everything you need to start building.
Video on demand
One API replaces the encoder, storage, CDN, DRM, player, and analytics you would otherwise stitch yourself.
VOD guideFull API reference
Every endpoint, every parameter, every response.
API referenceWebhook reference
Every event FastPix emits, with sample payloads.
WebhooksCode samples
Sample apps and SDK examples on GitHub.
GithubFive-minute VOD quick-start
Sign up, POST a file, embed playback.
Quick-start guideChangelog
See what shipped this week and what's next.
Changelogs