live media streaming, secured on first boot, backed by cloudimg support
Node-Media-Server is a lightweight open source live media streaming server. It ingests an RTMP feed from any publisher and republishes it in real time as HTTP-FLV, WebSocket-FLV and HLS for low latency playback in browsers and native players, with a JSON admin API for live stream statistics. This cloudimg image delivers it fully installed and secured so a working ingest and playback endpoint is operational within minutes of launch.
Upstream ships with no authentication at all. This cloudimg image enables admin API, publish and play authentication and generates two independent per-instance secrets on first boot: an admin API credential and a stream signing secret every publish and playback URL must be signed with. No shared or default credentials exist and nothing is baked in, the server refuses to start in the insecure open mode, and every deployment includes bundled ffmpeg, signing and self test helper tools plus 24/7 cloudimg support.
This is a repackaged open source software product wherein additional charges apply for cloudimg support services.
## A Working Live Streaming Endpoint in Minutes
Node-Media-Server is a lightweight, open-source live media streaming server written in Node.js. It ingests an RTMP feed from any publisher - OBS Studio, ffmpeg, hardware encoders, or mobile apps - and republishes it in real time as HTTP-FLV, WebSocket-FLV, and HLS for low-latency playback in browsers and native players. A JSON admin API provides live stream and session statistics.
This AMI delivers it fully installed and secured, so a working ingest and playback endpoint is operational within minutes of launch. No manual package installation, no Node.js version wrangling, and no service configuration required.
## Who Is This For?
This image is built for DevOps engineers, live-event production teams, ed-tech startups, and media companies that need a self-hosted streaming origin server on AWS without the overhead of building and hardening one from scratch. Common use cases include:
## Secure by Default
Upstream Node-Media-Server ships with no authentication at all, meaning anyone who can reach it could publish to or play from your server and read the admin API. This image changes that:
## Helper Tools and Self Test
The image includes ffmpeg and two helper tools: one that generates a signed stream URL from your signing secret, and one that runs an end-to-end self test by publishing a short test pattern, pulling it back over signed HTTP-FLV, and confirming the admin API and the authentication rules all behave correctly. RTMP ingest is on port 1935 and HTTP playback plus the admin API are on port 8000.
## Getting Started
1. Launch the AMI on an m5.large instance or larger
2. SSH into the instance and read the generated secrets from the root-only credentials file
3. Generate a signed stream URL with the bundled helper, then publish an RTMP feed to it
4. Play the stream back over signed HTTP-FLV or HLS on port 8000
5. Query live statistics from the authenticated admin API
For a detailed walkthrough including sample OBS and ffmpeg publisher configurations, player embed code for HTTP-FLV and HLS, and TLS termination setup, see the user guide linked in the Additional Resources section.
## Book a Free Sizing Consultation
Not sure which instance type fits your viewer count? cloudimg engineers offer a free pre-purchase sizing consultation. Reach out via email or live chat to discuss your streaming workload, expected concurrency, and architecture before you commit.
## 24/7 cloudimg Support
Every deployment is backed by cloudimg engineers available around the clock via email and live chat, covering deployment and sizing guidance, publisher and player integration, URL signing and authentication, TLS termination with Let's Encrypt or your own certificates, reverse proxy and CDN fronting, and version upgrades within the stable 2.x line.
This is the stable open-source 2.x line, which is MIT licensed and freely redistributable.
Node-Media-Server is a trademark of its respective owner. All product and company names are trademarks or registered trademarks of their respective holders. Use of them does not imply any affiliation with or endorsement by them.