Installation
Install ErsatzTV on Linux, Windows, macOS, or Docker in minutes.
Quickstart
Create your first channel and start streaming in four steps.
Core Concepts
Understand channels, libraries, schedules, and playouts.
API Reference
Explore the REST API to automate and integrate ErsatzTV.
How It Works
1
Install ErsatzTV
Download a release package or pull the Docker image. ErsatzTV runs as a background server and exposes its web UI on port 8409.
2
Connect Your Media
Add a local library folder or connect a Plex, Jellyfin, or Emby server. ErsatzTV scans and indexes your movies, shows, music videos, and more.
3
Create Channels & Schedules
Design channels with numbers, logos, and streaming modes. Attach a Classic, Block, YAML, or Scripted schedule to control what plays and when.
4
Stream Anywhere
Point any IPTV client at
http://<host>:8409/iptv/channels.m3u and the XMLTV guide at /iptv/xmltv.xml. Watch on Plex, Jellyfin, Emby, Infuse, VLC, or any HDHomeRun-compatible app.Key Features
Flexible Scheduling
Classic, Block, YAML, and Python-scripted schedule types to match any programming style.
Hardware Transcoding
GPU-accelerated encoding with NVENC, QSV, VAAPI, AMF, VideoToolbox, and RKMPP.
Media Server Integration
Native connectors for Plex, Jellyfin, and Emby with automatic library scanning.
IPTV & EPG Output
M3U playlist and XMLTV EPG endpoints compatible with every major IPTV client.
HDHomeRun Emulation
Appear as an HDHomeRun device on your network for seamless DVR app integration.
REST API
OpenAPI 3.1-documented endpoints for channels, FFmpeg profiles, libraries, and more.
