Architecture Completed

Distributed Video Transcoding Platform

5x faster video processing using office hardware

Development of the core platform for a media startup: an open-source framework enabling internet companies to transcode video distributedly using existing office hardware, eliminating dependency on expensive cloud transcoding services.

none
8 weeks (MVP)
2019
2 engineers

The Problem

Internet companies handling client video need to transcode to multiple qualities for CDN delivery and then assemble everything into distribution-ready files. Doing this in the cloud is extremely expensive and slow, especially at scale.

The Solution

We built the entire platform in the first 1-2 months. The architecture consisted of Go agents installed on office hardware that received video fragments from central servers, transcoded them locally, and returned results for reassembly. Node.js for the orchestration backend and React for the monitoring dashboard.

The Results

5x reduction in video processing time by distributing workload across existing hardware. Elimination of cloud transcoding costs. Open-source framework that enabled multiple internet companies to adopt the system.

Measurable Results

Processing speed

1x (cloud)

5x (distribuido)

400% improvement

Transcoding cost

Cloud pricing

~$0 (hardware existente)

~100% improvement

Time to MVP

8 semanas

Stack languages

Go + Node + React

Want results like these?

Let's scope your project — 30 min, no commitment.

Schedule assessment

Project Phases

Architecture & Go agents

3 weeks

Distributed architecture design and development of Go agents that install on office machines to receive, transcode, and return video fragments.

Orchestration server

3 weeks

Node.js backend that fragments videos, distributes pieces to available agents, receives results, and reassembles the final video in multiple qualities.

Dashboard & monitoring

2 weeks

React frontend to monitor agent status, transcoding progress, and video job management.

Tech Stack

Technologies

gonodereactdistributed-systemsvideo-transcodingffmpeg

Tools

githubdocker

Implementation Details

Distributed computing without the cloud

The premise was simple but powerful: why pay for GPUs and CPUs in the cloud when every office already has dozens of underutilized machines?

System architecture

┌─────────────────┐     ┌──────────────────┐     ┌─────────────────┐
│  Video Upload    │────▶│  Orchestration   │────▶│  Go Agents      │
│  (Client API)    │     │  Server (Node)   │     │  (Office HW)    │
└─────────────────┘     └──────────────────┘     └─────────────────┘
                              │                         │
                              │    Fragment & Distribute │
                              │◀────────────────────────│
                              │    Return transcoded     │

                        ┌──────────────────┐
                        │  Reassembly &    │
                        │  CDN Delivery    │
                        └──────────────────┘

The processing flow

  1. Fragmentation: The server receives a video and splits it into small chunks
  2. Distribution: Each fragment is sent to the most available Go agent on the office network
  3. Local transcoding: Each agent transcodes its fragment to the required qualities
  4. Collection: Results are returned to the central server
  5. Reassembly: The server assembles all pieces into a final CDN-ready file

Why Go for the agents

  • Single binary — deploy with no dependencies on any machine
  • Goroutines — efficient handling of multiple fragments in parallel
  • Low memory footprint — does not interfere with normal office machine usage
  • Cross-platform — compiles for Windows, macOS, and Linux from the same codebase

Have a similar technical challenge?

Let's talk about your infrastructure, architecture or pipeline. No commitment.

Schedule a Technical Assessment