A local RTMP + HLS server for JimRsng's streaming workspace.
It accepts an RTMP input, generates HLS output with FFmpeg, and serves media over HTTP.
It also supports a development mode without Cloudflare Tunnel and token caching for production runs.
- RTMP ingest with FFmpeg processing
- HLS output served via HTTP
- Auto-installs
cloudflared.exeandffmpeg.exeinto%LOCALAPPDATA% --devmode (no tunnel)- Cloudflare token validation and cache
- Startup update check
- Node.js 22 or newer
- pnpm
-
Install dependencies
pnpm install
-
Run app
# Dev mode (no tunnel) pnpm dev # or # Normal mode pnpm start
Creates the distributable JavaScript output in dist/.
pnpm buildBuilds the project, packages it as a Windows .exe, and applies executable metadata.
pnpm compileOutput file:
pkg/jim-rtmp.exe
Current compile target:
node24-win-x64.
When the app starts for the first time, it asks for your Cloudflare Tunnel token.
- Enter your token when prompted.
- Choose whether to save it for future runs.
- If saved, the app will use the cached token on next launches and will not ask again.
- Then FFmpeg starts listening for RTMP and begins processing as soon as a stream is received.
- RTMP served at
rtmp://127.0.0.1:5740/live - HTTP served at
http://127.0.0.1:8080/live
MIT. See LICENSE.