From 32f304df0f463c08c93a22d67da6335bec2b3fbe Mon Sep 17 00:00:00 2001 From: yum Date: Tue, 14 Oct 2025 19:22:10 -0700 Subject: switch to rtmps --- README.md | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'README.md') diff --git a/README.md b/README.md index 6bc954d..5832972 100644 --- a/README.md +++ b/README.md @@ -2,18 +2,19 @@ Shitty service to proxy data from OBS into an HTTP Live Streaming (HLS) feed VRC ## Streamer instructions -1. Configure OBS with a custom server pointing at `rtmp:///live` - and in the stream server. Enter your stream key. +1. Configure OBS with a custom server pointing at `rtmps://:1935/live` + in the stream settings and enter your stream key. 2. Press stream. Check status on bottom right of obs. ## Dev instructions -1. Get ssh perms to yummers.dev. +1. Get ssh perms to yummers.dev. `ssh yummers.dev` should log you in as yum if + not, you'll have to update the ssh commands below. 2. Run ./push.sh 3. Add this to your .bashrc: ```bash function check_live { - ssh yummers.dev 'sudo systemctl status obsproxy' + ssh yummers.dev 'sudo journalctl -u obsproxy -f' } function start_live { ssh yummers.dev 'sudo systemctl start obsproxy' @@ -38,10 +39,14 @@ function get_live { 3. Start the Python service (see `etc/systemd/system/obsproxy.service` for a sample unit). The bundled entrypoint now runs under [Waitress](https://docs.pylonsproject.org/projects/waitress/en/stable/) so you get a production-grade WSGI server out of the box. 4. When the service starts it prints a session-specific playlist URL like `https:///hls//stream.m3u8`; share that exact URL with your VRChat video player. Multiple viewers can consume the feed concurrently. +RTMPS termination happens at nginx (default port `1935`) via the `ngx_stream_module`, which proxies plain RTMP to the local nginx-rtmp listener on `127.0.0.1:1936`. Update the `INGEST_RTMP_*` settings if you run the backend elsewhere, and make sure the stream module is installed/enabled (on Debian/Ubuntu install `libnginx-mod-stream`). + Environmental knobs: - `OBS_STREAM_KEY` / `STREAM_PSK`: required PSK for the single ingest client. - `INGEST_THREAD_QUEUE_SIZE`: RTMP demux queue depth before frames are dropped (defaults to `4096`). +- `INGEST_RTMP_HOST`: host FFmpeg pulls RTMP from (defaults to `127.0.0.1`). +- `INGEST_RTMP_PORT`: port FFmpeg pulls RTMP from (defaults to `1936`). - `HLS_SEGMENT_TIME`: length (in seconds) of the `.ts` segments emitted by FFmpeg (defaults to `2`). - `HLS_PLAYLIST_SIZE`: number of segments retained in the rolling playlist (defaults to `6`). - `HLS_DELETE_THRESHOLD`: additional historical HLS segments to keep on disk before pruning (defaults to `2`). -- cgit v1.2.3