Transcoding
Parallel media processing
for predictable turnaround.
Jobs distributed across concurrent lanes. 3–6 playback-ready renditions per file, adaptive streaming outputs, and thumbnails on completion.
Pipeline
From upload to playback.
Job queued
Upload or import triggers a transcoding job. The job enters the queue with priority and source metadata attached.
Worker claim
An available media worker picks up the job. Multiple workers can run in parallel so processing does not depend on a single lane.
Rendition encode
The job creates multiple quality renditions such as 360p, 480p, 720p, and 1080p based on the channel's playback profile.
Segment & manifest
Playback outputs are prepared for adaptive streaming, with manifests and rendition files written to the delivery path.
Thumbnail & preview
Thumbnails are extracted at configured intervals. A grid preview sprite is generated for hover scrubbing in the library.
Ready
The video's status updates to ready. HLS playback is immediately available. The original file is retained in S3.
Timing estimates for a 5-minute 1080p source on typical hardware. Actual times depend on source resolution, bitrate, worker count, and encoding profile.
Worker architecture
Resilient by design.
Workers are stateless processes that poll the job queue. Any number of workers can run simultaneously — scaling is a matter of adding more worker instances, not changing the platform code.
Heartbeats prevent jobs from being stuck on a crashed worker. A job with a stale heartbeat is automatically re-queued and picked up by the next available worker.
Parallel execution
Multiple workers run concurrently. A job that would take 10 minutes on one worker takes the same time regardless of queue depth if enough workers are available.
Heartbeat monitoring
Workers emit heartbeats during encoding. A stale heartbeat triggers stale-job detection — the job is re-queued automatically.
Automatic retry
Failed jobs are retried up to a configured limit. Persistent failures are marked with an error state visible in the library UI.
Queue-aware routing
Jobs are picked up in order of submission. Priority overrides are available at the API level for time-sensitive content.
HLS playlists + segments
Master playlist referencing per-rendition playlists. Segments stored in S3, served directly from your delivery domain.
Playback manifests
Playback manifests reference the available renditions so the player can switch quality levels cleanly during playback.
Thumbnails
Still frames extracted at configured intervals. Used in the library preview grid and as the video's poster image.
Original retained
The source file is retained alongside the processed output. Re-processing with a new profile does not require re-upload.
Outputs
What gets produced.
Every transcoding job produces adaptive playback outputs and thumbnails. All outputs land in the channel's configured storage path. The original source file is retained alongside the output — no destructive operations on the source.
Encoding profiles (resolution ladder, bitrates, codecs) are configurable per channel. Changing a profile applies to new jobs only — existing outputs are not affected unless the video is manually re-transcoded.
Need to scale your encoding pipeline?
Let's talk about your source volumes, target renditions, and worker configuration requirements.