Version 1.0 · self-hosted

Run your own live streaming platform. On your server, under your control.

MediaXT is the control plane for MediaMTX. Publish from OBS, protect every viewer with signed tokens, embed anywhere, and run it all with the health checks, metrics, and backups a production service needs.

  • One-command Docker deploy
  • No per-viewer or per-minute fees
  • All updates included
streams · mediaxt
12Streams
9Online
3Offline
PathStatusReadersABR
stream-mainLive1,2841080/720/480
stream-studio-bLive342720/480
stream-backupReady0Source
stream-eventOffline1080/720
/readyz · database ok · mediamtx ok · cert 61 days
140+automated tests on every release
0public CDN dependencies at runtime
3health, readiness & metrics endpoints
100%of your media stays on your infrastructure

The product

Everything between the encoder and the viewer

MediaMTX moves the video. MediaXT gives your team the dashboard, security, and operating discipline around it.

Stream dashboard

Add, edit, toggle, and delete paths. Search, filter, and page through live, ready, and offline streams with status polled from the MediaMTX API.

OBS-ready ingest

RTMP and RTMPS publish URLs computed per stream, with encrypted publisher credentials you can rotate in one click.

Adaptive bitrate

Per-stream ABR with managed FFmpeg renditions and a protected master playlist. The source stays available as the top-quality fallback.

HLS & WebRTC playback

Scalable HLS for public audiences, low-latency WebRTC when seconds matter. Choose the default per deployment.

Secure embeds

Drop a player on any site with signed embed URLs. Viewer tokens are short-lived and refreshed by the player automatically.

Audit log

Every sign-in, stream change, settings update, and reload is recorded, so you always know who changed what.

Architecture

How a stream flows through MediaXT

  1. 1

    Publish

    OBS or any encoder pushes to rtmps://your-domain:1936 with per-stream credentials.

  2. 2

    Authorize

    MediaMTX asks MediaXT whether the publisher is allowed. Bad credentials never reach your audience.

  3. 3

    Transcode

    If ABR is on, FFmpeg renditions start automatically when the stream becomes ready.

  4. 4

    Deliver

    Nginx serves HLS and WebRTC on your HTTPS origin, only after the viewer token checks out.

Raw MediaMTX viewer ports and its control API stay private inside the Docker network by default.

Security

Secure by default, not by checklist

Defaults are set for production. You don't have to find and switch on the protections yourself.

  • Signed, short-lived viewer tokens on every HLS segment and WebRTC session
  • Session auth with CSRF protection, hashed passwords, and login rate limiting
  • Encrypted publisher credentials at rest, masked in the UI until revealed
  • Non-root, read-only containers for the app and Nginx, with minimal capabilities
  • No Docker socket mounted into the web app
  • Vendored front-end assets: nothing is loaded from a public CDN at runtime
  • Safe config writes: mediamtx.yml is validated and backed up before every change

Operations

Built for the team that gets paged

Every piece you need to run MediaXT in production is included and documented.

Health and readiness

/healthz for liveness. /readyz checks the database, the MediaMTX API, free disk space, and TLS certificate expiry, so your load balancer knows the real state.

Prometheus metrics & alerts

App and MediaMTX metrics, ready-made alert rules, and an optional monitoring profile: docker compose --profile monitoring up -d.

Backups you've actually tested

Postgres dumps with checksum sidecars and off-box upload hooks, plus a restore drill that proves your backups restore without touching the live database.

Graceful licensing

License checks keep a last-known-good grace window, and it survives restarts. A licensing outage never takes your streams down.

Deploy in minutes

A Linux VPS with Docker, a domain, and a certificate is all you need.

# 1. configure
cp .env.example .env
# 2. launch the stack
docker compose up -d --build
# 3. create your admin
docker compose exec app python -m scripts.seed_admin \
  --email admin@your-domain --password '…'

Bandwidth calculator

Estimate what your audience will cost in bandwidth

MediaXT has no per-viewer fees, so bandwidth from your hosting provider is your main running cost. Enter your stream settings to size your server.

"Concurrent viewers" is the total watching across all streams at the same moment.

Peak outbound bandwidth
Recommended server port
Monthly data transfer
Inbound from encoders
Encoder upload needed, per stream

Transfer = viewers × watch time × bitrate, the same formula most streaming cost calculators use, plus about 3% for HLS packaging. Presets use the bitrates MediaXT actually encodes, so compare equal bitrates when you check other calculators. Port size adds 30% headroom; encoder upload adds 50%. With adaptive bitrate on, viewers on slower connections get lower renditions, so real usage is usually lower.

Example: total monthly cost on DigitalOcean

Uses the audience above. DigitalOcean includes some outbound transfer with each Droplet and charges $0.01 per GiB over that. Inbound traffic from your encoders is free.

With adaptive bitrate on, "cheapest that fits" only picks CPU-Optimized Droplets with at least 4 dedicated vCPUs per live stream. That's a rough guide for three renditions; test with your own source.

Droplet
Outbound transfer
Included with Droplet
Transfer overage
Hosting per month
With MediaXTPer monthFirst year
Monthly
Yearly
Lifetime

First year includes the $100 setup fee on Monthly and Yearly, and the one-time $1,999 on Lifetime; after that, Lifetime costs only hosting. DigitalOcean prices checked September 2026, for a Droplet running all month. Transfer allowances are pooled across all Droplets on your team. MediaXT is not affiliated with DigitalOcean; confirm current prices at digitalocean.com/pricing.

Pricing

One product. Every feature. Pick how you pay.

Each license covers one self-hosted installation. Every plan includes the full product and all future updates.

Monthly

$89/month

+ $100 one-time setup fee

Cancel anytime. Good for pilots and short events.

Start monthly
  • 1 self-hosted installation
  • Unlimited streams & viewers
  • All features included
  • Free updates while subscribed
  • Email support

Lifetime

$1,999once

Free setup

Pay once. Costs less than monthly after 22 months.

Buy lifetime
  • 1 self-hosted installation
  • Unlimited streams & viewers
  • All features included
  • Free updates for life
  • No setup fee
  • Priority email support

Prices in USD. The setup fee is charged once, with your first payment. Your own server, bandwidth, and domain costs are separate. Estimate your bandwidth.

FAQ

Questions teams ask before buying

What do "free updates" include?

Every new release: features, security fixes, and compatibility updates. Monthly and yearly plans get updates while the subscription is active. Lifetime licenses get them for good.

What does "self-hosted" mean for my data?

MediaXT runs on your server. Your streams, recordings, credentials, and audit logs stay on your infrastructure. The only outbound call is the license check, which sends a hashed key, not your content.

What happens if the license server is unreachable?

MediaXT keeps the last valid license result in its database and keeps running during a configurable grace window, 24 hours by default.

What do I need to run it?

A Linux server with Docker and Docker Compose, a domain name, and a TLS certificate (Let's Encrypt works). Open ports 80/443 for the web, and 1935/1936 for RTMP/RTMPS ingest.

Are there limits on streams or viewers?

MediaXT doesn't set any. Your capacity depends on your server's CPU (for adaptive bitrate) and bandwidth.

Is there a setup fee?

Monthly and yearly plans have a one-time $100 setup fee, charged with your first payment and never again, including at renewal. Lifetime licenses have no setup fee.

How much bandwidth will I need?

It depends on your bitrate and how many people watch at once. Use the bandwidth calculator for an estimate, then check your hosting provider's included transfer and port speed.

Can I switch plans later?

Yes. You can move from monthly to yearly or lifetime at any time. Contact us and we'll credit your current billing period.

Own your live streaming stack.

Deploy MediaXT on your infrastructure today.