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

Customer logoCustomer logoCustomer logoCustomer logoCustomer logoCustomer logo

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.

Time to first frame

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

EncodingPer-title ABR
CodecsAV1 · HEVC · H.264
PackagingCMAF
Time to readySeconds

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
Better quality at lower bandwidth

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
Delivery footprint — global CDN with 300+ PoPs

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
Embed the player, play everywhere

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
Auto-generate captions and subtitles

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

DRMWidevine · FairPlay · PlayReady
Signed URLsConfigurable expiry
RestrictDomain · geo
WatermarkDynamic

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

PartnerNVIDIA Inception
PartnerGoogle Cloud Partner

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

Verified 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

MP4
MP4
MOV
MOV
MKV
MKV
AVI
AVI
MXF
MXF
DVCPRO
DVCPRO
XDCAM
XDCAM
PRORES
PRORES
MPEG-TS
MPEG-TS
WEBM
WEBM

DRM

Widevine
Widevine
FairPlay
FairPlay
PlayReady
PlayReady
AES-128
AES-128

Output containers

CMAF
CMAF
MP4
MP4

Input codecs

H.264 / AVC
H.264 / AVC
H.265 / HEVC
H.265 / HEVC
AV1
AV1
VP9
VP9

Resolutions

SD (480p)
SD (480p)
HD (720p)
HD (720p)
Full HD (1080p)
Full HD (1080p)
4K (2160p)
4K (2160p)

Captions

WebVTT
WebVTT
SRT
SRT

HDR

HDR10
HDR10
Dolby Vision
Dolby Vision
HLG
HLG

Ingest Support

Google Cloud
Google Cloud
AWS S3
AWS S3
Azure Blob
Azure Blob
Public URL
Public URL
Direct upload
Direct upload
FTP / SFTP
FTP / SFTP
Aspera
Aspera

Questions 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

Up to 720p Pro$0.0213 / min
Up to 1080p Pro$0.0267 / min
1440p (2k) Pro$0.0427 / min
2160p (4k) Pro$0.0855 / min

STREAMING

Pay per minute streamed

$0.00067/min 1080p Pro

Multi-CDN delivery from 300+ POPs.

Up to 720p Pro$0.00054 / min
Up to 1080p Pro$0.00067 / min
1440p (2k) Pro$0.00108 / min
2160p (4k) Pro$0.00217 / min

STORAGE

Pay per minute stored

$0.00268/min 1080p Pro

Assets stored and CDN caching, lifecycle handled.

Up to 720p Pro$0.00215 / min
Up to 1080p Pro$0.00268 / min
1440p (2k) Pro$0.00430 / min
2160p (4k) Pro$0.00860 / min