Tunarr: The Revolutionary Tool for Creating IPTV Channels
Introduction
Are you tired of the limitations of traditional media servers? Do you want to transform your media collection into a personalized IPTV experience? Look no further than Tunarr. This powerful tool turns your media servers into IPTV channels, providing a seamless and modern TV experience using your own media. In this article, we'll dive deep into Tunarr, exploring its features, use cases, and how to get started. Whether you're a tech enthusiast or a media junkie, Tunarr is the solution you've been waiting for.
What is Tunarr?
Tunarr is a modern, powerful tool designed to create a classic TV experience using your own media, backed by Plex, Jellyfin, Emby, or NFO. Developed by Chris Benincasa, Tunarr is a rewrite and rebrand of the popular dizqueTV project, with a focus on modernizing the stack, stabilizing the program, and adding a host of new features. Tunarr is under active development, with regular updates and improvements being made.
Tunarr's primary goal is to provide an easy way to create and configure live TV channels using media from your Plex, Jellyfin, or Emby servers. By adding the spoofed Tunarr HDHomerun tuner to these platforms, you can access your channels directly. Alternatively, you can use the m3u URL with any IPTV player app for a more flexible viewing experience.
Key Features
Tunarr comes packed with a range of features that make it stand out from the crowd. Here are some of the key highlights:
- Advanced Filtering: Easily find and schedule content from your Plex libraries with advanced filtering options.
- Jellyfin and Emby Support: Seamlessly integrate your Jellyfin and Emby libraries into your IPTV experience.
- Stream in the Browser: Watch your channels directly in the browser for added convenience.
- Stabilized Streaming Pipeline: Enjoy better stability and improved performance with the complete rewrite of the streaming pipeline.
- Powerful Scheduling Options: Customize your channel schedules with advanced scheduling tools.
- Dark Mode: Enhance your viewing experience with a sleek dark mode interface.
- Content Discovery: Quickly find content with advanced filtering and sorting capabilities.
- Scheduled Backups: Never lose your channels and configuration with scheduled, configurable backups.
- Transcode Configurations: Support multiple transcode configurations and set them per-channel.
- Audio and Subtitle Preferences: Customize your viewing experience with audio language and subtitle preferences.
- Customizable Channels: Add logos, filler content, and more to customize your channels.
- Web-Based TV Guide: View your channel lineups on the web-based TV guide.
- Hardware Accelerated Transcoding: Leverage hardware acceleration for improved performance.
Use Cases
Tunarr excels in several real-world scenarios, making it a versatile tool for media enthusiasts. Here are a few use cases where Tunarr shines:
Personal IPTV Server
Create a personal IPTV server using your existing media collection. With Tunarr, you can transform your Plex, Jellyfin, or Emby libraries into a seamless IPTV experience, accessible from any device.
Media Organization
Organize your media collection by creating custom channels. Use advanced filtering and sorting options to ensure your favorite content is always at your fingertips.
Family Entertainment
Set up a family-friendly IPTV server with custom channels for kids, movies, and TV shows. With customizable content and scheduling options, ensure everyone in the family has access to their favorite shows.
Remote Access
Access your media collection from anywhere using the m3u URL with any IPTV player app. Whether you're at work or on vacation, your media is always within reach.
Step-by-Step Installation & Setup Guide
Getting started with Tunarr is straightforward. Follow these steps to install and set up Tunarr on your system:
Prerequisites
- Node.js (version 22 recommended)
- Docker (optional, but recommended for ease of setup)
- A media server (Plex, Jellyfin, or Emby)
Installation
-
Clone the Repository
git clone https://github.com/chrisbenincasa/tunarr.git cd tunarr -
Install Dependencies
pnpm i -
Start the Development Server
pnpm turbo devOnce the servers are running, the backend should be available at
localhost:8000, and the frontend atlocalhost:5173/web.
Configuration
-
Access the Web Interface
Open your browser and navigate to
http://localhost:5173/web. -
Add Your Media Server
- Go to the settings page and add your Plex, Jellyfin, or Emby server.
- Configure the server settings, including IP address, port, and API keys.
-
Create Channels
- Use the channel creation wizard to set up your channels.
- Customize your channels with logos, filler content, and scheduling options.
-
Access Your Channels
- Add the spoofed Tunarr HDHomerun tuner to your media server.
- Alternatively, use the m3u URL with any IPTV player app.
REAL Code Examples from the Repository
Example 1: Adding a Plex Server
// Adding a Plex server to Tunarr
const plexServer = {
name: 'My Plex Server',
ip: '192.168.1.100',
port: 32400,
apiKey: 'your-plex-api-key'
};
// Add the server to Tunarr
addServer(plexServer);
// Function to add a server
function addServer(server) {
// API call to add the server to Tunarr
fetch('/api/servers', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify(server)
})
.then(response => response.json())
.then(data => console.log('Server added:', data))
.catch(error => console.error('Error adding server:', error));
}
Example 2: Creating a Channel
// Creating a new channel in Tunarr
const channel = {
name: 'Movie Channel',
logo: 'path/to/logo.png',
content: [
{ type: 'movie', title: 'Inception' },
{ type: 'movie', title: 'Interstellar' }
],
schedule: {
type: 'random',
interval: '2 hours'
}
};
// Add the channel to Tunarr
addChannel(channel);
// Function to add a channel
function addChannel(channel) {
// API call to add the channel to Tunarr
fetch('/api/channels', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify(channel)
})
.then(response => response.json())
.then(data => console.log('Channel added:', data))
.catch(error => console.error('Error adding channel:', error));
}
Example 3: Accessing Channels via M3U URL
// Accessing Tunarr channels via M3U URL
const m3uUrl = 'http://localhost:8000/tunarr.m3u';
// Fetch the M3U file
fetch(m3uUrl)
.then(response => response.text())
.then(data => {
console.log('M3U file content:', data);
// Use the M3U file with your IPTV player app
})
.catch(error => console.error('Error fetching M3U file:', error));
Advanced Usage & Best Practices
To get the most out of Tunarr, consider the following advanced usage tips and best practices:
- Regular Backups: Ensure you have a regular backup schedule to avoid losing your channel configurations.
- Custom Filler Content: Use custom filler content like commercials, music videos, and channel branding videos to enhance your viewing experience.
- Optimize Transcoding: Configure transcoding settings to balance performance and quality.
- Use Hardware Acceleration: Take advantage of hardware acceleration to improve performance.
- Monitor Logs: Regularly monitor logs to identify and resolve any issues quickly.
Comparison with Alternatives
When it comes to creating IPTV channels from media servers, several tools are available. However, Tunarr stands out due to its modern architecture, advanced features, and active development. Here's a comparison table to help you make an informed decision:
| Feature/Tool | Tunarr | dizqueTV | PseudoTV |
|---|---|---|---|
| Modernized Stack | Yes | No | No |
| Advanced Filtering | Yes | No | No |
| Jellyfin/Emby Support | Yes | No | No |
| Browser Streaming | Yes | No | No |
| Customizable Channels | Yes | Limited | Limited |
| Active Development | Yes | No | No |
FAQ
Is Tunarr free to use?
Yes, Tunarr is open-source and free to use. You can find the source code on GitHub.
How often is Tunarr updated?
Tunarr is under active development, with regular updates and improvements being made.
Can I use Tunarr with any IPTV player app?
Yes, Tunarr provides an m3u URL that can be used with any IPTV player app.
Is hardware acceleration supported?
Yes, Tunarr supports hardware accelerated transcoding, including Nvidia, VAAPI, QuickSync, and macOS VideoToolbox.
How do I report issues or suggest features?
You can report issues or suggest features in the issues section or in Tunarr's Discord server.
Can I contribute to Tunarr's development?
Yes, contributions are welcome. You can find guidelines for contributing in the repository's README file.
Conclusion
Tunarr is a revolutionary tool that transforms your media servers into IPTV channels, providing a modern and seamless TV experience. With its powerful features, advanced customization options, and active development, Tunarr is the go-to solution for media enthusiasts. Ready to turn your media collection into a personalized IPTV experience? Head over to the Tunarr GitHub repository to get started today!