RepoCloudflare (Workers AI)Cloudflare (Workers AI)published Oct 1, 2026seen 1w

cloudflare/streamline

Go

Open original ↗

Captured source

source ↗
published Oct 1, 2026seen 1wcaptured 1whttp 200method plain

cloudflare/streamline

Language: Go

License: Apache-2.0

Stars: 5

Forks: 0

Open issues: 1

Created: 2026-10-01T23:09:14Z

Pushed: 2026-10-02T15:29:34Z

Default branch: main

Fork: no

Archived: no

README:

Streamline

Streamline is a Go media engine for Cloudflare Containers. It receives webcam, Cloudflare Stream HLS, or application-resolved RTMPS input; applies a bounded processing pipeline; and produces fMP4 preview or RTMPS output.

This repository contains the Container server and the reusable @cloudflare/streamline Worker/Durable Object package. It does not deploy a Worker by itself. An application owns authentication, media policy, Wrangler configuration, and Container deployment.

Build

Requirements: Go 1.25.4+, Docker, and Node.js 22.12+ for @cloudflare/streamline.

# Container tests and image
cd container
go test ./...
docker build -t streamline:latest .

# Reusable Cloudflare package
cd ../packages/cloudflare
npm ci
npm test

The Container image includes FFmpeg, CA certificates, and Liberation/DejaVu fonts. The Go module uses Gorilla WebSocket; Testify is test-only. @cloudflare/streamline has a peer dependency on @cloudflare/containers.

Deploy With An Application

Use an application such as Streamline Demo to deploy Streamline. Applications consume a released @cloudflare/streamline package and configure a versioned Container image from the Cloudflare Registry. The application owns Worker configuration, auth, user interface, and media policy.

Documentation

  • [Architecture](ARCHITECTURE.md): components, trust boundaries, limits, and media flow.
  • [Session API contract](docs/SESSION_API_CONTRACT.md): Worker integration and typed session protocol.
  • [@cloudflare/streamline](packages/cloudflare/README.md): package API and Durable Object base class.
  • Demo deployment guide: owner and Playground deployments.
  • [Contributing](CONTRIBUTING.md) and [security reporting](SECURITY.md).

Security Model

Applications authenticate callers and resolve any sensitive media credentials before requests reach Streamline. The engine preserves session-ID fencing, bounded request and queue sizes, and capability-protected preview relay connections. Do not expose stream keys, relay capabilities, or arbitrary FFmpeg arguments to browsers.