Open-source web app for users to request movies and TV shows, with approval workflows for Jellyfin, Plex, and Emby libraries.
chrisbenincasa/tunarr
Self-hosted app that turns your Plex, Jellyfin, Emby, or local media into custom live TV channels you can watch in a player or TV tuner.
- Stars
- 2,667
- Forks
- 157
- Open issues
- 196
- Last commit
- yesterday
What is it?
Tunarr builds custom live TV channels from existing media libraries, including movies, TV episodes, music videos, and local files. Each channel plays a scheduled lineup, so viewers tune in to a continuous broadcast-style stream rather than picking titles on demand.
Channels are exposed in several ways. Tunarr presents a spoofed HDHomeRun tuner that Plex, Jellyfin, and Emby can add as a live TV source, and it outputs an M3U URL for IPTV clients and tools such as Dispatcharr, Threadfin, or xTeVe. Channels can also be streamed directly in the browser and viewed in a web-based TV guide.
The lineup is managed through a drag-and-drop editor with time-slot and random-slot scheduling, filler content such as commercials and bumpers, and per-channel logos. Transcoding supports hardware acceleration through NVENC, VAAPI, Intel QuickSync, and VideoToolbox, with configurable profiles per channel.
Key features
- 01Builds live channels from Plex, Jellyfin, Emby, or local file libraries
- 02Emulates an HDHomeRun tuner for Plex, Jellyfin, and Emby live TV
- 03Exports M3U/IPTV playlists for IPTV clients and tools
- 04Drag-and-drop lineup editor with time-slot and random-slot scheduling
- 05Hardware-accelerated transcoding with NVENC, VAAPI, QuickSync, and VideoToolbox
Use cases
- Recreating a classic cable-style channel experience from your own movie and TV collection
- Adding a scheduled live-TV feel to a home media server
- Feeding custom channels into an IPTV setup via M3U playlists
Quick start
- 1
Create a docker-compose.yml file with the Tunarr service definition
- 2
Start Tunarr in the background with Docker Compose
docker compose up -d - 3
Open Tunarr in your browser at localhost port 8000
Things to know
- Hardware-accelerated transcoding needs extra setup on supported GPUs or platforms.
- Connecting to Plex, Jellyfin, or Emby requires an existing media server.
In collections
Topics
FAQ
- What is tunarr?
- Self-hosted app that turns your Plex, Jellyfin, Emby, or local media into custom live TV channels you can watch in a player or TV tuner. Tunarr builds custom live TV channels from existing media libraries, including movies, TV episodes, music videos, and local files. Each channel plays a scheduled lineup, so viewers tune in to a continuous broadcast-style stream rather than picking titles on demand.
- Is tunarr free to use? What license does it have?
- tunarr is open source under the Zlib license. Check the license terms before using it in commercial products.
- Is tunarr still maintained?
- Actively maintained. The last commit to tunarr was on Oct 23, 2026.
- What can I use tunarr for?
- Recreating a classic cable-style channel experience from your own movie and TV collection Adding a scheduled live-TV feel to a home media server Feeding custom channels into an IPTV setup via M3U playlists
- How do I install tunarr?
- Create a docker-compose.yml file with the Tunarr service definition Start Tunarr in the background with Docker Compose: docker compose up -d Open Tunarr in your browser at localhost port 8000
- Where can I get tunarr?
- The source code and installation instructions are on GitHub: https://github.com/chrisbenincasa/tunarr
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Ombi is a self-hosted media request tool that lets users ask for movies, music and TV shows and syncs with Plex, Emby and Jellyfin.
A library maintenance tool for Plex, Jellyfin and Emby that uses rules to collect unwatched or unrequested media and remove it after a grace period.
Real-time monitoring dashboard for Plex, Jellyfin, and Emby servers, covering streams, playback analytics, and account-sharing detection.
A community-maintained M3U playlist of free-to-air and free internet TV channels from countries around the world.
Tvheadend is a TV streaming server and digital video recorder for Linux that handles broadcast, IPTV and SAT>IP sources.