On this page
Quick stepsabout 45 min
- 1
Install Jellyfin server. Install Jellyfin on a computer, NAS or mini PC that stays on, from jellyfin.org, and finish the first-run setup.
- 2
Add an M3U tuner. In the admin dashboard, open Live TV, click the plus next to Tuner Devices, choose M3U Tuner, enter the playlist URL or file, and save.
- 3
Add an XMLTV guide. Under TV Guide Data Providers, click the plus, choose XMLTV, enter the guide URL, and save.
- 4
Map channels. Open Map Channels and match any channel that didn't link automatically to its guide entry using the pencil icon.
- 5
Watch on your devices. Install the Jellyfin app on your TV devices and phones, sign in to your server, and open Live TV.
Jellyfin can turn an M3U playlist and an XMLTV guide file into live TV with a proper programme guide, on every device in your house. You add the playlist as an M3U tuner, add the guide as an XMLTV provider, match up any channels that don't link automatically, and then watch in Jellyfin's apps on Roku, Fire TV, Android TV, Apple TV, phones and the web. It's free, and it's the best way to get a real IPTV guide on a Roku.
The trade-off: Jellyfin runs on a computer at home (a PC, Mac, NAS or mini PC), and that computer needs to be on whenever you watch. Setup takes about 45 minutes the first time.
Why bother with Jellyfin?
- A real guide on Roku. Roku can't install TiviMate or sideload anything. Jellyfin's official Roku app gets around that cleanly. See IPTV on Roku.
- One setup for every screen. Configure the playlist and guide once on the server; every device just signs in.
- Recording for the whole house. Record to the server's storage and watch on any device.
- Your own media too. The same server handles your films, series and music.
- Antenna channels. Jellyfin also supports HDHomeRun network tuners, so local broadcast channels can sit in the same guide.
Step 1: Install the server
Download Jellyfin for your system from jellyfin.org. Windows, macOS and Linux installers are available, as are Docker images and packages for popular NAS systems. Run the first-time setup in a web browser, create your admin account, and add any media libraries you want (you can skip that if you only want live TV).
Use a wired connection for the server if you can. It's serving every stream in the house.
Step 2: Add your playlist as an M3U tuner
Jellyfin's official Live TV setup guide lays out these steps (Jellyfin docs):
- Open the admin dashboard and go to Live TV.
- Click the + next to Tuner Devices.
- Choose M3U Tuner as the tuner type.
- In File or URL, paste your playlist link (or point it at a playlist file on the server).
- Leave User agent blank unless your service tells you otherwise.
- Set Simultaneous stream limit to the number of connections your service allows. Zero means unlimited, which can get you locked out if your service allows only one or two.
- Only tick Auto-loop live streams if specific channels keep stopping; the docs note some IPTV channels need it.
- Save.
If your service only gave you Xtream Codes details, look for an M3U link in its customer area, or build one from the server, username and password as explained in M3U vs Xtream Codes.
Step 3: Add the TV guide
- On the same Live TV page, click the + next to TV Guide Data Providers.
- Choose XMLTV.
- Enter your service's guide URL (often ending
xmltv.php,.xmlor.xml.gz). - Save, and let Jellyfin download it. You can trigger a refresh from the scheduled tasks if you don't want to wait.
Step 4: Map channels
Jellyfin matches channels to guide entries automatically where the IDs agree. For the rest, open Map Channels, click the pencil icon next to a channel, and choose its matching guide channel. Do the channels you actually watch; you don't need to map all 5,000. Why mismatches happen is explained in What is EPG?
Step 5: Watch on your devices
Install the Jellyfin app on each device (Roku, Fire TV, Android TV and Android phones; on iPhone, Jellyfin Mobile or Swiftfin), sign in to your server, and open Live TV. On Apple TV, check the App Store for the current Jellyfin client, or use UHF, which can read Jellyfin libraries directly. You'll get a guide grid, channel list and, if you set up recording, a recordings section.
Recording
Jellyfin includes DVR features: pick a programme in the guide and record it, or set series recordings. Recordings save to the server's storage, so make sure the drive has room, and play back on any device. Each recording uses one of your service's connections, just like watching, so the stream limit you set in step 2 matters. The same connection-limit logic is explained in recording in TiviMate.
When things go wrong
- Channels load but won't play: test the playlist in VLC on the server itself (VLC guide). If VLC fails, the playlist or service is the problem.
- Stuttering on some devices: the server may be converting (transcoding) video for that device. A faster server, or enabling hardware acceleration in Jellyfin's playback settings, helps.
- Blank guide: check the XMLTV URL loads in a browser, refresh guide data, then map channels. More in EPG not working.
Frequently asked questions
- Can Jellyfin play IPTV?
- Yes. Jellyfin's Live TV feature accepts an M3U playlist as a tuner and an XMLTV file as the guide, then shows channels with a programme guide in its apps.
- Does Jellyfin support Xtream Codes?
- Not directly. Jellyfin's IPTV tuner takes an M3U playlist. Many services that provide Xtream logins also provide an M3U link you can use instead.
- Can Jellyfin record live TV?
- Yes. Jellyfin includes DVR features, so you can record from the guide to your server's storage, which then plays back on every device.
- Is Jellyfin free?
- Yes. Jellyfin is free, open-source software with no paid tier, and its apps are free too.
- Why use Jellyfin instead of an IPTV app?
- It gives a proper guide and recording on devices with weak IPTV app options, like Roku, and one central setup for every TV and phone in the house. The trade-off is that you need a computer running whenever you watch.
Written by
Editor
Sam edits IPTVTips and tests players on Fire TV, Google TV and Apple TV. Replace this bio with your real editor's background.
More from Sam



Comments
Sign in to ask a question or share what worked for you.
Sign in to commentNo comments yet. Questions about a step that didn't work for you are welcome.