Skip to main content

Node-Media-Server

Node-Media-Server is available in the NetActuate Marketplace as a one-click, open-source appliance you can deploy into any NetActuate PoP. Lightweight Node.js live server: RTMP ingest with HTTP-FLV, HLS and DASH. It is grouped under the Media & Streaming category.

What It Does

Node-Media-Server is a lightweight, open-source live media server written in Node.js by Chen Mingliang (illuspas). It ingests live video over RTMP and delivers it to web and mobile players over HTTP-FLV, HLS and MPEG-DASH from a single small process, with a built-in JSON API for stream and session management.

Key features

  • RTMP publish and play on port 1935 (point OBS or any RTMP broadcaster at rtmp://<ip>:1935/live/<stream>)
  • Multi-protocol HTTP delivery on port 8000: HTTP-FLV, HLS and MPEG-DASH for every published stream
  • Low-latency HTTP-FLV and WebSocket-FLV playback for live and interactive use
  • JSON API (JWT-authenticated) on the HTTP port for stream, session and statistics management, with an unauthenticated health endpoint
  • Lightweight and dependency-light: a single Node.js process, no heavy runtime stack to manage

Use cases

  • Simple, self-hosted live streaming to web and mobile players close to your audience
  • RTMP ingest with instant HTTP-FLV / HLS / DASH republishing at the edge
  • Low-latency HTTP-FLV delivery for interactive and second-screen experiences
  • A small, easy-to-operate origin per PoP for live channels

Why run it on the NetActuate edge Deploy Node-Media-Server into NetActuate PoPs near your viewers to keep delivery paths short. A management admin account is generated for you at deploy time and RTMP ingest (1935) plus HTTP delivery (8000) are enabled the moment it boots.

Upstream project: Node-Media-Server by Chen Mingliang (illuspas), https://github.com/illuspas/Node-Media-Server (Apache-2.0). This appliance packages the unmodified official public illuspas/node-media-server 4.2.8 Docker image on Ubuntu 24.04 LTS. Node-Media-Server is a project of its upstream authors; NetActuate packages and distributes it under the Apache-2.0 license and is not affiliated with or endorsed by the upstream project.

Vendor and Project

Node-Media-Server is an open-source project, offered here under the Open Source listing with best-effort community support.

NetActuate supports the underlying infrastructure. Application-level support follows the listing SLA class (open-source, best effort).

Sizing

vCPURAMDisk
Minimum11 GB10 GB
Recommended22 GB20 GB

No VPU (hardware acceleration) is required for this appliance. Choose a size at deploy based on your expected load.

Configuration Fields

When you deploy, you provide these fields. They are written into the appliance at first boot.

FieldRequiredDefaultNotes
Admin passwordNogeneratedManagement admin password for the JSON API (fixed user admin). Generated for you and stored in your secret list; never echoed back. Allowed characters: letters, digits, . _ - (8 to 128 chars). Stored write-only in your account secret list
RTMP portNo1935RTMP publish/play TCP port.
HTTP portNo8000HTTP port for HTTP-FLV, HLS, MPEG-DASH playback and the JSON API.

Using the Appliance

Node-Media-Server is up. Publish RTMP: rtmp://YOUR_VM_IP:1935/live/<stream> (for example from OBS). Play back the same stream over HTTP on port 8000: HTTP-FLV at http://YOUR_VM_IP:8000/live/<stream>.flv, HLS at /live/<stream>/index.m3u8 and MPEG-DASH at /live/<stream>/index.mpd. The JSON API is on the same HTTP port under /api/v1 (health at http://YOUR_VM_IP:8000/api/v1/health, no auth). Manage streams and sessions by first POSTing to /api/v1/login as user admin with your generated password (in your secret list as mkt-<deploymentId>-mkt_admin_password) to obtain a JWT, then calling /api/v1/streams, /sessions and /stats with it. The API/media port is reachable on the public IP; restrict it to trusted source IPs where possible, and put TLS in front before production use.

FAQ

Is there a software license fee? No. Node-Media-Server is open source and free to run. You pay only for the NetActuate infrastructure and bandwidth.

Where is the web interface? On port 8000 at path /api/v1/health by default.

Who supports it? NetActuate operates the underlying infrastructure. The application itself is community-supported open source (best-effort SLA class).

Version and Changelog

VersionStatusReleased
4.2.8Current (default)2026-07-11

Deploy


Need Help?

Contact support@netactuate.com or open a support ticket from the portal.