Files
tuner/docker-compose.yml
Scott Register 88a189de34 Tuner v1: HLS pipeline with playback/ingest modes
FFmpeg -> MediaMTX -> HLS relay with runtime-configurable modes:
- PLAYBACK_MODE: standard (mpegts), fmp4 (HEVC), llhls
- INGEST_MODE: rtmp, rtsp
- INGEST_AUDIO_MODE: aac, copy
- Hourly playlist auto-refresh from upstream URL
- Fullscreen video UI with collapsible sidebar, upstream-down banner
- Same-origin HLS proxy for HTTPS deployments

Tagged as the last HLS-based version before the mpegts.js (v2) rework.
2026-06-12 19:17:15 -07:00

28 lines
1.0 KiB
YAML

services:
tuner:
build: .
ports:
- "1935:1935"
- "8080:8080"
- "8888:8888"
volumes:
# real1.m3u is mounted read-only as the local source.
# It is only used when PLAYLIST_USE_LOCAL=true.
- ./real1.m3u:/data/playlist.m3u.local:ro
environment:
RESTREAMER_PORT: "8080"
PLAYLIST_PATH: "/data/playlist.m3u"
# Default: fetch playlist from URL on every boot.
# Set PLAYLIST_USE_LOCAL=true to use real1.m3u instead.
PLAYLIST_URL: "https://pia.cx/m3u/630xhAmY/smp424GL"
PLAYLIST_USE_LOCAL: "false"
# Set to "0" or "off" to disable automatic playlist refresh.
PLAYLIST_AUTO_REFRESH_INTERVAL: "1h"
# Playback mode: "standard" (MPEG-TS, iOS-friendly), "fmp4" (HEVC/H.265), or "llhls"
PLAYBACK_MODE: "standard"
# Ingest mode: "rtmp" (default) or "rtsp" (better for HEVC/H.265)
INGEST_MODE: "rtmp"
# RTSP ingest audio mode: "aac" (transcode audio, recommended) or "copy"
INGEST_AUDIO_MODE: "aac"
restart: unless-stopped