Dispatcharr

Dispatcharr

Official

Docker app from slamanna212's Repository

Overview

Dispatcharr is a IPTV streaming playlist (m3u m3u8) editor and proxy. IPTV proxy application that enables users to curate complex M3U playlists, manage them, and proxy them to various applications like Emby, Plex, Jellyfin, or any other compatible streaming platform. It offers the flexibility to import an unlimited number of M3U and EPG files, supporting a wide range of streaming content. Dispatcharr delivers fast and reliable streaming across multiple operating systems. Additional features, such as robust proxying and support for multiple clients on a single backend stream, make it a comprehensive solution for today’s streaming needs. Proxy Streaming Engine - Stream more reliably, with fewer provider connections. Real-Time Stats Dashboard - Monitor stream health and client activity live. EPG Auto-Match - Automatically map guide data to your channels. Output Compatibility - Works with Plex, Jellyfin, Emby, ChannelsDVR and more (HDHomeRun, M3U, XMLTV). To use a GPU with this app, see here: https://dispatcharr.github.io/Dispatcharr-Docs/user-guide/?h=gpu#mapping-hardware

🎬 Dispatcharr β€” Your Ultimate IPTV & Stream Management Companion

Dispatcharr Logo


πŸ“– What is Dispatcharr?

Dispatcharr (pronounced like "dispatcher") is an open-source powerhouse for managing IPTV streams, EPG data, and VOD content with elegance and control.
Born from necessity and built with passion, it started as a personal project by OkinawaBoss and evolved with contributions from legends like dekzter, SergeantPanda and Seth.

Think of Dispatcharr as the *arr family's IPTV cousin β€” simple, smart, and designed for streamers who want reliability and flexibility.


🎯 What Can I Do With Dispatcharr?

Dispatcharr empowers you with complete IPTV control. Here are some real-world scenarios:

πŸ’‘ Consolidate Multiple IPTV Sources
Combine streams from multiple providers into a single interface. Manage, filter, and organize thousands of channels with ease.

πŸ“Ί Integrate with Media Centers
Use HDHomeRun emulation to add virtual tuners to Plex, Emby, or Jellyfin. They'll discover Dispatcharr as a live TV source and can record programs directly to their own DVR libraries.

πŸ“Ό Record with Built-in DVR
Schedule one-time or recurring recordings from the TV Guide, manage series rules, and optionally strip commercials with Comskip. Watch recordings while they're still in progress.

πŸ“‘ Create a Personal TV Ecosystem
Merge live TV channels with custom EPG guides from XMLTV or Schedules Direct. Generate schedules or use auto-matching to align channels with program data. Export as M3U, Xtream Codes API, or HDHomeRun device.

βͺ Watch Catch-up / Timeshift
Replay recent programs from Xtream Codes providers that advertise archives. Catch-up sessions show up on the Stats page alongside live and VOD, with per-user and global controls.

πŸ”§ Transcode & Optimize Streams
Configure output profiles with FFmpeg transcoding to optimize streams for different clients (reduce bandwidth, standardize formats, or add audio normalization).

πŸ” Centralize VPN Access
Run Dispatcharr through a VPN container (like Gluetun) so all streams route through a single VPN connection. Your clients access geo-blocked content without needing individual VPNs, reducing bandwidth overhead and simplifying network management.

πŸš€ Monitor & Manage in Real-Time
Track live, VOD, and catch-up sessions, client connections, and bandwidth usage with live statistics. Monitor buffering events and stream quality. Automatic failover keeps viewers connected when streams failβ€”seamlessly switching to backup sources without interruption.

πŸ‘₯ Share Access Safely
Create multiple user accounts with granular permissions. Share streams via M3U playlists or Xtream Codes API while controlling which users access which channels, profiles, or features. Network-based access restrictions available for additional security.

πŸ”Œ Extend with Plugins
Build custom integrations using Dispatcharr's robust plugin system. Automate tasks, connect to external services, or add entirely new workflows.


✨ Why You'll Love Dispatcharr

βœ… Stream Proxy & Relay β€” Intercept and proxy IPTV streams with real-time client management
βœ… M3U & Xtream Codes β€” Import, filter, and organize playlists with multiple backend support
βœ… EPG Matching & Generation β€” XMLTV, Schedules Direct, or dummy guides; auto-match EPG to channels or generate custom schedules
βœ… Built-in DVR β€” Schedule recordings and series rules from the guide, with optional Comskip and in-progress playback
βœ… XC Catch-up / Timeshift β€” Proxy provider archives to clients, advertise catch-up in guides, and monitor sessions in Stats
βœ… Video on Demand β€” Stream movies and TV series with rich metadata and IMDB/TMDB integration
βœ… Multi-Format Output β€” Export as M3U, XMLTV EPG, Xtream Codes API, or HDHomeRun device
βœ… Real-Time Monitoring β€” Live, VOD, and catch-up connection stats, bandwidth tracking, and automatic failover
βœ… Stream Profiles β€” Configure how Dispatcharr connects to backend streams (VLC, FFmpeg, Streamlink, or custom commands)
βœ… Output Profiles β€” Transcode what stream profiles deliver before it reaches the client (e.g. AC3 for media servers, AAC for browsers) with fMP4 or MPEG-TS container selection
βœ… Multi-User & Access Control β€” Granular permissions and network-based access restrictions
βœ… Plugin System β€” Extend functionality with custom plugins for automation and integrations
βœ… Fully Self-Hosted β€” Total control, no third-party dependencies


