In-house encoding
Masters are transcoded into a multi-bitrate adaptive ladder, segmented, and published to origin storage — a pipeline we own rather than a vendor we bill through.
Streaming & cloud infrastructure
A complete OTT platform, a private cloud, and a content delivery network — all built in-house and all running on our own bare metal. No per-gigabyte egress bill. No per-minute transcoding vendor. No per-session analytics licence. The whole stack is ours, which is why it costs a fraction of the rented equivalent.
Own the metal
Bare-metal, on-premises
Own the pipeline
Encode · deliver · measure
Own the code
21 codebases, 4 languages
Own the numbers
100% infrastructure as code
290
REST endpoints
across 14 services
21
Codebases
independently deployable
18
Isolated guests
on a single 2U node
22
Terraform modules
the whole estate, in code
What we build
Most streaming companies buy two of these and build one. We build all three, which is why they fit together instead of merely connecting.
A complete subscription video service: catalogue, search, recommendations, billing, entitlements, pay-per-view, live channels and native apps for web, phone and television.
A virtualised estate on hardware we own and physically hold: isolated compute, GPU passthrough, S3-compatible object storage, and a full observability stack — declared entirely in code.
Our own edge, compiled from source for the job: range-aware caching so a mid-film seek is served from disk, geographic awareness, HTTP/3, and a token check on every single segment.
The platform
Every streaming product is judged in the first two seconds. Playboox is engineered around that window — and around the thousand seconds that follow it.
Video is prepared once and prepared properly: a single master becomes an adaptive ladder that steps cleanly between quality levels as a connection moves, so the picture degrades gracefully instead of stopping. Delivery runs on our own edge, with range-aware caching that serves a mid-film seek from disk rather than reaching back to origin.
Playback is instrumented the way a broadcaster instruments it. Every session reports start-up time, rebuffering, bitrate changes and errors back into a purpose-built analytics store, so quality is a number we watch rather than a complaint we wait for.
The apps are native where it counts. One codebase produces the phone and the television experience, sharing playback, entitlement and design so both move forward together.
Cached at the edge, close to the viewer. Manifests and keys are served in milliseconds so the first frame is not waiting on a round trip.
An adaptive ladder tuned per title. Quality steps down before a buffer empties, not after — the stream bends rather than breaks.
Start-up time, rebuffer ratio and error rate land in analytics per session. Playback quality is monitored continuously, not sampled.
Network
Two paths in, one protected path out. This is the route every second of video takes — from a camera or a master file, through our own encoding and our own delivery network, to a screen. Nothing in the chain is rented.
A broadcast feed arrives over standard contribution protocols, is handed off with minimal delay and repackaged into encrypted segments as it runs.
A master file is transcoded once into a full quality ladder, encrypted, and published to origin storage ready to be served forever after.
Every player reports what it actually experienced — start-up time, rebuffering, errors. That data comes back to us continuously and informs how the ladder is tuned.
Infrastructure
The entire platform runs on hardware we own and physically hold. Not a rented region, not a shared tenancy — a hypervisor on our own rack, carved into isolated machines and declared, every line of it, in version control.
Each service gets its own virtual machine or container: its own kernel, its own network address, its own failure domain. A misbehaving encoder cannot reach the billing database, and a rewrite of one service never means redeploying another.
Transcoding runs GPU-accelerated on the same node, so a master file never leaves the building to be encoded. Origin storage is S3-compatible, which means the day it makes sense to move it to a public cloud, the services reading from it do not change a line.
The platform as it runs today — our hardware, our network, our operational responsibility. Lowest cost per stream and nothing to negotiate with a vendor.
The same stack, declared in the same Terraform, stood up inside your own datacentre. Useful where content, data residency or regulation cannot leave the building.
Nothing in the stack is tied to our hypervisor. Object storage is S3-compatible and every service is containerised, so a migration is a change of target, not a rewrite.
Developer surface
The platform is not a monolith with a web page bolted on. Every capability — catalogue, playback authorisation, billing, live channels, search, telemetry — is a documented REST endpoint that our own apps consume exactly the way an integrator would.
290
Total endpoints
48
Public surface
242
Private surface
gRPC
Streaming progress
/titlesPaginated catalogue
/titles/:idTitle detail
/titles/:id/episodesEpisode list for a series
/titles/searchSearch by title
/api/v1/homeThe whole home screen in one call
/api/v1/vod/:id/authorizeEntitlement check, then a signed playback URL
/api/v1/live/:slug/authorizeEntitlement check for a live channel
/api/v1/vod/:id/nextUp next
/plansAvailable subscription plans
/subscribeCreate a subscription
/purchaseBuy a single title or a pay-per-view event
/entitlement/:userIdWhat a viewer may watch right now
/channelsLive channel list
/jobsQueue an encode
/jobs/:idEncoding job status
/issue-token/:folderMint a signed playback token
290 endpoints across 14 services. Of those, 48 are reachable from the public internet; the remaining 242 sit on a private network with no route in from outside. That ratio is a design decision, not an accident.
Economics
A streaming service of this shape normally pays three vendors that all bill by usage: one to transcode, one to deliver, one to measure. Every additional viewer increases all three. We removed all three.
This is not a discount. It is a different cost structure. Owning the pipeline converts a variable cost that grows with success into a fixed cost that does not — which is precisely the curve a subscription business needs.
Engineering
Independently deployable services, each responsible for one thing, each able to scale or move without disturbing the rest. Below is what actually runs.
Masters are transcoded into a multi-bitrate adaptive ladder, segmented, and published to origin storage — a pipeline we own rather than a vendor we bill through.
A purpose-compiled edge with slice-based range caching, geographic awareness and HTTP/3. A seek into the middle of a film is served from cache, not fetched again from origin.
Every stream is encrypted. The decryption key is released only against a signed, expiring token, and the edge re-verifies that token on every segment — continuously, not once at the start.
Hot catalogue reads and session state are held in memory at the application tier, so the pages a viewer hits most never touch the database twice.
Player telemetry streams into a column store built for continuous ingest, turning start-up time, rebuffering and error rates into dashboards we act on.
Catalogue, billing, live, search, recommendations and encoding run as separate services. One failure is contained; one rewrite is scoped.
A single native application installs on handsets and on television, sharing playback, entitlement and design system so both surfaces ship together.
Every server, service and network path is declared in version control. The platform is reproducible from its written definition — not from anyone's memory.
A dedicated search index and a recommendation service that rebuilds on a schedule, so discovery is a first-class service rather than a database query with a LIKE in it.
How we work
The difference between a demo and a platform is what happens on the days nobody is watching. These are the habits that make the second one possible.
Servers, services, network routes and firewall policy are all declared as code. Rebuilding the estate is a command, not an archaeology project.
Metrics, logs and playback telemetry all land in one observability stack. Capacity, error rates and playback quality are numbers on a dashboard, not opinions.
Guest-level backups run nightly with retention. A restore has been performed and verified end to end — an untested backup is a belief, not a backup.
Infrastructure changes are planned, read and approved before they touch a running guest. Nothing reaches the hypervisor because a script felt confident.
Service-to-service calls carry scoped credentials, mutating endpoints are gated, and the public surface is deliberately a small fraction of the total.
Every procedure, decision and rollback path is written down at the time it happens — including the mistakes, because those are the ones worth not repeating.
Questions
Today it is a platform we build and operate, running a live consumer service. The same stack is declared in code and can be stood up on other hardware — ours, yours, or a public cloud — which is what makes it a foundation rather than a one-off.
Because delivery is the largest recurring cost in streaming and the one with the least differentiation available for money. Compiling our own edge gave us range-aware caching tuned to how people actually watch, per-segment authorisation, and a bill that does not grow with every gigabyte.
Every stream, live and on demand, is encrypted. The decryption key is released only against a signed, expiring token, and the edge re-checks that token on every segment rather than once at the start of playback. Copying a link does not copy access.
The estate is declared in Terraform and every service is containerised behind its own address, so adding a node is adding capacity, not re-architecting. Object storage is already S3-compatible for exactly this reason.
Because every session tells us. Start-up time, rebuffer ratio, bitrate changes and errors stream back from every web and mobile player into an analytics store built for continuous ingest. Quality is monitored, not surveyed.
The encoder, the delivery edge, the token system, the analytics pipeline, the APIs, the web app and the native apps. Twenty-one codebases across four languages. The parts we did not write are the well-understood building blocks underneath — databases, a message broker, a search index.
Whether that is a streaming service, a private cloud, or delivery infrastructure that has become too expensive to keep renting — the fastest way to start is a conversation.