Skip to main content
Video services built around Cloudflare R2

Spend the build budget on the service customers will pay for

Build membership VOD, learning platforms, enterprise archives, and niche streaming services on NULX upload, transcoding, and protected-playback foundations. Keep files in your Cloudflare account while we shape membership, payments, content, and admin workflows around the business.

Verified development configurations

See what works through code and test evidence

These capabilities were checked with real media and integration tests.

01

4K HLS renditions

A real 4K file exercised 2160p, 1080p, and 720p HLS with actual playback.

  • Adaptive renditions that never exceed the source
  • HLS by default, with MPEG-DASH when requested
  • Manifest, rendition, and segment verification

02

Membership-protected playback sandbox

A repeatable sandbox connects Rails authorization, the Go worker, production Edge Worker code, and a private-R2 boundary.

  • Expired, tampered, and out-of-scope requests rejected
  • Zero R2 reads for denied requests
  • Protection across manifests, segments, and captions

03

Large web and desktop uploads

A real 836 MB 4K file exercised a 36-part web upload and the desktop encoding and upload flow.

  • Resume interrupted uploads
  • Create HLS on a PC before uploading to R2
  • Korean filenames and sidecar subtitles

04

Opt-in automatic-caption integration

Mock-API integration covers upload selection, audio extraction, Groq request, WebVTT storage, and completion billing. Live-key verification follows deployment setup.

  • Per-video enablement and source-language selection
  • Groq transfer disclosure before processing
  • Per-minute billing by source duration

Automatic captions were verified in a test environment. Performance depends on the customer computer and network.

Architecture for decision-makers

Set ownership, security boundaries, and cost responsibility before the build

We do not rebuild every layer of video infrastructure. We separate what NULX operates, what Cloudflare bills, and what your company continues to own, then focus custom work on membership, payments, and content.

Start with your Cloudflare account

Define where sources and streaming outputs live, who controls credentials, and who operates the domain.

Reuse the verified media foundation

Build on upload, HLS transcoding, captions, and protected playback, adding DASH only when needed.

Separate build cost from operating cost

The proposal lists custom development, NULX usage, Cloudflare R2 costs, and maintenance as separate responsibilities.

Build scope

Build only what differentiates the business

Separate the NULX and Cloudflare foundation from the customer-facing product work included in the estimate.

  • Service structure and screen planning
  • Branded web UI
  • Membership, permissions, and admin tools
  • Payments and content access rules
  • Cloudflare R2, domains, and protected playback
  • Deployment and operating handoff

We remove anything you do not need and estimate existing-system integrations as separate work.

What you receive

We give you grounds to decide before asking you to commit

Our first response separates the buildable scope from the questions that still need answers.

Reused foundation versus custom work

See which parts can run on NULX and which parts must be built for your project.

Milestones, timing, and estimated cost

After confirming requirements, we propose work units, sequence, expected timing, and cost.

Responsibility after launch

We explain customer-owned storage costs, NULX usage, maintenance, and handoff separately.

You do not need a finished specification. Tell us who watches, whether content is paid or members-only, where media lives today, and roughly how much you upload.

Architecture review

You do not need a finished specification

Tell us who watches, whether content is paid or members-only, where media is stored today, and roughly how much you upload each month.

We send an initial scope response within 1-2 business days.

Other contact paths

Other ways to reach us

Consulting hours

First response within 12 business hours. Async-first via email.

Response window

1-2 business days

Before you adopt

Start with ownership and data flow

Whose account stores the video files?

With Cloudflare R2 connected, sources and HLS/DASH outputs are stored in a bucket in your Cloudflare account. NULX stores the metadata needed to operate processing and playback.

Does video pass through NULX during transcoding?

Yes. For managed encoding, a NULX worker temporarily reads the source through a limited signed URL and writes results to your R2.

Is there absolutely no vendor lock-in?

We do not promise zero lock-in. Keeping sources and standard HLS, DASH, and WebVTT outputs in your bucket reduces rehosting work, but membership, billing, and service-specific metadata still need a migration plan.

Does R2 make every cost free?

No. Direct internet egress from R2 is $0, but storage, Class A/B operations, and other connected metered services can still incur charges.

What leaves the system when automatic captions are enabled?

A low-bitrate audio extract, not the full video, is sent to Groq. Automatic captions are optional per video.

Can you migrate an existing video service?

Yes. We review current storage, media count and formats, metadata, access rules, and acceptable downtime before proposing a phased migration.

Calculate my usage