Skip to content
Why Transcodely

The boring hard parts of video, already built

Transcodely turns a source file into streams that play everywhere and only for the people you choose — written to storage you own, at paths you decide, with every combination we sell exercised by a published 164-case conformance run.

The list

What you actually have to build

Choosing a codec is the easy part, and it is the part every comparison argues about. The work that decides whether the project ships is underneath it. Here is that list, and what of it is ours.

The transcoding queue ours

Jobs are admitted, queued and dispatched under a per-app concurrency limit. Work over the limit waits in the queue instead of being rejected, and a job an encoder never started bills nothing.

Jobs

HLS and CMAF packaging ours

HLS and DASH come out of one CMAF package — shared fMP4 segments referenced by both manifests, so a multi-codec ladder is stored once and served to every device.

Adaptive streaming

Storage lifecycle ours

Output paths are decided by template before the job starts, and hosted sources can be deleted a set number of days after a video goes live, with a warning webhook first and a per-video pin to opt out.

Source lifecycle

Bandwidth and cost math ours

Every output carries a priced snapshot you can recompute, and a per-app monthly spend limit refuses new jobs before the bill runs away — with a webhook at 80% and again at the cap.

Spend limits

Abuse handling still yours

This one is still yours. We reject private and internal addresses on ingest and publish an acceptable-use policy, but moderating what your users upload is your product decision, not a knob we can turn for you.

Acceptable use
What that buys you

Control, correctness, one request

Control

You decide the encode, and where every byte lands.

  • Four codecs — H.264, HEVC, VP9 and AV1 — with CRF, CBR or VBR, per-codec profile options, and up to 20 variants in one ABR ladder.
  • A four-level output path template (job, output, origin, system default) resolves before the job starts. Two templates you wrote that collide are rejected at create with the fix named; a collision between the defaults is auto-fixed. Neither ends in a silent overwrite.
  • Read from and write to your own S3, GCS, Cloudflare R2 or HTTP origin. Your bucket, your lifecycle rules, your bill from your cloud — we hold write credentials, not your library.

Correctness

We check the output, and the gaps are on the page too.

  • 162 of 164 validation cases run as real jobs on real workers, with the produced files downloaded and inspected rather than assumed.
  • The 2 tracked gaps — things we accept and price but cannot yet produce end to end — are published in their own section instead of being counted as passing.
  • A failed job bills €0, outputs and processing fee included. Cancel while queued and it bills nothing at all.

One request

The first call does not need a bucket.

  • Send one request with a source URL and managed delivery on, and the outputs land in our storage with a hosted video record and a player alongside them. No origin to create first, no credentials to paste.
  • Playback URLs are signed and time-limited. Three visibility tiers decide who can reach the video at all, and a private one is only ever handed a URL on your own authenticated reads.
  • Point the same request at your own origin later and nothing else about it changes.
Out loud

What we are not

Plain H.264 hosting is cheaper at Bunny.

Bunny Stream encodes H.264 up to 1080p for free and delivers at a lower rate per gigabyte than we do. If that is the whole job, they are the better buy — and we buy our CDN from them.

We do not sell your video for you.

There is no checkout, no paywall, no membership tier and no storefront. We gate playback; taking the money is your side of the line, or your commerce platform’s.

Per-title encoding is not available yet.

The API carries the content-aware field for forward compatibility and refuses any job that sets it, with the error code parameter_unsupported, until the worker pipeline ships. It is priced and documented; it is not purchasable.

No live streaming and no viewer analytics.

There is no RTMP ingest and no low-latency pipeline, and we are not building one. We count plays per video per day so you can see what is watched and what it costs; rebuffer rates and per-viewer sessions are Mux Data’s job.

The same honesty runs through the comparison pages, where every competitor gets a section on what they do better, and through conformance, where the features we cannot yet produce sit on the same page as the ones we can.

The fork

Own the bucket, or do not

One encoder, two ways to take delivery. This is the only decision you have to make before the first request, and you can change it later without changing anything else.

Your bucket

We write, you hold

Renditions, manifests, segments, thumbnails and subtitle sidecars are written into your own S3, GCS, R2 or HTTP origin, at paths your template decided. Your cloud contract, your lifecycle rules, your egress bill. We hold credentials to write to it, not custody of what is in it. Serve it from any CDN you like, or none.

Storage setup

Hosted by us

We write, we serve

Skip the bucket entirely. One request creates the video, encodes the ladder, stores it, delivers it over a global CDN and gives you an embeddable player. Playback URLs are signed and time-limited; visibility decides who can reach the video, and a private one is only issued a URL on your own authenticated reads.

Video hosting

Start with one request

The quickstart runs against a sample clip, so nothing has to be configured before it works. The rate card is printed in full, and conformance shows the result for every combination, gaps included.