Screenshots

Channels TV Guide Stats & Monitoring M3U & EPG Manager VOD Library Settings

πŸ› οΈ Troubleshooting & Help


πŸš€ Get Started in Minutes

🐳 Quick Start with Docker (Recommended)

docker pull ghcr.io/dispatcharr/dispatcharr:latest
docker run -d \
  -p 9191:9191 \
  --name dispatcharr \
  -v dispatcharr_data:/data \
  ghcr.io/dispatcharr/dispatcharr:latest

Customize ports and volumes to fit your setup.

First-time web setup is limited to local/private networks by default. If you are installing on a VPS or otherwise reaching the UI from a public IP, either create the admin with docker exec <container> python manage.py createsuperuser, or set DISPATCHARR_SETUP_ALLOWED_IP to your client IP (see comments in the compose files). The setup page also shows the IP Dispatcharr sees.

Behind a reverse proxy, set DISPATCHARR_TRUSTED_PROXIES to your proxy's IP or CIDR so Network Access, Stats, and rate limits see real client IPs (defaults trust private/loopback peers; use none to ignore forwarded headers).


πŸ‹ Docker Compose Options

Use Case File Description
All-in-One Deployment docker-compose.aio.yml ⭐ Recommended! A simple, all-in-one solution β€” everything runs in a single container for quick setup.
Modular Deployment docker-compose.yml Separate containers for Dispatcharr, Celery, Redis, and Postgres β€” perfect if you want more granular control.
Development Environment docker-compose.dev.yml Developer-friendly setup with pre-configured ports and settings for contributing and testing.

πŸ› οΈ Building from Source

⚠️ Warning: Not officially supported β€” but if you're here, you know what you're doing!

If you are running a Debian-based OS, use the debian_install.sh script. For other OS, contribute a script and we’ll add it!


🀝 Want to Contribute?

We welcome PRs, issues, ideas, and suggestions!

Whether it's writing docs, squashing bugs, or building new features, your contribution matters! πŸ™‹


πŸ“š Documentation & Roadmap

Upcoming Features (in no particular order):

  • 🎬 VOD Management Enhancements β€” Granular metadata control and cleanup of unwanted VOD content
  • πŸ“ Media Library β€” Import local files and serve them over XC API
  • πŸ‘₯ Enhanced User Management β€” Customizable XC API output per user account
  • πŸ”Œ Fallback Videos β€” Automatic fallback content when channels are unavailable
  • πŸ“‘ HLS Output β€” Serve streams as HLS alongside existing container formats

❀️ Shoutouts

A huge thank you to all the incredible open-source projects and libraries that power Dispatcharr. We stand on the shoulders of giants!


βœ‰οΈ Connect With Us

Have a question? Want to suggest a feature? Just want to say hi?
➑️ Open an issue or reach out on Discord.


πŸ’– Support Dispatcharr

Dispatcharr Open Collective

Open Collective provides a transparent way for anyone who finds value in Dispatcharr to support things like: β€’ Infrastructure costs (Domains, Servers, etc.) β€’ Apple Developer Program and Google Play Developer accounts β€’ Helping contributors dedicate more time to improving the project

Support is completely optional, and Dispatcharr will always remain free and open-source.

Contribute here


βš–οΈ License & Legal

Dispatcharr is licensed under GNU AGPL v3.0: For full license details, see LICENSE.

Dispatcharr is a trademark of the Dispatcharr project. Use of the Dispatcharr name or logo requires permission from the maintainers.


πŸš€ Happy Streaming! The Dispatcharr Team

Install Dispatcharr on Unraid in a few clicks.

Find Dispatcharr in Community Apps on your Unraid server, review the template, and click Install. Unraid handles the Docker app or plugin setup from the published template.

Open the Apps tab on your Unraid server Search Community Apps for Dispatcharr Review the template variables and paths Click Install

Download Statistics

181,977
Total Downloads
25,430
This Month
21,853
Avg / Month

Total Downloads Over Time

Loading chart...

Related apps

Explore more like this

Explore all

Details

Repository
ghcr.io/dispatcharr/dispatcharr:latest
Last Updated2026-07-23
First Seen2025-03-11

Runtime arguments

Web UI
http://[IP]:[PORT:9191]
Network
bridge
Shell
sh
Privileged
false

Template configuration

PortPorttcp
Target
9191
Value
9191
DBPathrw
Target
/data
Value
/mnt/user/appdata/dispatcharr/data
DISPATCHARR_ENVVariable
Value
aio
REDIS_HOSTVariable
Value
localhost
CELERY_BROKER_URLVariable
Value
redis://localhost:6379/0
DISPATCHARR_LOG_LEVELVariable
Value
info
PUIDVariable
Value
99
GUIDVariable
Value
100