FASTPIX VIDEO TRANSCODING API
A video transcoding API that fits in one request
Send a source URL and get back a playback URL. The job definition, the output groups, the packager config and the preset files all go away, because the ladder is derived from the file instead of declared up front.
Migrating from MediaConvert, Elastic Transcoder, Azure Media Services or the Google Transcoder API.
TRUSTED BY PRODUCT TEAMS SHIPPING VIDEO AT SCALE






What video transcoding API does?
A video transcoding API takes your source files and returns formats a player can stream.
On the hyperscalers that work is a job template, an output group, a packager config and a queue you keep warm. On FastPix it is one POST, because the ladder is derived from the file rather than declared up front. You get back AV1, HEVC and H.264, packaged and ready to play.
WHY TEAMS ARE MOVING
Two cloud transcoders people built on are gone
Not deprecated, not winding down. Switched off, with dates that have already passed. If you are shopping for an Elastic Transcoder alternative, this is why, and it is why we built the migration paths below.
Amazon Elastic Transcoder
Support ended and the console and resources went with it. AWS's own migration path points at MediaConvert, which is a different API with a different job model, so it is a rewrite either way.
Azure Media Services
Accounts were auto-deleted roughly 90 days after retirement, taking streaming endpoints, live events and asset metadata. Source video in Azure Blob Storage was not deleted, so a lot of media is still sitting there with no transcoding layer attached.
MediaConvert and the GCP Transcoder API
Both alive and both fine. Teams leave them for the operational load and the billing shape rather than because they stopped working. Those are the two things this page is about.
FROM AWS ELEMENTAL
The MediaConvert alternative,
concept by concept
Picking a MediaConvert alternative is not really a question about us. It is a question about whether your existing job can be expressed here, and what breaks when it is.
| AWS concept | What it does there | On FastPix |
|---|---|---|
| Queue / Pipeline | Work routing and concurrency. Elastic Transcoder pipelines were bound to an S3 bucket; MediaConvert queues are not. | No queue object. Concurrency is handled for you, and jobs are not bound to a bucket. |
| Preset | Encoding parameters for one output. Elastic Transcoder presets could not be overridden. MediaConvert presets can be, per job. | No presets to maintain. The ladder is derived per file by per-title encoding. |
| Job Template | Whole-job config: inputs plus output groups plus outputs. The object teams actually reuse in code. | The request body is small enough that there is nothing to template. Set quality tier and codecs if you want to pin them. |
| Output Group | The big one. File, Apple HLS, DASH ISO, CMAF, MS Smooth. One job produces several packaged outputs. | One asset produces CMAF plus HLS and DASH manifests. You do not declare groups. |
| Input clipping and stitching | Multi-input assembly into one output. | Supported as an input list on the same request. |
| IAM service role | MediaConvert assumes a role to read and write your S3 buckets. The most common unspoken blocker in any migration. | Pull from a signed URL, or grant read on the bucket. No role for us to assume inside your account. |
| CloudWatch Events / EventBridgeElastic Transcoder used SNS | Job status notifications inside your VPC. | Outbound webhooks. This is an architectural change, not a config change. See events. |
Where most of the difficulty lives: step 2 and step 3. Choose the ladder badly and you either send more bits than the picture needs, which costs money and stalls viewers on weak connections, or too few, which makes the picture soft. Everything else is plumbing. Full FastPix vs AWS comparison
FROM GOOGLE CLOUD
The Google Transcoder API alternative,
concept by concept
GCP separates encoding from containerization. FastPix does not, and that one difference is what every port trips over. Any Google Transcoder API alternative has to deal with it before anything else.
| GCP concept | What it does there | On FastPix |
|---|---|---|
| Job | Unit of work, moving through prepare, transcode and package. | An asset, moving through analyzing, encoding and ready. |
JobTemplateincluding preset/web-hd | Reusable config. Most teams have preset/web-hd literally written into their code. | The nearest equivalent is the quality tier: Standard, Pro or Premium. There is no template object. |
| Elementary streams | Individual video and audio encodings, declared one by one. | Derived. You do not enumerate streams; the ladder decides how many there are. |
muxStreams | Containers combining elementary streams. The GCP analogue of an AWS output group. | CMAF, packaged on the way out. |
| Manifests | HLS and DASH descriptors, declared explicitly. | Both emitted. Nothing to declare. |
| Edit lists | A sequence of edits as a timeline: trims and ad breaks. | Supported on the input list. |
| Sprite sheetsmax 10 per job | Thumbnail grids for scrub previews. A silent blocker if the target platform does not do them. | Thumbnails and storyboards are generated per asset. |
| Pub/Sub notifications | Async job updates on a topic inside your project. | Outbound webhooks. You are replacing a topic with an HTTP endpoint. See events. |
THE PART SENIOR ENGINEERS BLOCK ON
You are moving from a message bus to a webhook
AWS, GCP and Azure all gave you a managed queue. We send webhooks. That's a different failure model, not a different config setting. Design for it rather than discover it.
- Retries. Failed deliveries are retried with backoff, so your endpoint has to tolerate the same event arriving more than once.
- Idempotency. Key your handler on the asset id and the event type, not on receipt order.
- Signature verification. Every payload is signed. Verify before you act on it.
- Ordering. Do not assume it. Treat each event as a statement of current state rather than a step in a sequence.
1{2 "type": "video.asset.ready",3 "asset_id": "aBc123",4 "playback_id": "pQr456",5 "status": "ready",6 "duration": 2571,7 "codecs": ["av1", "hevc", "h264"],8 "created_at": "2026-08-21T09:14:02Z"9}1011# Signed. Retried on failure. Not ordered.12# Handle on (asset_id, type), not arrival order.
HOW TEAMS ACTUALLY DO IT
Migrating off AWS or Azure
in four steps
We never ask for a flag day. Existing playback URLs keep working throughout, so there is no back-catalog re-encode before you can start. Teams landing here from an Azure Media Services replacement search usually run both pipelines for a week first.
s3://acme-masters/
├ ep40.mov
├ ep41.mov
└ ep42.mov
Read-only
acme-masters/ep41.mov
Your existing bucket
The one MediaConvert, Azure or GCP already reads from
Quality scores
Both pipelines, scored on your own footage
Time to playable
Measured on a slice, not a vendor test clip
job.json
webhook
# the whole job
curl -X POST \
api.fastpix.io/v1/on-demand \
-d '{ "inputs": [{
"url": "s3://acme-masters/
ep41.mov" }] }'
1
Move the write path
One request in, one webhook out
Submission
Job document
1 POST
Queue
Kept warm
None
Access
IAM role
Signed URL
Events
EventBridge
Webhook
Delivery
In your VPC
Signed HTTP
Presets & templates
Deleted, not ported to a new format
Output groups
Gone too. The ladder is derived per file
stream.fastpix.io/pQr456.m3u8
Same URL
Playback never moves
Existing URLs keep serving the whole way through the cutover
Playback URLs
Unchanged
Re-encode first
None
Flag day
None
1
SOURCES
Grant read on the bucket
2
SLICE
Run both pipelines
3
SWITCH
Move the write path
4
RETIRE
Delete job definitions
✓
LIVE
Playback URLs never change
PRICING TRANSLATION
Neither hyperscaler is simply cheaper
FastPix is not always the cheapest. Both hyperscalers hide cost, just in different places, which is why a rate card will not settle this.
| Platform | Billing unit | Where the cost hides |
|---|---|---|
| AWS Elemental MediaConvert | Normalized minutes, weighted by resolution, frame rate and codec | The tier trap. Basic starts at $0.0075 per normalized minute, but HEVC, AV1, captions, DRM, multiple audio tracks and HDR all push you into Professional from $0.0120. Teams budget at Basic and get billed at Professional the first time they add captions, which does not feel like a broadcast feature. |
| Google Transcoder API | Output minutes by resolution, codec-agnostic | Ladder multiplication. $0.015 SD, $0.030 HD, $0.060 UHD, and outputs are additive. An SD plus HD plus UHD ladder is $0.105 per minute of source. Codec and captions cost nothing extra, which is the honest advantage over AWS. |
| FastPix | Source minutes | Nowhere to hide it. Rung count, codec and encoding passes do not enter the calculation. A 40-minute source is 40 minutes whether the ladder has four rungs or twelve. Encoding is free on Standard quality. |
The worked example: why 40 minutes bills as 629 · Pricing overview
PRICING
Per minute encoded, delivered, and stored
No platform fee, no per-seat charge, no separate invoice for each surface. See full pricing.
Encoding
Pay per minute encoded
$0.0267 /min 1080p
Per-title ABR encoding across H.264
Pro
Streaming
Pay per minute streamed
$0.00067 /min 1080p
Multi-CDN delivery from 300+ POPs.
Pro
Storage
Pay per minute stored
$0.00268 /min 1080p
Assets stored and CDN caching, lifecycle handled.
Pro
FAQ
Transcoding and migration, answered
What is a video transcoding API?
A video transcoding API decodes video that is already compressed and re-encodes it into different codecs and bitrates.
Almost every file you upload is already compressed, so what runs in practice is transcoding rather than encoding. Most vendors say "encoding" because that is the word buyers search for, but the underlying operation is a decode followed by a re-encode. Glossary.
Is Amazon Elastic Transcoder still available?
No. AWS ended support for Amazon Elastic Transcoder on 13 November 2025.
The console and its resources are gone. AWS's own migration path points at Elemental MediaConvert, which uses a different job model with output groups and job templates, so moving there is a rewrite rather than a config change.
What happened to Azure Media Services?
Azure Media Services was retired on 30 June 2024.
Accounts were automatically deleted roughly 90 days later, taking streaming endpoints, live events and asset metadata with them. Source video held in Azure Blob Storage was not deleted, so a lot of media is still sitting in storage with nothing attached to transcode or deliver it.
How do I migrate from AWS Elemental MediaConvert?
Point FastPix at the same sources, then run both pipelines on a slice of the catalog.
Job definitions, output groups, presets and packager settings are deleted rather than ported, because the ladder is derived per file instead of declared. The two things that need real work are access, meaning a signed URL or bucket read instead of an assumed IAM role, and events, meaning a webhook handler instead of an EventBridge consumer. FastPix vs AWS.
What is the FastPix equivalent of an output group?
There is not one, and that is the point.
MediaConvert asks you to declare a File, Apple HLS, DASH ISO or CMAF output group and then define every output inside it. FastPix produces CMAF renditions with HLS and DASH manifests from one request, because the rendition set is decided by the content rather than by your job document.
KEEP READING
The longer arguments behind this page
What is video encoding?
A video encoding API turns your source file into streaming-ready renditions with one HTTP request.
Read morePer-title encoding
A video encoding API that builds a bitrate ladder for each video instead of reusing one across your catalog.
Read moreCodec support
FastPix encodes every upload into three video codecs and serves each viewer the best one.
BlogFastPix vs AWS Elemental
FastPix gives you one playback ID. Customers typically ship video products on FastPix 5-7x faster than on AWS Elemental (6+ months).
BlogWhy AWS bills 629 minutes for 40
AWS vs FastPix pricing compared: MediaConvert bills every rung of your ladder, so 40 minutes becomes 629.
BlogChoosing a cloud transcoder
Discover the benefits of cloud transcoding for video processing. Learn how to optimize video quality and performance using scalable cloud solutions.
BlogEncoding vs transcoding
Video encoding is the process of converting raw video files into compressed formats, while transcoding involves converting already compressed videos into different formats or qualities.
BlogTranscoding
Converts video encoding format, resolution and other parameters according to the device compatibility and internet connection.
Blog