
xTeVe
M3U proxy for Plex and Emby live TV
xTeVe is an application that simulates a TV tuner, allowing you to have IPTV channels via Plex or Emby without physical hardware. It can merge multiple M3U playlists and XMLTV files into a single unified source, providing your media server with access to live TV channels.
xTeVe has not been maintained upstream since March 2021 and receives no security fixes. QuickBox Pro no longer installs it.
Migrate to Dispatcharr, which provides the same M3U and EPG proxy and HDHomeRun tuner for Plex, Emby, and Jellyfin. For playlist and EPG management, IPTVBoss is also available.
IPTV Integration
Integrate IPTV channels into Plex or Emby as if you had a real TV tuner
M3U Merging
Combine multiple M3U playlists from different IPTV providers into one source
XMLTV EPG Support
Electronic Program Guide data with schedule information for all channels
Channel Filtering
Filter, sort, and map channels with custom numbering and organization
Stream Buffering
Built-in buffer management for smooth playback and reduced buffering
HDHomeRun Emulation
Emulates HDHomeRun tuner for compatibility with Plex and Emby
xTeVe requires Plex Media Server or Emby to function. It acts as a middleman between your IPTV sources and your media server’s live TV feature.
Removing xTeVe
New xTeVe installs are no longer offered. If you have an existing install, you can remove it from the dashboard or the CLI.
From App Dashboard → Package Management (/dashboard?mode=packages), open your xTeVe row and choose Remove. From the CLI:
qb remove xteve -u usernameExisting installs use per-user ports assigned at install time:
- HTTP port: from
38550(incremented per user) - HTTPS port: from
35150(incremented per user)
Find your assigned ports in the QuickBox dashboard.
Accessing xTeVe
After installation, access xTeVe at:
https://your-server-ip/username/xtevexTeVe is automatically integrated into your QuickBox dashboard. Find it on the App Dashboard (the default control view), expand its row for port and status, and click Open to launch the web interface.
First-Time Setup:
- Complete the setup wizard
- Add your M3U playlist sources
- Configure XMLTV EPG sources (optional)
- Map and filter channels
- Connect to Plex or Emby
Initial Configuration
1. Add M3U Playlist Sources
Configure your IPTV providers:
- Go to Playlist tab in xTeVe
- Click + to add a new playlist
- Enter playlist details:
- Name: Descriptive name (e.g., “IPTV Provider 1”)
- M3U URL: Your IPTV provider’s M3U playlist URL
- Type: Select M3U (most common)
- Click Save to add the playlist
- Repeat for additional IPTV providers
- Click Update to fetch channels from all playlists
2. Add XMLTV EPG Sources (Optional)
Add Electronic Program Guide data for channel listings:
- Go to XMLTV tab
- Click + to add a new XMLTV source
- Enter EPG details:
- Name: EPG source name (e.g., “TV Guide Data”)
- XMLTV URL: XMLTV file URL from your provider
- Click Save to add the EPG source
- Click Update to fetch program data
3. Map and Filter Channels
Organize your channels:
- Go to Mapping tab
- View all channels from merged playlists
- Filter channels:
- Enable/Disable: Toggle checkboxes to show/hide channels
- Groups: Filter by channel groups
- Search: Find specific channels by name
- Map channels (optional):
- Custom Numbers: Assign channel numbers
- Custom Names: Rename channels for clarity
- VOD Categories: Organize video-on-demand content
- Click Save when done
4. Connect to Plex or Emby
Link xTeVe to your media server:
For Plex:
- In Plex, go to Settings → Live TV & DVR
- Click Set Up Plex DVR
- Plex will auto-detect xTeVe (HDHomeRun device)
- Select the xTeVe tuner from the list
- Map channels and select TV guide source
- Complete the setup wizard
For Emby:
- In Emby, go to Settings → Live TV
- Select Tuner Devices → Add
- Choose HDHomeRun as device type
- Emby will auto-detect xTeVe
- Select channels and configure EPG
- Save configuration
Service Management
xTeVe runs as a per-user systemd service.
systemctl status xteve@username # Check status
systemctl restart xteve@username # Restart service
journalctl -u xteve@username -f # View live logs
systemctl enable xteve@username # Start on boot (already enabled)
systemctl disable xteve@username # Prevent auto-startTroubleshooting
xTeVe Won’t Start
journalctl -u xteve@username -fCheck binary exists and is executable:
ls -la /opt/username/xTeVe/xteve
# Should show executable permissions (rwxr-xr-x)
sudo chmod +x /opt/username/xTeVe/xtevePlex/Emby Can’t Detect xTeVe Tuner
Symptoms
- Plex or Emby doesn't detect xTeVe as a tuner device
- HDHomeRun device not found during setup
- Channels not appearing in media server
- EPG data not loading in Plex/Emby
Resolution
- Verify xTeVe is running: systemctl status xteve@username
- Check xTeVe port is accessible: curl http://localhost:38550
- Ensure Plex/Emby and xTeVe are on same network
- Restart Plex/Emby after configuring xTeVe
- Check xTeVe logs for connection errors: journalctl -u xteve@username -f
M3U Playlist Not Updating
# Manually update playlists in xTeVe
# Playlist tab → Update button
# Check M3U URL is accessible
curl -I "your-m3u-url"
# Verify xTeVe can fetch the playlist
journalctl -u xteve@username -f | grep -i "playlist"
# Check for authentication or format errors in logsChannels Buffering or Not Playing
# Increase buffer settings in xTeVe
# Settings → Streaming → Buffer Size
# Check IPTV provider stream quality and bandwidth
# Verify network connectivity to IPTV servers
ping your-iptv-provider.com
# Test stream URL directly with VLC or ffmpeg
ffplay "stream-url"EPG Data Not Showing
# Manually update XMLTV data in xTeVe
# XMLTV tab → Update button
# Verify XMLTV URL is accessible
curl -I "your-xmltv-url"
# Check channel IDs match between M3U and XMLTV
# Mapping tab → verify tvg-id attributes
# Force refresh in Plex/Emby
# Plex: Settings → Live TV & DVR → Refresh Guide DataConfiguration Reset
# Backup current configuration
cp -r ~/.config/xTeVe ~/.config/xTeVe.backup
# Stop service
systemctl stop xteve@username
# Remove configuration (will be regenerated)
rm -rf ~/.config/xTeVe/*
# Restart service
systemctl start xteve@usernameBest Practices
Do
- Use multiple M3U sources from different providers for redundancy
- Configure XMLTV EPG data for better program guide information
- Filter out unwanted channels to reduce clutter in Plex/Emby
- Set appropriate buffer sizes based on your network speed
- Regularly update M3U and XMLTV sources to keep data fresh
- Test streams in xTeVe before adding to Plex/Emby
- Plan a migration to Dispatcharr, since xTeVe no longer receives updates
- Create backups of ~/.config/xTeVe before major changes
Don't
- Don't add too many channels—filter to your most-watched content
- Don't use unreliable IPTV providers—causes buffering and downtime
- Don't share IPTV credentials publicly—violates provider terms
- Don't expect perfect quality—IPTV depends on provider and bandwidth
- Don't delete ~/.config/xTeVe directory—contains all channel mappings
- Don't manually edit config files while xTeVe is running
- Don't expose xTeVe directly to internet—use behind VPN if needed
- Don't use xTeVe for illegal IPTV sources—only use licensed content
Related Applications
Additional Resources
Join the Community
Media server operators sharing configs, getting support, and shaping the future of QuickBox Pro.