Bolrach Stream Open the console

VIDEO

Video that arrives
and stays yours.

Upload straight to storage, nothing streams through the API. We encode it into the renditions a real network needs, then hand each viewer a licence that can be scoped to a domain, a country or a rental window.

Direct-to-storage uploadsPer-viewer licencesCustom playback domains
Source to screen
SOURCE 4K master ENCODE 1080p 720p 480p LICENCE BYTES GO STRAIGHT TO STORAGE · NEVER THROUGH THE API
Direct upload · bytes never touch the APIPer viewer · a licence, not a public URLLive + rooms · broadcast and interact

HOW IT WORKS

From a file on a laptop to a player on a page

Ask for an upload

One call returns the parts. Your client PUTs the bytes straight to storage, so a large file never queues behind an API.

We encode it

The master becomes a rendition ladder. The console shows progress, and names the reason if anything fails.

Mint a licence and play

Grant one viewer access, optionally bound to your domains, a country list or an expiry, and hand the player the result.

WHAT IT DOES

Everything between the file and the viewer

Uploading is the easy half. The rest is what this is for.

Encode once, play anywhere

One master becomes the ladder of renditions a real network needs, so a phone on a train and a desk on fibre both get something watchable.

A licence per viewer

Playback is granted, not published. Scope it to your domains, to countries, to a concurrent-stream limit or to a rental window that expires.

Your own playback domain

Serve from a hostname you control, so the player, the cookies and the analytics all live under your brand.

Live and interactive

Broadcast a channel, or run a room where people can actually speak back, the same library, the same keys.

Delivery you can see

Sessions, distinct viewers, what was watched most, and an encoding view that names failures instead of hiding them behind a status pill.

An API that keeps its promises

Documented endpoints, Node and Python SDKs, and uploads that resume instead of starting the whole file again.

INTEGRATION

Upload, encode, and hand out a licence

Install with npm i @bolrach/stream or pip install bolrach-stream.

NODEPYTHONHTTP
// your server, start an upload
const upload = await stream.createUpload({ filename: 'lecture.mp4', bytes: size });
// then PUT each part straight to storage, nothing goes through the API
await stream.completeUpload(upload.id, { parts });

// when a viewer presses play
const licence = await stream.playbackToken(assetId, {
  viewer_id:       'user_8123',
  allowed_domains: ['app.example.com'],
});

HONEST LIMITS

What Stream is not

Where the edges are, before you build on it.

It is not a content network of its own.

Delivery rides infrastructure we operate and pay for. That keeps it honest on cost, and it means capacity is planned rather than infinite.

A licence is not DRM.

It scopes and expires access, which stops link sharing and hot-linking. It does not stop somebody pointing a camera at a screen, and nothing does.

Encoding takes real time.

A long master is minutes of compute, not an instant. The console shows the stage rather than a spinner that tells you nothing.

Put your first video online

Create a workspace, upload a file, and watch it encode.