finds.dev← search

// the find

video-dev/video-transcoding-api

★ 647 · Go · Apache-2.0 · updated Mar 2023

Agnostic API to transcode media assets across different cloud services.

A Go REST API that abstracts over multiple commercial video transcoding services (Bitmovin, Zencoder, AWS MediaConvert, etc.) behind a single interface. You define presets once and submit jobs without caring which backend runs them. Aimed at media teams who want to swap or distribute transcoding load across vendors without rewriting their workflow integration.

Provider abstraction is properly modeled — each backend implements a common interface, so adding a new provider is isolated and testable without touching core logic. Test coverage is solid: every provider has its own fake server or stub for unit testing, not just mocked interfaces. Redis-backed job state is simple and appropriate for this workload — no overengineered persistence layer. Swagger spec is checked in and tested, so the API contract is versioned alongside the code.

Last commit was March 2023 and several providers it lists (Elemental Conductor, Encoding.com) are either dead or significantly changed — you'd be shipping integrations against APIs that may no longer exist as documented. All configuration is environment variables with no validation at startup, so a misconfigured provider silently fails at job submission time rather than boot. No webhook/callback support is visible in the tree — polling job status is the only model, which is painful for long-running encodes. Redis as the sole datastore means no query history or audit trail beyond what you manually log.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →