FFmpeg Rust Actix
Rust + Actix-web implementation for FFmpeg API
None defined yet.
Multiple language implementations of the same FFmpeg video processing API for load balancing, educational purposes, and polyglot learning.
This project provides wrappers around FFmpeg for generating short videos with audio, subtitles, and background clips. All implementations expose the same HTTP API, regardless of programming language.
Each implementation runs independently and exposes the same endpoints, allowing seamless job routing and polyglot load balancing.
Multiple language implementations allow more concurrent processing spaces. Each service can handle jobs independently, increasing total throughput.
See the same video processing API implemented in different programming languages. This is useful for developers to understand FFmpeg integration in various ecosystems.
Contributors can add their preferred language without changing the API contract. All code is open-source under the MIT License.
💡 The code is fully free to use.
You can:
All implementations are open-source under the MIT License, so feel free to adapt, extend, or integrate it into your projects.
All implementations expose the same HTTP endpoints:
GET /register – Get or create your client token
POST /generate – Submit a new video processing job
GET /job/{id} – Poll status and queue position
DELETE /job/{id} – Cancel a job (controller only)
GET /queue – Get overall queue snapshot
GET /download/{id} – Download completed video
DELETE /video/{id} – Delete video
GET /videos/{category} – List available background videos
GET /health – Health check
/register). /generate). /job/{id} for progress, estimated wait time, and encoding stats. /download/{id}.The ArchNemix controller automatically routes jobs to any available service instance, regardless of language implementation.
Want to add another language implementation?
This ensures compatibility with the ArchNemix controller and allows jobs to be routed across languages.
MIT